什么是PO
PageObject是一种测试设计模式
减少冗余的代码和对代码进行管理
分离测试步骤及测试对象
PO的好处
将测试用例及测试对象分离,提高用例可维护性
集中管理元素对象
代码可复用,降低成本
不同PO之间没有交叉,可以支持并行开发
PO的设计原则
总的原则
创建一个basepage,其basepage中包含所有待测试的page的公共方法
把每个要测试的对象封装在一个class类中
所有的pageobject继承basepage
方法的使用原则
公共方法代表UI功能,如元素定位方法封装,点击,设置内容等。
方法的实现原则
不要暴露页面的内部元素给外面,可以使用私有属性及私有方法,即以下划线开头。
_username_field = (By.ID,'login_username')
_password_field = (By.NAME,'login_passwd')
def _locate_login_frame(self):
return self.extend_find_element(LoginPageObject._login_frame)
PageObject中不要加assert断言,相关断言加在测试用例中。
参考:https://blog.csdn.net/Hh20161314/java/article/details/97291486