WEB自动化-POM-ele 元素分离
因为实际工作中,有可能UI会进行变动,元素也会变动,此时需要把元素单独分离出来,方便修改
测试中需要与页面的UI进行交互时, 便调用PO的方法. 这样做的好处是, 如果页面的UI发生了更改,那么测试用例本身不需要更改, 只需更改PO中的代码即可.
PO设计模式具有以下优点:
测试代码与页面的定位代码(如定位器或者其他的映射)相分离.
该页面提供的方法或元素在一个独立的类中, 而不是将这些方法或元素分散在整个测试中.
总结:PO就是,以每个网页或者网页中的组件为单位,进行自动化代码的维护,可以和关键字驱动结合起来,进一步提高代码的可维护性和复用性。



3、创建page目录,下面创建业务模块文件,这里是login,以页面 或 元素为单位,测试代码与页面的定位代码(如定位器或者其他的映射)相分离.
导入allpage的时候建议使用蓝色框框内,方便查看数据来源,如allPages.page_login_user[0]代表的是xparh,allPages.page_login_user[1]代表的是值,黄色部分,有点麻烦
但是更简单的方式 是直接采用不定长传参*page_login_user ,自动传递page_login_user变量的两个值XPATH和值

4、 创建一个变量的目录,用来存放一些传参的变量,这里传递testcase里的URL,用户名和密码

5、创建测试用例目录testcase,创建测试用例文件testcase.py,测试用例中导入var变量
测试用例的函数test_login02传参browse,login= loginpage(broser) 初始化页面对象,传入driver,


思维方式:把python自带的方式封装->根据业务去封装