我有我的页面上的下拉菜单。 我对量角器测试的目标是点击该下拉菜单中的选项之一,并有量角器检查结果:
<ul class="dropdown">
<li class="nav-header">portfolio</li>
<li class="divider"></li>
<li class="dropdown-submenu"> ... </li>
<li ng-repeat="p in user.portfolios">
<!-- this is the option we will click for our testing -->
<a href ng-click="displayPortfolio(p)>Portfolio 1 </a>
</li>
<li ng-repeat="p in user.portfolios">
<a href ng-click="displayPortfolio(p)>Portfolio 2 </a>
</li>
<li ng-repeat="p in user.portfolios">
<a href ng-click="displayPortfolio(p)>Portfolio 3 </a>
</li>
</ul>
我量角器测试看起来像:
it('should display relevant portfolio when clicked',function(){
ptor.ignoreSynchronization = true;
element.all(by.xpath("//a[@ng-click='displayPortfolio(p)'])).then(function(list){
list[0].click();
expect(... some assertion here);
});
ptor.ignoreSynchronization = false;
}
以防万一你想知道,ptor.ignoreSynchronization启用,因为我的网页不断地轮询对有些更新后端。
量角器引发以下错误,当我运行测试:
ElementNotVisisbleError: element not visible
我不安静明白这是什么错误是什么。 元素肯定是可见的,因为当我查看网页的源,我可以看到它在DOM结构。
好心的建议