【发布时间】:2014-12-08 21:37:15
【问题描述】:
我有一个应用程序,当用户执行搜索时,它会以表格格式显示搜索结果。搜索结果大约有 15 列以上。为此,我有一个 UI 测试用例,旨在使用以下内容获取每个列标题:
var resultColumns = "//div[contains(@ng-grid,'searchResult')]//div[contains(@class,'ngHeaderCell')]//div[contains(@class,'HeaderText')]";
var allResultColumnsText = function() {
return element.all(by.xpath(resultColumns)).getText();
};
expect(allResultColumnsText()).toEqual("[matching text]");
我希望这个代码能够获取表的所有列,但我注意到只有根据浏览器窗口大小可在页面上显示的值被获取。例如,如果在运行测试时浏览器中最多只显示 5 列,那么上面的测试代码只会获取这 5 列标题。
我认为 AngularJS 会动态填充 DOM 以仅包含可以显示的列。有没有办法使用量角器中的某些功能获取所有列,而不仅仅是屏幕上可见的列?
【问题讨论】:
标签: angularjs protractor visible