如何使用量角器识别离子标签?
How to identify ionic tags using Protractor?
我有一个简单的离子模板,如下所示。在 Protractor 中,我如何编写定位器来定位 Ionic 元素,比如标题和左右按钮。如何检查标题是否为 'My Title'?我无法通过 H1 进行绑定,因为我的模板中应该有很多 H1。
<ion-header-bar align-title="left" class="bar-positive">
<div class="buttons">
<button class="button" ng-click="doSomething()">Left Button</button>
</div>
<h1 class="title">My Title</h1>
<div class="buttons">
<button class="button">Right Button</button>
</div>
</ion-header-bar>
<ion-content>
Some content!
</ion-content>
在你的控制器中,定义
$scope.someTag = "whatever"
在 $scope.someTag
上在控制器中应用您的功能
在您的DOM(例如您的标题)中,分配:
title="{{someTag}}"
通过这种方式,您可以控制自己所做的事情!
我会根据标签名称 类 和相对位置找到元素 by xpath:
var title = element(by.xpath('//h1[@class="title" and following-sibling::div[@class="buttons"] and preceding-sibling::div[@class="buttons"]'));
var leftButton = title.element('preceding-sibling::div[@class="buttons"]/button');
var rightButton = title.element('following-sibling::div[@class="buttons"]/button');
我能够使用它作为带有文本保存的右侧按钮使其正常工作:
var saveButton = element(by.css('.right-buttons')).element(by.cssContainingText('button', 'Save'));
我猜你可以对左键做同样的事情,例如左键在文本中说:
var backButton = element(by.css('.left-buttons')).element(by.cssContainingText('button', 'back'));
我有一个简单的离子模板,如下所示。在 Protractor 中,我如何编写定位器来定位 Ionic 元素,比如标题和左右按钮。如何检查标题是否为 'My Title'?我无法通过 H1 进行绑定,因为我的模板中应该有很多 H1。
<ion-header-bar align-title="left" class="bar-positive">
<div class="buttons">
<button class="button" ng-click="doSomething()">Left Button</button>
</div>
<h1 class="title">My Title</h1>
<div class="buttons">
<button class="button">Right Button</button>
</div>
</ion-header-bar>
<ion-content>
Some content!
</ion-content>
在你的控制器中,定义
$scope.someTag = "whatever"
在
$scope.someTag
上在控制器中应用您的功能
在您的DOM(例如您的标题)中,分配:
title="{{someTag}}"
通过这种方式,您可以控制自己所做的事情!
我会根据标签名称 类 和相对位置找到元素 by xpath:
var title = element(by.xpath('//h1[@class="title" and following-sibling::div[@class="buttons"] and preceding-sibling::div[@class="buttons"]'));
var leftButton = title.element('preceding-sibling::div[@class="buttons"]/button');
var rightButton = title.element('following-sibling::div[@class="buttons"]/button');
我能够使用它作为带有文本保存的右侧按钮使其正常工作:
var saveButton = element(by.css('.right-buttons')).element(by.cssContainingText('button', 'Save'));
我猜你可以对左键做同样的事情,例如左键在文本中说:
var backButton = element(by.css('.left-buttons')).element(by.cssContainingText('button', 'back'));