识别表头值是它们应该是什么

时间:2016-02-08 16:12:25

标签: angularjs protractor

我试图在表格中证明我们有以下表格标签。日期,金额,评论。

<table class="grid-table-body">
<thead>
    <tr>
        <th>Date</th>
        <th>Amount (£)</th>
        <th>Description</th>
    </tr>
</thead>
<tbody>

    .....
    .....
    .....

</tbody>
</table>

我已经证明桌子存在了!

   var myTable = element(by.css('.grid-table-body'));
   expect(myTable.isPresent()).toBeTruthy();

如何遍历每个<th>并获取文本。如果我只是将它们放入阵列中,我可以证明它们应该是它们应该是的。即。

expect(data.get(0).getText()).toBe("Date");

足够(我认为)

1 个答案:

答案 0 :(得分:2)

首先找到元素,然后你可以调用getText()

var headers = $$(".grid-table-body thead th");
expect(headers.getText()).toEqual(["Date", "Amount (£)", "Description"]);

要检查所有标题是否可见,您可以使用:

expect(headers.isDisplayed()).toEqual([true, true, true]);

或者,检查数组中是否没有false

expect(headers.isDisplayed()).not.toContain(false);

您还可以map() / reduce()将其设置为一个布尔值。