Nightwatch selenium client.url永远不会完成

时间:2016-11-03 08:20:03

标签: selenium-webdriver nightwatch.js

我的测试存在问题,我使用Selenium-webdriver,Chromedriver和nightwatch.js。我运行两个终端窗口,一个是硒,一个是测试。我在Mac OS Air上使用macOS Sierra运行它。 我的测试看起来像:

module.exports = {
'Demo test' : function (browser) {
  browser.url();
  browser.pause(1000);
  browser.maximizeWindow();
  browser.resizeWindow(300, 300);
  browser.maximizeWindow();
  browser.pause(2000);
  browser.url('http://www.google.se').resizeWindow(500, 500);
  browser.end();
 }
};

当我运行java -jar selenium-server-standalone-3.0.0.jar然后在另一个终端窗口中运行测试时,这会在终端中给出以下输出: 测试就像

一样运行
node nightwatch.js tests/demo.js

它在selenium终端窗口中提供此输出。

09:11:21.617 INFO - Executing: [get current url])
09:11:21.663 INFO - Done: [get current url]
09:11:22.680 INFO - Executing: [maximise window])
09:11:22.941 INFO - Done: [maximise window]
09:11:22.950 INFO - Executing: [set window size])
09:11:23.073 INFO - Done: [set window size]
09:11:23.080 INFO - Executing: [maximise window])
09:11:23.565 INFO - Done: [maximise window]
09:11:25.577 INFO - Executing: [get: http://www.google.se])

在此之后不再发生任何事情。出于某种原因,当我有一个真正的网页而不是一个空窗口时,我没有从client.url()获得完成回调。 有谁知道问题是什么?

1 个答案:

答案 0 :(得分:0)

您提到您使用的是selenium 3.0.0。您没有提到您正在使用的浏览器以及您正在使用的驱动程序版本。

我在两个设置上尝试了此代码。这两个设置都有夜视仪0.9.8,chromedriver 2.25,Chrome浏览器v54。操作系统始终是OSX Sierra 10.12.1。一种设置具有2X的硒,而另一种具有硒3.0.1

在这两种设置中,您的测试代码都已成功执行。

这是nightwatch配置

{
  "src_folders" : ["tests"],
  "output_folders" : "reports",
  "selenium" : {
    "start_process" : true,
    "server_path" : "tools/selenium3.jar",
    "log_path" : "",
    "host" : "127.0.0.1",
    "port" : 4444,
    "cli_args" : {
      "webdriver.chrome.driver" : "tools/chromedriver",
      "webdriver.ie.driver" : ""
    }
  },
  "test_settings" : {
    "default" : {
      "launch_url" : "http://www.google.com",
      "selenium_port"  : 4444,
      "selenium_host"  : "localhost",
      "silent": true,
      "screenshots" : {
        "enabled" : false,
        "path" : ""
      },
      "desiredCapabilities": {
        "browserName": "chrome",
        "javascriptEnabled": true,
        "acceptSslCerts": true
      }
    }
  }
}