Selenium自动化测试——巡检脚本开发(中)

6、pages

封装测试过程针对页面的操作方法,主要包括basepage、mainpage、loginpage、registepage等函数。pages目录创建时选择“Python Package”格式。

(1)Basepage

BasePage是自定义页面基类,封装了基本的页面操作的方法,有 find_element, send_keys 2个公共方法,具体的方法可根据测试需要进行扩展。

find_element:定位元素,识别测试页面中需驱动的元素。

Send_keys:发送键值,模拟键盘输入测试数据。

Logger = Logger(logger="BasePage").getlog()是产生一个共有日志类,在当前页面基类中调用。

from common.logger import Logger中表示导入框架中common文件夹下的logger模块。

具体代码如下:

(2) Loginpage

LoginPage类是封装用户登陆业务所需的对象驱动方法,继承自BasePage类,有Input_username输入用户名,input_password输入密码,click_submit点击登陆按钮。Loginpage继承Basepage基类方法,故需加载Basepage,执行代码from .basepage import BasePage。

利用Firefox中Firebug对登陆页面中的用户名、密码及登陆按钮三个对象的属性分析,Loginpage中的对象识别使用By.NAME方法。

具体代码如下:

(3) mainpage

MainPage继承BasePage基类,封装了首页的open打开主页方法,show_userid获取用户登陆id及exit_sys退出系统方法。

可通过show_userid获取用户登陆后的id信息,便于判断登陆是否成功,本次测试并未增加该项判断,读者自自行研究如何判断登陆是否成功。

利用Firefox中Firebug对主页中的userid及退出元素的属性分析,mainpage中的对象识别使用XPATH方法。

(4) registepage

与用户登陆类似,registepage集成Basepage基类,用户注册操作涉及用户名、email、密码、确认密码、登陆操作。

利用Firefox中Firebug对注册页面中的相关元素的属性分析,registepage中的对象识别使用By.ID和XPATH方法。

7、picture

picture目录创建时选择“Directory”格式,存放cappic截图函数获得的图片。

8、report

report目录创建时选择“Directory”格式。调用HTMLTestRunner.py函数时,如需要图形分析,可将js文件放在report目录的“js”目录中。

本案例中日志记录功能已经很完整,故HTML报告输出功能非必选,读者根据需要自行决定是否采用。

发布了86 篇原创文章 · 获赞 243 · 访问量 5万+

猜你喜欢

转载自blog.csdn.net/weixin_43802541/article/details/104984758
今日推荐