[英]Re-using login functionality in Selenium page object model tests
我正在探索在Web应用程序上使用Selenium 2,这需要在用户可以使用任何应用程序之前进行身份验证。 我正在计划JUnit 4或TestNG(仍在调查哪一个用于Grid 2)。 我也可以计划使用jbehave。
有没有人对如何改进以下测试有任何建议,以便我可以在所有测试中使用成功的登录功能? 我想避免在测试中重复登录。
public class LoginPageTest {
private LoginPage page;
@Before
public void openTheBrowser() {
page = PageFactory.initElements(new FirefoxDriver(), LoginPage.class);
page.open("http://www.site.com/Login");
}
@After
public void closeTheBrowser() {
page.close();
}
@Test
public void whenTheUserEntersValidCredentialsTheUserIsLoggedIn() {
assertThat(page.getTitle(), containsString("Login") );
}
}
测试已简化,但它将返回成功登录的页面对象。
谢谢
查看案例研究@ http://blog.infostretch.com/?p=806以获得更好的想法。 如果您处于初始开发水平,我建议您尝试使用QAF(以前的ISFW) 。
您最好的选择可能是将LoginPageTest类用作父类,并从LoginPageTest扩展每个测试类。
这样,每个测试都可以使用父设置和拆除方法登录系统,并进行自己的附加测试。
创建库并调用测试用例序列以执行一个测试用例/场景。
例如:
lib.login();
lib.whenTheUserEntersValidCredentialsTheUserIsLoggedIn();
lib.logout();
为此,照顾对象创作。 对象的解决方案是使用super eg: super.login()
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.