量角器 - 无法点击角度材料标签

时间:2016-10-04 10:55:43

标签: angular protractor

我使用Protractor创建teste,需要点击 md-icon 标记。我使用了几个selctors:

*[ng-reflect-title="Add"]
/* Or */
#add
/* Or */
md-icon#add

在代码中我写了这样的东西:

protractor.wait(protractor.until.elementLocated(by.css('#add')), 5000).then((el: webdriver.IWebElement) => {
  resolve(el.click());
});

在本地机器上一切正常但 travis-ci 有错误,找不到元素。 Link

任何帮助......

1 个答案:

答案 0 :(得分:2)

您提供的链接中的错误显示为:Wait timed out after 5087ms。该元素不在您提供的5秒超时范围内,因此您需要扩展它,因为您的测试似乎在CI上比本地运行速度慢。所以也许尝试10秒(甚至更长):

protractor.wait(protractor.until.elementLocated(by.css('#add')), 10000).then(...)

在这种情况下,使用隐式等待是正确的,也是一种很好的做法。就个人而言,我从来没有延长那些隐式等待的问题,因为它不是一个保证等待计时器。一旦找到该元素,测试就会立即触发,因此它更像是一个稳定性功能。