大佬教程收集整理的这篇文章主要介绍了htmlunit 单个测试通过但在测试套件中运行失败,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在使用 HTMLUnit 来测试一些 SAML SSO 流程。我编写了多个测试,它们在单独运行时工作正常。当我在测试套件中运行它们或运行所有测试时。只有 1 工作正常,其他失败。问题似乎是,一旦使用 webclIEnt.getPage('url')
请求第一页并单击按钮以重定向到下一页。点击不会发生。当单独运行测试时,它点击正常并且工作正常。
我正在使用 HTMLunit 2.46.0 版,如下所示,测试之间共享的唯一静态数据是 URLS 和用户名和密码:
private static final String USERname = "username";
private static final String PASSWORD = "password";
public voID test1() throws Exception {
try (final WebClIEnt webClIEnt = new WebClIEnt(browserVersion.Chrome)) {
webClIEnt.getoptions().setThrowExceptionOnScriptError(false);
webClIEnt.getoptions().setThrowExceptionOnFailingStatusCode(false);
webClIEnt.getoptions().setJavaScriptEnabled(true);
webClIEnt.getoptions().setCSSEnabled(false);
webClIEnt.getoptions().setRedirectEnabled(true);
webClIEnt.getcookieManager().setcookiesEnabled(true);
final HTMLPage loginPage= webClIEnt.getPage(URL);
assertthat(loginPage.getTitleText()).isEqualTo(LOGIN_PAGE_Title);
HTMLbuttoninput samlLoginbutton = loginPage.getHTMLElementByID("test");
samlLoginbutton.click();
webClIEnt.waitForBackgroundJavaScriptStartingBefore(10000);
webClIEnt.waitForBackgroundJavaScript(60000);
HTMLPage nextLoginPage = (HTMLPage) webClIEnt.getCurrentwindow().getEnclosedPage();
assertthat(nextLoginPage.getUrl().toString()).isEqualTo(NEXT_LOGIN_URL);
}
}
public voID test2() throws Exception {
//similar to above example
}
当我在 java 中使用 try with resources 时,最后调用了 webclIEnt.close()
。
还有什么我需要做的吗?
我还尝试在 Junit 中设置 @BeforeEach
和 @AfterEach
以设置 webclIEnt
和 close
。但结果是一样的。
如何在测试套件中激发与运行单个测试相同的行为?
感谢阅读。
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)
以上是大佬教程为你收集整理的htmlunit 单个测试通过但在测试套件中运行失败全部内容,希望文章能够帮你解决htmlunit 单个测试通过但在测试套件中运行失败所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。