org.openqa.selenium.os.OsProcess checkForError 和 org.apache.commons.exec.ExecuteException:Selenium ChromeDriver 进程因错误退出

org.openqa.selenium.os.OsProcess checkForError and org.apache.commons.exec.ExecuteException: Process exited with an error with Selenium ChromeDriver

我正在尝试 运行 在 linux 上以无头模式运行 soapui(从 windows 开始工作)但是在启动 webdriver 部分时似乎 chrome 没有看到 driver 已经启动。这甚至 OS 和

都不一样

我已经尝试了 chrome 和 driver 的版本 74 和 73。 我已经尝试将服务器和语言绑定附带的所有硒罐添加到 soapuis /bin/ext 目录,然后将其删除。 我已将 server.jar 文件设置为 chown 7777(是的,我知道我知道!)。我已经安装了 Xvfb,甚至 Xorg 桌面...

sh /home/venerable/SmartBear/SoapUI-5.5.0/bin/testrunner.sh -c 'tester2' -s 'Regression' "/home/venerable/projects/opengoogle" -t "/home/venerable/soapui-settings.xml" -f "/home/venerable/logs" -r -I

和 groovy 脚本:

import org.openqa.selenium.WebDriver
import org.openqa.selenium.chrome.ChromeDriver
import org.openqa.selenium.chrome.ChromeOptions

System.setProperty("webdriver.chrome.driver","/home/venerable/driver/chromedriver")
System.setProperty("webdriver.chrome.logfile","/home/venerable/driver/chromedriver")

log.info 'from system: '+ System.getProperty("webdriver.chrome.driver")
ChromeOptions chromeOptions = new ChromeOptions()
chromeOptions.addArguments("--headless")
log.info '################# starting driver #################'

WebDriver driver = new ChromeDriver(chromeOptions)

log.info '================ driver started ================'

driver.get("http://www.google.com")

log.info ":):):):):):):):):)closing driver:(:(:(:(:(:(:(:(:(:("

driver.close()
driver.quit()

return

堆栈跟踪

18:30:58,176 INFO  [DefaultSoapUICore] initialized soapui-settings from [/home/venerable/soapui-settings.xml]
18:30:58,865 INFO  [PluginManager] 0 plugins loaded in 3 ms
18:30:58,865 INFO  [DefaultSoapUICore] All plugins loaded
18:31:00,576 INFO  [WsdlProject] Loaded project from [file:/home/venerable/projects/opengoogle]
18:31:00,587 INFO  [SoapUITestCaseRunner] Running SoapUI tests in project [tester]
18:31:00,588 INFO  [SoapUITestCaseRunner] Running TestCase [tester2]
18:31:00,597 INFO  [SoapUITestCaseRunner] Running SoapUI testcase [tester2]
18:31:00,597 INFO  [SoapUITestCaseRunner] running step [Groovy Script]
18:31:01,176 INFO  [log] from system: /home/venerable/driver/chromedriver
18:31:01,214 INFO  [log] ################# starting driver #################
Starting ChromeDriver 74.0.3729.6 (255758eccf3d244491b8a1317aa76e1ce10d57e9-refs/branch-heads/3729@{#29}) on por
Only local connections are allowed.
Please protect ports used by ChromeDriver and related test frameworks to prevent access by malicious code.
Failed to redirect stderr to log file.
Unable to initialize logging. Exiting...
May 27, 2019 6:31:21 PM org.openqa.selenium.os.OsProcess checkForError
SEVERE: org.apache.commons.exec.ExecuteException: Process exited with an error: 1 (Exit value: 1)
18:31:21,470 ERROR [SoapUI] An error occurred [Timed out waiting for driver server to start.
Build info: version: '3.141.59', revision: 'e82be7d358', time: '2018-11-14T08:25:53'
System info: host: 'ebu-venerable', ip: '10.33.134.55', os.name: 'Linux', os.arch: 'amd64', os.version: '3.10.0-el7.x86_64', java.version: '1.8.0_212'
Driver info: driver.version: ChromeDriver], see error log for details
org.openqa.selenium.WebDriverException: Timed out waiting for driver server to start.
Build info: version: '3.141.59', revision: 'e82be7d358', time: '2018-11-14T08:25:53'
System info: host: 'ebu-venerable', ip: '10.33.134.55', os.name: 'Linux', os.arch: 'amd64', os.version: '3.10.0-el7.x86_64', java.version: '1.8.0_212'

我在这方面的耐心训练结束时,我确认了所有的个人比特 rae 运行ning: 我也关注了https://gist.github.com/bugcy013/38287ec2adfc381cde7a8e7e9bdad6d7

根据您通过此行进行的代码试验:

System.setProperty("webdriver.chrome.driver","/home/venerable/driver/chromedriver")

看起来很完美,但是下一行看起来容易出错,如下:

System.setProperty("webdriver.chrome.logfile","/home/venerable/driver/chromedriver")

Log 文件必须以 .log.

的扩展名结尾

所以大概,您需要将代码行更改为:

System.setProperty("webdriver.chrome.logfile", "/home/venerable/driver/chromedriver.log");