Selenium Edge驱动程序没有获取URL – java
作者:互联网
我最近将我的selenium库从2.46.0更新到2.53.0(最新版本),以便在使用Edge浏览器的Windows 10计算机上运行测试.
我已将此添加到我的测试设置阶段,以将webdriver初始化为EdgeDriver:
System.setProperty("webdriver.edge.driver", driverDir+"MicrosoftWebDriver.exe"); DesiredCapabilities capabilities = new DesiredCapabilities("MicrosoftEdge", "", Platform.WINDOWS); driver = new EdgeDriver(capabilities);
“driver”字段是WebDriver类的对象.
这成功启动了Edge浏览器,但是我尝试获取的url永远不会被使用.
我试过微软为这个浏览器提供的两个驱动程序找到了here
我可以使用自动启动的浏览器手动加载页面.
让测试用例在hudson上失败,我在控制台窗口中得到了这个堆栈跟踪:
15:13:04 [junit] Unknown error (WARNING: The server did not provide any stacktrace information) 15:13:04 [junit] Command duration or timeout: 100.28 seconds 15:13:04 [junit] Build info: version: '2.53.0', revision: '35ae25b', time: '2016-03-15 16:57:40' 15:13:04 [junit] System info: host: 'DESKTOP-7LLLD31', ip: '172.16.4.159', os.name: 'Windows 8', os.arch: 'amd64', os.version: '6.2', java.version: '1.7.0_51' 15:13:04 [junit] Driver info: org.openqa.selenium.edge.EdgeDriver 15:13:04 [junit] org.openqa.selenium.WebDriverException: Unknown error (WARNING: The server did not provide any stacktrace information) 15:13:04 [junit] Command duration or timeout: 100.28 seconds 15:13:04 [junit] Build info: version: '2.53.0', revision: '35ae25b', time: '2016-03-15 16:57:40' 15:13:04 [junit] System info: host: 'DESKTOP-7LLLD31', ip: '172.16.4.159', os.name: 'Windows 8', os.arch: 'amd64', os.version: '6.2', java.version: '1.7.0_51' 15:13:04 [junit] Driver info: org.openqa.selenium.edge.EdgeDriver 15:13:04 [junit] at java.lang.reflect.Constructor.newInstance(Constructor.java:526) 15:13:04 [junit] at org.openqa.selenium.remote.ErrorHandler.createThrowable(ErrorHandler.java:206) 15:13:04 [junit] at org.openqa.selenium.remote.ErrorHandler.throwIfResponseFailed(ErrorHandler.java:158) 15:13:04 [junit] at org.openqa.selenium.remote.RemoteWebDriver.execute(RemoteWebDriver.java:678) 15:13:04 [junit] at org.openqa.selenium.remote.RemoteWebDriver.startSession(RemoteWebDriver.java:249) 15:13:04 [junit] at org.openqa.selenium.remote.RemoteWebDriver.(RemoteWebDriver.java:131) 15:13:04 [junit] at org.openqa.selenium.remote.RemoteWebDriver.(RemoteWebDriver.java:144) 15:13:04 [junit] at org.openqa.selenium.edge.EdgeDriver.(EdgeDriver.java:152) 15:13:04 [junit] at org.openqa.selenium.edge.EdgeDriver.(EdgeDriver.java:120)
我不确定这里发生了什么,任何事都会有所帮助,谢谢.
解决方法:
看起来它无法实例化新版本的驱动程序.从堆栈中,它似乎也认为操作系统是Windows 8,但这可能是Selenium中的一个错误:
'DESKTOP-7LLLD31', ip: '172.16.4.159', os.name: 'Windows 8', os.arch: 'amd64', os.version: '6.2', java.version: '1.7.0_51'
需要注意的一点是,您应该始终使用Windows / Microsoft Edge / Microsoft WebDriver的匹配版本.因此,根据您的屏幕截图,您使用的是Windows / Microsoft Edge版本10586,并且应该使用位于此处的驱动程序的build 10586:
Microsoft WebDriver Fall 2015 Update
如果您实际上是在Windows 10上并运行它并看到此问题,那么下一个要查看的区域可能就是功能.尝试创建一个实例而不传递任何功能,看看是否有效.如果您传入的功能是必需的并且最终不正确,则会导致创建WebDriver实例失败.
标签:microsoft-edge,java,selenium,selenium-webdriver 来源: https://codeday.me/bug/20191008/1875060.html