当前位置:网站首页>WebUI自动化测试框架搭建从0到1(完整源码)更新完毕
WebUI自动化测试框架搭建从0到1(完整源码)更新完毕
2022-08-02 11:51:00 【入坑玩家】
需求分析
对 实现需求 进行详细分析,主要有下:
功能 | 功能 |
---|---|
使用Unittest框架 | 开源自动化测试框架,直接使用 |
批量或指定用例运行 | Unittest框架可支持此功能 |
log日志 | 使用Python的logging库即可 |
生成HTML测试报告 | 使用HtmlTestRunner.py模块可实现此功能 |
用例设计和结果分离 | 使用配置文件如excel、json等组织用例数据 |
支持Json、conf、excel等配置文件读取 | 这里先使用excel进行页面元素的驱动 |
用户登录封装 | 直接把登录功能模块化,使用Unittest框架中的setup,teardown即可 |
定制测试报告模板 | 使用HTMLTestRuner.py模块 |
报告多语言 | 使用HTMLTestRuner.py模块 |
截图功能 | 使用Selenium的save_screenshot方法 |
技术栈
技术 | 版本及说明 |
---|---|
Python | V3.x(本文为3.7)===编程语言支撑 |
Selenium | V3.141.0 ===UI元素、控件的识别、定位,以及浏览器控制等 |
HtmlTestRunner | Python3版本===生成Html测试报告 |
Logging | Python自带===生成log日志 |
Xlrd | V1.2.0===excel读取方法 |
Unittest | Python自带===自动化测试框架 |
Smtplib | Python自带===邮件服务 |
Python自带===邮件服务 | |
os | Python自带===系统模块 |
PyCharm | Community 2020.2汉化版 |
操作系统 | Windows10旗舰版64位 |
其它 | 后续补充 |
框架设计
文件目录
│ main.py
│ README.md
│ t.txt
│ test_baidu.py
│
├─common
│ │ baseInfo.py
│ │ creenShot.py
│ │ HTMLTestRunner.py
│ │ logOut.py
│ │ readExcel.py
│ │ reportOut.py
│ │ sendMain.py
│ │ --init--.py
│
├─creenshot
│ 2021-03-04-10_07_17_screen.png
│
├─file
│ 1-框架架构图片.jpg
│ 2-框架结构说明脑图.jpg
│ 3-框架执行流程.jpg
│ 4-log日志截图.jpg
│ 5-html报告截图.jpg
│ 6-邮件样式截图.jpg
│
├─log
│ 2021_03_04 13_02_18-MeiDuo _test_log.log
│ 2021_03_04 13_19_10-MeiDuo _test_log.log
│
├─page
│ │ goods.py
│ │ WebElement.xlsx
│ │ --init--.py
│
├─report
│ 2021_03_04 13_02_18-MeiDuo _test_report.html
│ 2021_03_04 13_19_10-MeiDuo _test_report.html
│
├─testcase
│ test_goods.py
│ --init--.py
框架说明
框架执行流程
预期结果
测试过程log日志
测试报告html格式
测试报告邮件格式
框架源码
【分享、共勉、共进、提升】更多、更全、更新的软件测试领域知识,请关注:
关注个人公众号加入业内技术人扣群,共同学习软件测试技术、面试等软件测试方方面面,还会有免费直播讲解面试题、中高级测试技术、职业规划,收获更多测试技巧。
你的经历,或许是另一个人的明灯;而别人的解答,也许正能为你指明方向!
边栏推荐
猜你喜欢
随机推荐
QT笔记——在一个窗口上显示另外一个透明窗口
“纯C”实现——三子棋小游戏
Lexicon 27 - Remove Elements - Simple Questions
Several reasons why applet plugins benefit developers
excel 批量翻译-excel 批量函数公司翻译大全免费
翻译英语的软件-免费翻译软件-各种语言互相翻译
SQL 经典50题(题目+解答)(1)
Mysql事务隔离级别与MVCC(多版本并发控制)
According to the field classification Golang map array
企业级数据治理工作怎么开展?Datahub这样做
内存存储结构
DTG-SSOD:最新半监督检测框架,Dense Teacher(附论文下载)
What is the future of smartwatches?
CCF论文会议 IEEE 如何查询某个会议期刊的所有文章
Leek 151 - Reverse words in a string
QT笔记——Q_PROPERTY了解
yolo格式(txt)数据集转VOC(xml)
解决anaconda下载pytorch速度极慢的方法
19、商品微服务-srv层实现
面积曲线AUC(area under curve)