发布者:上海IT外包来源:http://www.lanmon.net点击数:934
用python+selenium实现UI主动化测试,要有一些HTML和xpth的根本,固然python根本必定是必需要会的。笔者建议花点时辰体味下相干根本知识,不至于后面发懵。
一、什么是selenium?
selenium是个强大的工具集。支撑快速开发测试主动化,支撑在多种阅读器平台上实行测试。支撑多开发说话,如:Python、Java、ruby、C#等,本次选择Python3作为开发说话。
二、用python做测试的利益
进修难度小,开发周期短。对今朝国内大多数测试人员来说,编码经历不够,python是个很好的入门说话。胶水说话,能与C++, Java, COM, and .NET,Object-C 整合。
测试局部要做单位测试,接口测试,由于人员比例的关系,不成能让测试人员同时把握多门说话,python可以对C/C++, Java, Object-C停止接口封装后,实现单位测试。语法简约,清楚,减少后期维护的难度。
三、主动化测试框架
一个典范的主动化测试框架一样平常网罗用例办理模块、主动化实行节制器、报表生成模块和日志模块等,这些模块之间不是互相孤立的,而是相辅相成的。
下面来引见下每个模块的逻辑单位:
用例办理模块
用例办理模块网罗用例的添加、改削、删除等把持单位,这些单位也会涉及到用例书写的形式,测试数据的办理、可复用库等
主动化实行节制器
节制器是主动化用例实行的构造模块,首要担任以什么编制去实行用例。斗劲典范的节制器有效户图形界面(GUI)和"commandline+文件"两种。
报表生成模块
报表生成模块首要担任实行完用例往后生成报表,报表一样平常以HTML名目居多,信息首要网罗用例的实行情形及相应的总结报告。别的还可以添加发送邮件功能。
日志模块
日志模块首要用来记适用例的实行情形,以便于更高效的查询拜候用例失败信息及追踪用例实行情形。
四、主动化框架的设计与实现
方案设计
1、编程代码选择 python3
2、工具selenium + 单位测试框架 unittest
3、编译器: IDE/pycharm
构造设计
cases:
按照功能划分用例办理
用例实现
com
config
edata: 情形设置装备安排模块
env.json 、enviroment.yaml 实现都市选择及SIT、UAT情形切换
sdata: 数据设置装备安排
各类数据json文件、银行数据、产物信息、小我信息等
elements: 元素界说
locator.py 元素界说、menu 、into_a_management.yaml 等
lib
第三方模块引用, 版本办理
report
办理日志报告
report.xlsx 主动化实行成效生成excel报表
report.xlsx
index.html
必要改进的模块
对付现有实现的测试框架,已经可以满足web工具的主动化需求,但仍是有些可以改进进步的地方,比如:
针对局部测试用例是否可以考试考试数据驱动
添加屏幕截图功能
封装selenium中By库中的函数,以便更高效的定位页面元素等
连系业界优秀的主动化框架和理论连续改进
分享到: