用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库中的函数,以便更高效的定位页面元素等
结合业界优秀的自动化框架和实践持续改进
五、总结
基于selenium实现的web自动化框架不仅轻量级而且灵活,可以快速的开发自动化测试用例。结合上面的框架设计思路,希望对大家以后的web自动化框架的设计和实现有所帮助。
欢迎加入 51软件测试大家庭,在这里你将获得【最新行业资讯】,【免费测试工具安装包】,【软件测试技术干货】,【面试求职技巧】... 51与你共同学习,一起成长!期待你的加入: QQ 群: 755431660
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网
猜你喜欢:- SpringBoot系列(八)分分钟学会Springboot多种解决跨域方式
- IBM 警告,量子计算机可分分钟破解现有的加密技术
- 神奇!零基础分分钟玩转AI,华为云ModelArts全体验
- 优步大数据平台处理100多PB数据却只有分分钟延迟!
- 人人都是女装大佬??Snapchat的性别交换滤镜分分钟会被玩坏!
- 单帧风景照变延时摄影,分分钟搞定,还能有昼夜变化,这是来自日本的开源动画景观算法
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
现代操作系统(第3版)
Andrew S. Tanenbaum / 陈向群、马洪兵 / 机械工业出版社 / 2009-7 / 75.00元
本书是操作系统领域的经典之作,与第2版相比,增加了关于Linux、Windows Vista和Symbian操作系统的详细介绍。书中集中讨论了操作系统的基本原理,包括进程、线程、存储管理、文件系统、输入/输出、死锁等,同时还包含了有关计算机安全、多媒体操作系统、掌上计算机操作系统、微内核、多核处理机上的虚拟机以及操作系统设计等方面的内容。此外,还在第2版的基础上对部分习题进行了增删,更有助于读者学......一起来看看 《现代操作系统(第3版)》 这本书的介绍吧!