本文介绍了量角器:滚动表和测试无限滚动的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我怎样才能得到量角器下放在桌面上滚动?我的表确实无限滚动 - 它加载20条记录,并显示在第二到最后一行时,获取未来的20条记录。并非所有的记录都在视图......有些低于尚未滚动到,有的上面,当用户滚动过去吧。我在想测试
它('应取下一组上滚动记录'){
element.all(by.id(用户))。图(功能(榆树){
返回榆树;
})。然后(功能(用户){
期待(users.length).toBe(20);
}); //滚动表底触发获取更多的记录 element.all(by.id(用户))。图(功能(榆树){
返回榆树;
})。然后(功能(用户){
期待(users.length).toBe(40);
});
};
这是这样做的正确方法吗?
HTML表code:
< DIV NG-IF =用户和放大器;&安培; users.length大于0级=表滚动NG无限滚动=loadMoreUsers() >
<表ID =用户表级=表的表悬停文本溢出省略号>
<&THEAD GT;
< TD类=COL1>< / TD>
< TD ID =用户表名-COL级=COL2>用户< / TD>
< TD ID =用户表最新-COL级=COL3>生日< / TD>
< / THEAD>
< TBODY NG重复=在用户组>
< TR NG重复=用户group.usersNG点击=userClicked(用户);>
< TD类=COL1>
< IMG类=COL-XS-1的资料画面的风格=填充:0NG-SRC ={{user.profile_picture}}>< / TD>
< TD类=COL2>
< DIV ID =用户名> {{user.last_name}},{{user.first_name}}< / DIV>
< / TD>
< TD类=COL3>
< DIV ID =用户的最新> {{user.date}}< / DIV>
< / TD>
< / TR>
< / TBODY>
< /表>
< / DIV>
解决方案
我们的想法是找到最新的元素在表( TR
标签),并滚动到它设置父到最后一个元素的。
var div = element(by.css('div.table-scroll'));
var lastRow = element(by.css('table#myid tr:last-of-type'));
browser.executeScript("return arguments[0].offsetTop;", lastRow.getWebElement()).then(function (offset) {
browser.executeScript('arguments[0].scrollTop = arguments[1];', div.getWebElement(), offset).then(function() {
// assertions
});
});
Also see (similar solution used):
这篇关于量角器:滚动表和测试无限滚动的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!