NgWebDriver waitForAngularRequestsToFinish()不起作用

时间:2017-08-28 07:35:24

标签: java angularjs selenium selenium-webdriver

我正在尝试使用Selenium Java为角度应用程序实现NgWebDriver。

根据NgWebDriver documentation,我们必须只传递new NgWebDriver(driver).waitForAngularRequestsToFinish();驱动程序实例,但是当我尝试实现它时,我必须将参数转换为JavascriptExecutor,否则它会在语法中给出错误。

System.setProperty("webdriver.chrome.driver", "/path/to/chromedriver");
WebDriver d = new ChromeDriver();
NgWebDriver ngdriver = new NgWebDriver((JavascriptExecutor) d);
ngdriver.waitForAngularRequestsToFinish();

当我在转换驱动程序实例后使用此代码时,而不是等待角度完成。

中继器&其他功能正在运行NgWebDriver。

有人可以帮忙解决问题吗?

使用这些版本:

Selenium: 3.3.1
Chrome: 60
Java : 1.8

2 个答案:

答案 0 :(得分:0)

也许你错过了这个?

d.manage().timeouts().setScriptTimeout(15, TimeUnit.SECONDS);

答案 1 :(得分:0)

您正在使用

WebDriver d = new ChromeDriver();

改为使用

ChromeDriver driver = new ChromeDriver();

然后使用以下

NgWebDriver ngWebDriver = new NgWebDriver(driver);
ngWebDriver.waitForAngularRequestsToFinish();