我正在尝试创建一个 JUnit 测试,要求用户使用管理员帐户登录。为了使我不必重复代码,我完成了LoginJUnit 测试和GoToAdminPageJUnit 测试。
首先访问登录页面并登录。
第二个尝试访问只有管理员才能访问的菜单,旨在从第一个离开的地方继续。我想要的是GoToAdminPage从相同的页面开始并以相同的环境Login结束。
这个想法是,通过创建Login自动化测试,我可以将其重复用于我将来想做的任何需要管理员权限的测试。
我想做的是,在 中setUp()调用GoToAdminPage第一个测试。然而,它的作用是,它启动一个测试浏览器GoToAdminPage,然后立即启动另一个测试浏览器,该浏览器由于包含指令Login而关闭。Login.tearDown()driver.quit()
我想要的是GoToAdminPage期望在同一页面结束时正确拾取Login,它没有get说明,因此它永远不会离开起始的 Firefox 页面。
我已经尝试过一些事情。我的每个测试都继承该类BasicTest,该类定义了许多内容(WebDriver、JS Executor、通用实用函数等)。在该课程中,我创建了一个perform()调用setUp()和的函数test()。
这样,在 中GoToAdminPage,我所要做的就是调用Login.perform(),GoToAdminPage.setUp()这将在技术上实现我想做的事情。然而,事实并非如此,并且具有与我上面提到的相同的效果。
在网上查看,我发现我也可以做到这一点GoToAdminPage extends Login,但也有相同的结果。
最后,我尝试将整个Login.test()过程放在类中的一个单独的函数中Login,我可以在 inside 调用该函数GoToAdminPage,但这具有相同的结果。
总而言之,似乎发生的情况是,当我在内部调用另一个 JUnit 测试时GoToLoginPage,它会执行测试,但将其作为单独的测试进行。
我想要的是能够本质上使这一切成为一个大测试,一旦我调用了Login,我就可以在我的用户登录的情况下与登录后页面进行交互。本质上我只是想GoToAdminPage成为 的Login扩展过程。
这可能吗?
蝴蝶不菲
阿波罗的战车
qq_遁去的一_1
元芳怎么了
随时随地看视频慕课网APP
相关分类