我对使用Selenium是新手,在Selenium Grid 2中使用RemoteWebDriver时遇到了一些问题。我想知道我的代码出了什么问题。谢谢
我分3步设置RemoteWebDriver:
>
通过RemoteWebDriver打开驱动程序
logger.info("1. Start");
File file = new File("/path/of/chromedriver");
System.setProperty("webdriver.chrome.driver", file.getAbsolutePath());
logger.info("2. Get Path: " + file.getAbsolutePath());
DesiredCapabilities caps = new DesiredCapabilities();
caps.setBrowserName(DesiredCapabilities.chrome().getBrowserName());
logger.info("3. Set capabilities: " + caps);
URL url = new URL(URL);
RemoteWebDriver driver = new RemoteWebDriver(url, caps);
logger.info("4. Initialize driver: " + driver);
logger.info("5. End");
return driver;
结果通过前两步,但在最后一步失败,因为日志没有显示。似乎在设置RemoteWebDriver时出现了问题。日志如下所示:
2017年5月16日8:28:16。测验设置驱动程序信息:1。开始
可能16, 2017 8:28:16下午com.test.设置驱动程序信息:2。获取路径: /path/of/chromedriver
2017年5月16日8:28:16。测验设置驱动程序信息:3。设置功能:功能[{browserName=chrome}]
可能16, 2017 8:28:16PMcom.test.Setup setupDriver SEVERE:java.lang.IllegalStateException:驱动程序可执行文件的路径必须由webdriver.chrome.driverhtml" target="_blank">系统属性设置;有关详细信息,请参阅https://github.com/SeleniumHQ/selenium/wiki/ChromeDriver.最新版本可从http://chromedriver.storage.googleapis.com/index.html
谁能告诉我问题出在哪里,谢谢!
selenium-server-standalone-3.4.0.jar
硒-java-3.4.0
ChromeDrive 2.29
Java版本"1.8.0_111"
TestNG
例外说明了一切。
May16, 2017 8:28:16PMcom.test.Setup setupDriver SEVERE:java.lang.IllegalStateException:驱动程序可执行文件的路径必须由webdriver.chrome.driver系统属性设置;有关详细信息,请参阅https://github.com/SeleniumHQ/selenium/wiki/ChromeDriver.最新版本可从http://chromedriver.storage.googleapis.com/index.html下载
请确保在运行节点的计算机上执行以下操作。
PATH
环境变量的一部分提供
您应该看到如下输出(我的输出来自MAC)
12:16 $ chromedriver
Starting ChromeDriver 2.29.461585 (0be2cd95f834e9ee7c46bcc7cf405b483f5ae83b) on port 9515
Only local connections are allowed.
一旦您看到类似的输出,您可以尝试再次运行测试,您应该会没事的。
我最近在论坛上问了一个问题,为什么ExecutorService在获得期货后阻止了我的程序:ExecutorService和Future阻止了主线程 问题是,经过大量的调试,有罪的线不是未来。get()但是
在我的Espresso测试执行和AlertDialog会被提示并等待用户响应。Espresso测试只有在我按下“Accept”按钮但我想测试代替用户执行此事件时才会继续。 我注意到我的线程选项卡上有以下状态
问题内容: 当try块中存在时,我对try- finally执行感到困惑。据我了解,finally块将始终执行,即在返回调用方法之前。在考虑以下简单代码时: 实际打印的结果为1。这是否意味着不执行finally块?有人可以帮我吗? 问题答案: 从块返回时,返回值存储在该方法的堆栈帧中。之后,将执行finally块。 更改finally块中的值不会更改堆栈中已存在的值。但是,如果您从finally块
我在Spring Boot应用程序中有以下类: 当我通过GET请求调用它时,我得到一个200 OK的回复,其中包含BBC的HTML源代码。co.uk公司。因此,似乎正在遵循重定向。 根据HTTP规范第10.3.3节: 如果收到302状态码以响应GET或HEAD以外的请求,则除非用户能够确认,否则用户代理不得自动重定向该请求 此外,它还专门针对非GET响应,并不规定GET请求应该重定向。因此,尽管在
问题内容: 我对Go如何处理非阻塞IO感到困惑。API在我看来基本上是同步的,并且在Go上观看演示时,听到诸如“和调用块”之类的注释并不罕见。 从文件或网络读取时,Go是否使用阻塞IO?还是当在Go Routine中使用某种魔术来重写代码? 来自C#背景,这感觉非常不直观,在C#中,当使用异步API时我们使用了关键字。这清楚地表明,API可以产生当前线程,并在以后的延续中继续。 因此,TLDR;当
问题内容: 我有一棵divs树: 在div上单击时,将使其子级不可见-即单击“ a”将使“ b”和“ c”不可见。 问题是:单击“ b”将调用“ a”的单击,并使“ b”和“ c”不可见。如何使用jQuery禁用对“ a”的点击? 谢谢 问题答案: 您可以为孩子添加一个处理程序,以防止click事件蔓延: 这样一来,点击不会传播到。都不会单击以转到,因此也不会。