尝试从ng-repeat的第一行的第一列中选择文本。 html(这些是表体内的行):
<tr ng-repeat="c in cars | orderBy:'-type' ">
<!-- Type -->
<td>{{ c.type }}</td>
<!-- Notes -->
<td>{{ c.notes }}</td>
</tr>
选择尝试:
var type= element.all(by.repeater("c in cars| orderBy:'-date' ").
row(0).column(0));
type.getText()
.then(function(text){
console.log('ISSUED FROM: ' + text);
});
我做错了什么?像往常一样,我已经查看了SO上的示例(有一些用于转发器),但它们似乎不起作用(...对我来说,我确信它们有效并且我做错了什么)。我没有收到任何错误,但我没有得到任何关于&#34; text&#34;即使在浏览器中,也有明显的字符串。
在查看源代码时看起来像这样,如果有帮助:
<!-- Type -->
<td class="ng-binding">Murcielago</td>
答案 0 :(得分:2)
by.exactRepeater()
在这里会是更好的选择。此外, column()
应该通过传入绑定来调用,因为您需要一个元素,所以使用element()
:
var type = element(by.exactRepeater("c in cars").row(0).column("c.type"));
expect(type.getText()).toEqual("Murcielago");