需求分析

对 实现需求 进行详细分析,主要有下:

功能 功能
使用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自带===邮件服务
email 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格式

测试报告邮件格式

框架源码

【分享、共勉、共进、提升】更多、更全、更新的软件测试领域知识,请关注:

关注个人公众号加入业内技术人扣群,共同学习软件测试技术、面试等软件测试方方面面,还会有免费直播讲解面试题、中高级测试技术、职业规划,收获更多测试技巧。

你的经历,或许是另一个人的明灯;而别人的解答,也许正能为你指明方向!


WebUI自动化测试框架搭建从0到1(完整源码)更新完毕相关推荐

  1. WebUI自动化测试框架搭建(二)-详细设计框架设计

    (二)-详细设计&框架设计 1 需求分析 2 技术栈 3 框架设计 3.1 框架说明 3.2 框架执行流程 4 预期结果 4.1 测试过程log日志 4.2 测试报告html格式 4.3 测试 ...

  2. 微信成语接龙小程序|微擎框架|带流量主|前端+后端完整源码

    介绍: 环境要求: 环境推荐 Linux + 宝塔面板 + Nginx + php5.6 此源码必须安装在一级目录,不支持二级目录 使用条件:备案域名(不支持IP) 纯净微擎框架 V 2.5.7 We ...

  3. 最新彩虹云商城 彩虹自助下单Ver6.9.0免授权完整源码

    正文: 这彩虹源码直接上传源码解压缩后访问域名安装即可,本人亲测可用. 安装说明:上传到空间后直接访问即可根据提示安装,PHP直接用7.0及以上版本就行. 下方是版本的更新日志啥的: 程序: lanz ...

  4. WebUI自动化测试框架搭建(三)-环境部署

    (三)-环境部署 1 Python安装 1.1 下载 1.2 安装 2 安装配置Pycharm 2.1 下载 2.2 安装 3 界面熟悉 4 创建工程 4.1 新建项目 1.这里先先安装Python环 ...

  5. 和大家推荐一款由tp框架搭建的外卖跑腿小程序源码

    外卖跑腿小程序的优势 摆脱平台的抽佣:各大平台垄断市场,对外卖商家抽取的佣金越来越高,部分城市都高达25%,自有外卖商城不用再缴纳高额佣金,可以摆脱第三方平台高额抽点,提高店铺盈利. 节省推广成本:自 ...

  6. python web自动化测试框架搭建(功能接口)——功能测试模块

    功能测试使用selenium,模块有: 1.futil: 公共方法,如元素高亮显示 # coding=utf-8 """高亮显示元素""" ...

  7. Python+unittest+requests 接口自动化测试框架搭建 完整的框架搭建过程 实战

    一.Python+unittest+requests+HTMLTestRunner 完整的接口自动化测试框架搭建_00--框架结构简解 首先配置好开发环境,下载安装Python并下载安装pycharm ...

  8. APP自动化测试框架搭建(五)--Python+Appium+pytest-html

    第一章 APP自动化环境搭建(Mac版) 第二章 APP自动化环境搭建(Windows版) 第三章 adb命令 第四章 元素定位.元素操作 第五章 APP自动化测试框架搭建 Python+Appium ...

  9. APP自动化测试框架搭建(六)--uiautomator2、web-editor基础操作

    第一章 APP自动化环境搭建(Mac版) 第二章 APP自动化环境搭建(Windows版) 第三章 adb命令 第四章 元素定位.元素操作 第五章 APP自动化测试框架搭建 Python+Appium ...

  10. API接口自动化测试框架搭建(一)-总体需求

    (一)-总体需求 1 实现目的 2 功能需求 3 其他要求 4 适用人员 5 学习周期 6 学习建议 7 内容直达 8 反馈联系 1 实现目的 API接口自动化测试,主要针对http接口协议: 便于回 ...

最新文章

  1. JVM中可生成的最大Thread数量
  2. SOCKET用法详解
  3. 打开浏览器不是主页_网络没问题但是浏览器打开主页却显示网络连接错误
  4. Netty基本使用流程代码
  5. python ocr 识别中文pdf_轻松识别文字,这款Python OCR库支持超过80种语言
  6. linux c 多线程终止耗时长的任务,Linux C:从main()返回是否导致多线程应用程序终止?...
  7. 一个解除TCP连接的TIME_WAIT状态限制的简便方法
  8. [转] 全套汽车标志,好不容易找到的哦!
  9. vs 2010旗舰版问题
  10. 如何把word里的分页符、换行符替换成回车符?
  11. 【数据结构】图1——图的基本概念和术语、类型定义
  12. 桌面上的文件夹怎么保存到计算机硬盘里,电脑文件怎么保存到桌面
  13. ads的项目下的文件全部消失不见了
  14. ZYNQ LWIP实验
  15. flexf布局中的flex-grow和flex-shrink的计算方法,flex简写的规则
  16. 记一次全局/后台弹窗处理
  17. LINUX杂谈与系统编程
  18. installshield打包mysql_实现Installshield对Php+mysql+apache做的程序在WINDOWS下打包
  19. 如何屏蔽网页上的烦人广告
  20. 深度剖析E680G开发二.交叉编译BusyBox,图形化程序

热门文章

  1. 岁月的剪影【十二月一年之计始于此】
  2. html css开关按钮样式,纯CSS实现开关按钮
  3. win10如何添加linux开机引导,win10 linux 双系统怎么设置开机引导
  4. 超全现代虚幻UE4素材网站整理
  5. Diamond软件的使用(6)--Lattice原语基本概念
  6. jquery所有版本下载
  7. 高速PCB设计EMI之九大规则
  8. PhpSpreadsheet 生成圆饼图
  9. 练习Go语言-HTTP压力测试.md
  10. Magisk root 原理分析之一 :Magisk Andorid Root 流程