<tr ng-repeat="a in people">
<td>
{{a.firstname}}
</td>
<td>
{{a.lastname}}
</td>
<td>
{{a.email}}
</td>
</tr>
量角器代码
var firstname = element.all(by.repeater('a in people'));
expect(firstname.get(0).getText()).toEqual('george');
这将返回整个第一行。如何获得第一列?谢谢
答案 0 :(得分:2)
您可以这样获得它:
var all = element.all(by.repeater('a in people')).all(by.css('td'));
expect(all.get(0).getText()).toEqual('george');
element.all(by.repeater('a in people'));
只会找到一个元素。如果页面上有两个带有 repeater 文本的元素,它将找到两个。但是您还需要通过td
进行搜索。
答案 1 :(得分:1)
从技术上讲,执行ng-repeat时,它将元素重复到dom中,在您的情况下,将重复
我们可以使用以下代码来获取第一行的第一列。
var firstname = element(by.repeater('a in people').row(0).column('a.firstname'));
expect(firstname.getText()).toEqual('xyz');