下面是我的标记
<tr ng-repeat="post in posts">
<td ng-click="activePost(post)" class="title">{{post.title}}</td>
<td><button class="btn btn-danger" ng-click="delete(post)">Delete</button>
</td>
</tr>
我正在尝试使用title
类获取元素。
我用来访问中继器的代码是:
postsList = element.all(by.repeater('post in posts'));
有没有一种方法可以通过在jQuery中执行类似以下操作来获取元素:
var titleText = $("tr:first").find(".title").text();
有没有办法用量角器做类似的事情?
发布于 2014-03-31 20:07:18
这应该适用于您的示例:
element.all(by.repeater('post in posts')).then(function(posts) {
var titleElement = posts[0].element(by.className('title'));
expect(titleElement.getText()).toEqual('YourEnteredTitle');
});
发布于 2014-07-30 19:38:10
nilsK的回答帮助了我,但并不完全有效。下面的代码做到了这一点:
element.all(by.repeater('post in posts')).then(function(posts) {
var titleElement = posts[0].element(by.className('title'));
expect(titleElement.getText()).toEqual('YourEnteredTitle');
});
发布于 2015-06-17 23:00:06
你必须在数组中找到一个元素,就像这里解释的https://github.com/angular/protractor/issues/877
var items = element.all(by.repeater('userGroup in userGroups')).filter(function(item) {
return item.element(by.binding('userGroup.name')).getText().then(function(label) {
return label === 'MyGroupName';
});
});
items.get(0).element(by.css('.buttongochose')).click();
https://stackoverflow.com/questions/22757340
复制相似问题