我创建了一些硒测试。没有问题可以在本地运行。我想配置一个Jenkins作业来运行测试。出现以下错误
Starting ChromeDriver 2.46.628388 (4a34a70827ac54148e092aafb70504c4ea7ae926) on port 6720
Only local connections are allowed.
Please protect ports used by ChromeDriver and related test frameworks to prevent access by malicious code.
[1564522396.317][SEVERE]: bind() failed: Cannot assign requested address (99)
PM org.openqa.selenium.remote.ProtocolHandshake createSession
INFO: Detected dialect: OSS
所有测试都无法找到网络元素。
docker映像中的chrome版本是73。我提供的chrome驱动程序是2.46(也可以在73.0.3683.68中尝试过)selenium-java 3.5.0
我尝试了很多建议,例如
添加chmod +x src/test/resources/localWebDriver/chromedriver
ChromeOptions chromeOptions = new ChromeOptions();
chromeOptions.addArguments("--headless");
chromeOptions.addArguments("--no-sandbox");
chromeOptions.addArguments("--whitelisted-ips");
chromeOptions.addArguments("--disable-extensions");
但是仍然无法正确运行这些测试。有人遇到过这个问题吗?请帮助我,我花了几个小时来调查问题。
其他信息:
Build info: version: '3.5.3', revision: 'a88d25fe6b', time: '2017-08-29T12:42:44.417Z'
System info: host: '9ecf345f97e8', ip: '172.17.0.2', os.name: 'Linux', os.arch: 'amd64', os.version: '4.14.121-85.96.amzn1.x86_64', java.version: '1.8.0_51'
Driver info: org.openqa.selenium.chrome.ChromeDriver
Capabilities [{mobileEmulationEnabled=false, timeouts={implicit=0, pageLoad=300000, script=30000}, hasTouchScreen=false, platform=LINUX, acceptSslCerts=false, goog:chromeOptions={debuggerAddress=localhost:35983}, acceptInsecureCerts=false, webStorageEnabled=true, browserName=chrome, takesScreenshot=true, javascriptEnabled=true, platformName=LINUX, setWindowRect=true, unexpectedAlertBehaviour=ignore, applicationCacheEnabled=false, rotatable=false, networkConnectionEnabled=false, chrome={chromedriverVersion=2.46.628388 (4a34a70827ac54148e092aafb70504c4ea7ae926), userDataDir=/tmp/.org.chromium.Chromium.79YB7v}, takesHeapSnapshot=true, unhandledPromptBehavior=ignore, pageLoadStrategy=normal, strictFileInteractability=false, databaseEnabled=false, handlesAlerts=true, version=73.0.3683.103, browserConnectionEnabled=false, proxy=Proxy(), nativeEvents=true, locationContextEnabled=true, cssSelectorsEnabled=true}]
答案 0 :(得分:1)
此错误消息...
Build info: version: '3.5.3', revision: 'a88d25fe6b', time: '2017-08-29T12:42:44.417Z'
System info: host: '9ecf345f97e8', ip: '172.17.0.2', os.name: 'Linux', os.arch: 'amd64', os.version: '4.14.121-85.96.amzn1.x86_64', java.version: '1.8.0_51'
Driver info: org.openqa.selenium.chrome.ChromeDriver
...表示 ChromeDriver 无法启动/产生新的 WebBrowser ,即 Chrome浏览器会话。
您的主要问题是所使用的二进制版本之间的不兼容性:
支持 Chrome v71-73
因此 JDK v8u51 , Selenium Client v3.5.3 , ChromeDriver v2.46 和之间存在明显的不匹配Chrome浏览器v73.0
@Test
。