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报告输出功能非必选,读者根据需要自行决定是否采用。
相关文章
- 漫谈测试技能——初识UI自动化
- 全球首个物联网 MQTT 测试云服务 XMeter Cloud 正式上线
- 功能测试面试没人要了!软件自动化测试如何入门?
- 这是我见过最牛逼的接口自动化测试框架没有之一:基于python+requests+pytest+allure实现
- 渗透测试常用工具汇总_常用渗透测试工具
- 详解接口测试(2)- HTTP接口用例设计与测试方法(拿B站练手)
- Mssql 从测试到实战
- 稳定性测试怎么做_stata稳定性检验怎么做
- 自动化测试+性能面试题整理–个人最新【持续更新】「建议收藏」
- 2022-10-31-验收测试
- 基于Sikuli GUI图像识别框架的PC客户端自动化测试实践
- 测试之路 pytest接口自动化-request包中的headers覆盖
- 自动化测试练手项目推荐
- 自动化测试中对数据恢复的思考与实际业务改造实践
- App自动化测试|原生app元素定位方法
- App自动化测试|adb版本过低的报错提示
- 基于Python接口自动化测试框架+数据与代码分离实战(优化篇)
- 软件测试|测试开发之路--UI 自动化常用设计模式
- 微软出品自动化神器【Playwright+Java】系列(八) 之 使用 Playwright进行API接口测试
- 测试如何给开发提质量目标 ?
- Python自动化测试之自定义日志及其封装
- CI/CD 中的自动化测试的概要知识
- 性能测试MySQL 1万并发性能测试:探寻最高性能极限(mysql1万并发)
- 测试Redis中的数据来源(测试数据来源redis)
- androidmonkey自动化测试改为java调用monkeyrunnerApi
- 在客户端配置TNS测试报错ORA-12170:TNS:连接超时
- php中mysql连接和基本操作代码(快速测试使用,简单方便)