我有一个e2e量角器测试,该测试以无头模式通过,但在常规浏览器测试中失败。常规浏览器测试失败的可能原因是什么?

注意:我使用的是Chrome版本68.0.3440.106(正式版本)(64位)来运行测试。

最佳答案

这是我学到的:

1.需要告知非无头模式滚动,而无头确实可以不通知滚动。

在非无头模式中,如果不滚动到正在使用的元素,则会引发超时错误“等待元素”的出现。

我的原始代码(以无头模式通过,但以非无头模式失败)是以下几点:

 command to do something

 command to click button


新代码(传入无头和非无头):

import import { browser, element } from 'protractor';
// assuming my protractor DOM element is called 'thing'

command to do something

browser.executeScript('thing.scrollIntoView()', element.getWebElement());

command to click button


2.非无头模式需要在操作之间等待更多时间。

我的原始代码(以无头模式通过,但以非无头模式失败)是以下几点:

command to do something

command to do something else


新代码(传入无头和非无头):

command to do something

browser.waitForAngularEnabled(false);

command to do something else

08-27 12:18