我创建了一个Maven项目,其中包含使用Selenium Webdriver(java)进行的20次测试。现在,当我想执行我的Maven项目时,有时会出现以下错误:
这是因为每次测试都要登录。因此,当我想运行20个测试时,有时会出现错误并且我无法继续测试,因此它会在Selenium Webdriver中返回“失败的测试”。
有人知道如何解决这个问题吗? 我试过把“Thread.sleep(30000);”在每次测试结束时给他们一些时间“不要看起来像机器人”,但它不起作用......
非常感谢你的帮助!
答案 0 :(得分:1)
以下是您的问题的答案:
Not Secure
,您使用的网址/连接只有当您通过Mozilla Firefox 53.0访问网址时,Firefox才会在地址栏中显示带有红色透视红色删除图标的锁定图标。现在,当URL被加载时,默认情况下,光标将位于Username
字段上,弹出窗口会显示This connection is not secure. Logins entered here could be compromised. Learn More
这样的消息:Username
输入字段中输入用户名,而Not Secure
弹出窗口会覆盖Password
输入字段。click()
输入字段中调用sendKeys()
或Password
操作,则Not Secure
弹出窗口会收到点击,然后Insecure password warning in Firefox
页面会打开在下一个标签中,Selenium将其焦点转移到新标签。因此,测试用例开始失败。在这些情况下,最佳解决方案是:
debanjan
debanjan
以忽略所有UntrustedCertificate
个问题。以下是禁用insecure_field_warning
的示例代码块:
System.setProperty("webdriver.gecko.driver", "C:\\Utility\\BrowserDrivers\\geckodriver.exe");
ProfilesIni profile = new ProfilesIni();
FirefoxProfile testprofile = profile.getProfile("debanjan");
testprofile.setAcceptUntrustedCertificates(true);
testprofile.setAssumeUntrustedCertificateIssuer(true);
testprofile.setPreference("security.insecure_field_warning.contextual.enabled", false);
DesiredCapabilities dc = DesiredCapabilities.firefox();
dc.setCapability(FirefoxDriver.PROFILE, testprofile);
dc.setCapability("marionette", true);
WebDriver driver = new FirefoxDriver(dc);
driver.manage().window().maximize();
driver.navigate().to("http://demosite.center/wordpress/wp-login.php");
如果这回答你的问题,请告诉我。