考虑因素:
- 容易维护
- 简洁易懂
- 代码重用性好
- 系统的稳定性强
UI自动化:
数据的获取:装载的数据文件类型、数据的形式、数据的解析方法定义。
1.利用Junit单元测试组织用例,明确输入数据、预期结果
2.建一张输入数据参数表,不断循环调用
页面的元素:页面元素的分页、元素的获取方式 、元素的存取方式
1.当页面元素较少时,直接获取元素
2.当页面元素较多时,从配置文件中获取元素
定位页面元素的方法:定义一个统一的方法,比如对点击事件的封装:
public static void unifyClickMethods(WebDriver driver,String key,String value) {
if(key.contains("IdClick")) {
driver.findElement(By.id(value)).click();
}
if(key.contains("ClassNameClick")) {
driver.findElement(By.className(value)).click();
}
if(key.contains("LinktextClick")) {
driver.findElement(By.linkText(value)).click();
}
if(key.contains("NameClick")) {
driver.findElement(By.name(value)).click();
}
if(key.contains("PartialLinkTextClick")) {
driver.findElement(By.partialLinkText(value)).click();
}
if(key.contains("XpathClick")) {
driver.findElement(By.xpath(value)).click();
}
if(key.contains("TagNameClick")) {
driver.findElement(By.tagName(value)).click();
}
}
业务场景组织:
公用方法可以考虑封装(比如登录、退出、支付等)
根据业务场景组织业务流