WebUI自动化测试框架搭建(二)-详细设计框架设计
(二)-详细设计&框架设计
- 1 需求分析
- 2 技术栈
- 3 框架设计
- 3.1 框架说明
- 3.2 框架执行流程
- 4 预期结果
- 4.1 测试过程log日志
- 4.2 测试报告html格式
- 4.3 测试报告邮件格式
- 5 特别说明
1 需求分析
对 实现需求 进行详细分析,主要有下:
功能 | 说明 |
---|---|
使用Unittest框架 | 开源自动化测试框架,直接使用 |
批量或指定用例运行 | Unittest框架可支持此功能 |
log日志 | 使用Python的logging库即可 |
生成HTML测试报告 | 使用HtmlTestRunner.py模块可实现此功能 |
用例设计和结果分离 | 使用配置文件如excel、json等组织用例数据 |
支持Json、conf、excel等配置文件读取 | 这里先使用excel进行页面元素的驱动 |
用户登录封装 | 直接把登录功能模块化,使用Unittest框架中的setup,teardown即可 |
定制测试报告模板 | 使用HTMLTestRuner.py模块 |
报告多语言 | 使用HTMLTestRuner.py模块 |
截图功能 | 使用Selenium的save_screenshot方法 |
2 技术栈
技术 | 版本及说明 |
---|---|
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位 |
其它 | 后续补充 |
3 框架设计
3.1 框架说明
3.2 框架执行流程
4 预期结果
4.1 测试过程log日志
4.2 测试报告html格式
4.3 测试报告邮件格式
5 特别说明
注意!注意!注意!重要的事情说三遍!
=======================================================
本系列文章使用的测试对象是一个开源的商城软件,由于不太稳定,可能会出现打不开的情况。问题不大。该系列文章只是教如何搭建自动化框架,而不是教如何测试。所以大家可把每个文章最后的代码复制出来,然后修改登录模块、页面元素模块、测试用例模块,然后用于自己的实际项目即可。建议一定要阅读该系列文章的前两个文章,确认是否是自己需要的框架,再进行订阅,否则后果自负!
=======================================================
WebUI自动化测试框架搭建(二)-详细设计框架设计相关推荐
- 网站框架搭建——基于Django框架的天天生鲜电商网站项目系列博客(二)
系列文章目录 需求分析--基于Django框架的天天生鲜电商网站项目系列博客(一) 网站框架搭建--基于Django框架的天天生鲜电商网站项目系列博客(二) 用户注册模块--基于Django框架的天天 ...
- iris-v12 框架搭建二 mvc架构
iris-v12 框架搭建二 mvc架构 在这里我就默认你已经会了搭建非mvc架构的方法(不懂得看iris-v12 框架搭建一 快速启动). 想要搭建mvc的架构非常简单,只要使用iris的mvc包就 ...
- “Zhuang.Data”轻型数据库访问框架(二)框架的入口DbAccessor对象
目录: "Zhuang.Data"轻型数据库访问框架(一)开篇介绍 "Zhuang.Data"轻型数据库访问框架(二)框架的入口DbAccessor对象 先来看 ...
- Python+unittest+requests 接口自动化测试框架搭建 完整的框架搭建过程 实战
一.Python+unittest+requests+HTMLTestRunner 完整的接口自动化测试框架搭建_00--框架结构简解 首先配置好开发环境,下载安装Python并下载安装pycharm ...
- Unity 游戏框架搭建 (二十一) 使用对象池时的一些细节
上篇文章使用SafeObjectPool实现了一个简单的Msg类.代码如下: class Msg : IPoolAble,IPoolType{#region IPoolAble 实现public vo ...
- android开发ssh框架搭建,基于SSH框架的Android系统的研究
摘要: 本文设计开发了一个基于SSH框架的酒店Android手机查询系统.该系统采用面向对象的设计思想进行分析与设计,利用Eclipse,MyEclipse,Android SDK,Tomcat和My ...
- ssm框架搭建连接mysql_SSM框架集搭建
SSM(Spring+SpringMVC+Mybatis)框架集由Spring.SpringMVC.Mybatis三个开源框架整合而成,常作为数据源较简单的web项目的框架. 1.三大框架概述 Spr ...
- ssm框架搭建连接mysql_ssm框架搭建(详细)
ssm框架搭建 开发环境:eclipse + jdk18 + tomcat8.5 + maven3.6 + mysql5.10 项目结构: 数据库: --用户表 CREATE TABLE `user` ...
- 架构框架搭建(二)《Dubbo分布式领域驱动设计架构框体》
微信公众号:bugstack虫洞栈 | https://bugstack.cn 沉淀.分享.成长,专注于原创专题案例,以最易学习编程的方式分享知识,让自己和他人都能有所收获.目前已完成的专题有:Net ...
- Vue3.0 + Ts 项目框架搭建二:路由 Router
前言 上篇文章我们使用 vue-cli 创建了模板项目,可以看到安装的依赖只有 vue,所以要正常的驱动项目,安装必要的依赖是跑不了. 其中Router是控制整个系统的页面路由,是最重要的依赖之一.因 ...
最新文章
- MemCache内存缓存系统
- 最长下降/上升子序列问题
- React中级学习(第一天)
- Unity手游之路lt;七gt;角色控制器
- ILI9341液晶LCD彩色显示原理
- 案例研究 路由器到路由器EOMPLS---基于端口
- Flutter实战之Hello Flutter
- Android生成签名文件对应用签名 Android签名作用
- iOS支付知识及调试技巧:【支付流程 预授权 银行卡验证反洗钱敏感信息的脱敏规范】2、安全设计Checklist(短信验证码、图形验证码、密码管理、身份验证、会话安全、敏感信息、接口安全)
- 聚类算法之层次聚类和密度聚类(图文并茂)
- 微信小程序—Flex布局
- 关于微信小程序地图定位不精确问题(转载)
- 《计算机网络》在物理层和数据链路层扩展以太网
- 亲测有效 debian出现does not have a Release file. N: Updating from such a repository can‘t be done securely
- Q_D以及Q_Q指针理解
- Spark的调度流程(任务调度+资源调度)
- java返回一个布尔值_关于java:返回布尔值的方法
- jzyz 1225 调查干草
- 什么表示计算机存储信息的能力以字节为单位,大学计算机基础考试判断.doc
- v-for 循环中数据更新子组件视图不更新解决方案
热门文章
- iPhone5添加网易企业邮箱
- 初识文件上传(主PHP以及upload-labs前十解)
- PyQt5桌面应用开发(11):摸鱼也要讲基本法之桌面精灵
- 微信小程序开发-引入阿里巴巴矢量icon图标库
- html给表格增加标题行,如何设置Excel表格标题行随意显现的步骤
- revit二次开发 导出结构柱三角面出现的特殊情况
- KVM虚拟机磁盘加密
- 亿华通寻路:“氢”能之火,何以燎原?
- python异常类封装_在Python中封装异常
- 一个称得上“软件智能”的系统怎样才能落地--暨aaas设计纲要