我在互联网上搜索了一下,但认为我可以通过在 stackoverflow 上发布并查看是否有任何意见来获得一些见解。
我想知道是否有人认为在这两种设置页面对象的方式中哪个更受欢迎:
public class LoginPage extends PageObject{
public void typeEmail(String email){
driver.findElement(EMAIL_SELECTOR).sendKeys(email);
}
public void typePassword(String pw){
driver.findElement(PASSWORD_SELECTOR).sendKeys(email);
}
public void submit(){
driver.findElement(SUBMIT_SELECTOR).click();
}
}
...和...
public class LoginPage extends PageObjects{
public void login(String email, String password){
driver.findElement(EMAIL_SELECTOR).sendKeys(email);
driver.findElement(PASSWORD_SELECTOR).sendKeys(email);
driver.findElement(SUBMIT_SELECTOR).click();
}
}
最初,我认为第二种方式会更好,因为如果登录流程由于某种原因发生变化(登录不太可能发生这种情况,但您可以推测其他类型的表单会发生这种情况),您可以更新 login() 方法和这个更改将影响所有需要登录的测试。
但是,如果您想在 submit() 之前验证错误条件或更多内容,则第二种解决方案不够灵活。
欢迎任何见解。