如何通过终端运行Selenium 3.x与Chrome Driver

6

也许这是一个简单的问题,但我找不到任何相关信息。

我曾经以这种方式运行Selenium 2.x。 我启动服务器:

java -jar selenium-server-standalone-2.53.1.jar -Dwebdriver.chrome.driver=chromedriver -browserSideLog -debug -timeout 60

然后我运行我的测试。我使用Dart所以我做

pub run test test/selenium/custom_component_test.dart 

但是现在我想使用 selenium 3。我已经下载了它并用新的 jar 包替换了旧的终端调用,但似乎我做不到。Selenium 告诉我它不知道 "-Dwebdriver.chrome.driver" 这个参数。然而,在帮助文档中我找不到指定该参数的参数。

那么,如何使用 Chrome 驱动程序运行 selenium 3?

1个回答

14

你的选项顺序有误。 -D... 是一个Java运行时变量,需要放在-jar指令之前。

请将您的命令更改为

java -Dwebdriver.chrome.driver=chromedriver -jar selenium-server-standalone-2.53.1.jar -browserSideLog -debug -timeout 60

我曾经以那种方式运行selenium 2.x。

是的,我们在3.0中更改了源代码,使用JCommander来解析传递到jar中的选项。现在,-D指令被解析为您尝试传递到jar的选项,就像-debug-timeout一样。为了使您的命令格式正确,您应该在-jar指令之前使用-D...


我之前也遇到了同样的问题,现在已经解决了,谢谢。我只是想知道为什么在使用 -jar 前需要加上 -D? - mosaad

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接