Python selenium自动化测试模型图解


Posted in Python onApril 15, 2020

1、线性测试

优势:每一个脚本都是完整独立的,每一个脚本对应一个测试用例

缺点:开发成本高,会有重复操作重复脚本;维护成本也高,修改重复操作的脚本时,要逐一进行修改。

2、模块化驱动测试

把重复的操作独立成公共模块,当用例执行中需要这一模块操作时调用,这样最大限度的消除重复,提高测试用例的可维护性。

解决了线性测试的两个问题:

(1)提高了开发效率

(2)简化了维护复杂性

缺点:在数据会改变的情况下,会加大编写重复的脚本(比如现在我要测试不同用户登录的场景,先是张三登录,登录完后换李四登录,然后继续换用户登录,这样会有重复的登录脚本,虽然登录的步骤一样,但是登录的数据不一样)

写一个类,将登录的函数包装起来

Python selenium自动化测试模型图解

然后写个主程序调用登录的函数

Python selenium自动化测试模型图解

3、数据驱动测试

数据驱动是数据的参数化,因为输入数据的不痛而引起输出结果的不同;比如定义的数组、字典、或者是外部文件(Excel、csv、txt、xml等)都可以看做是数据驱动,目的就是实现数据与脚本的分离。

优点:进一步增强了脚本的复用性。

(1)通过参数化来实现数据驱动

将要输入的值当做一个参数来进行传入,实现根据数据输入的不同而有不同的执行结果

登录的函数以传参的方式封装

Python selenium自动化测试模型图解

然后主方法中调用该方法,传入不同的参数

Python selenium自动化测试模型图解

(2)参数化搜索关键字

将要搜索的关键字定义为一组数组,然后通过循环的方式进行搜索,搜索的关键字不一样测试结果也不一样。

Python selenium自动化测试模型图解

(3)读取txt文件

Python中提供了几种读取txt文件的方式:

read():读取整个文件

readline():读取一行数据

readlines():读取所有行的数据

Python selenium自动化测试模型图解

Python selenium自动化测试模型图解

(4)读取csv文件

(5)读取xml文件

parse():打开xml文件

documentElement:用于得到xml文件唯一的根元素

nodeName:节点名称

nodeValue:节点值

nodeType:节点类型

ELEMENT_NODE:元素节点类型

getElementsByTagName:可以通过标签名获取标签,获取的对象以数组的形式存储

getAttribute():用于获取元素的属性值,与webdriver中的get_attribute()类似

firstChild:属性返回被选节点的第一个子节点

data:表示获取该节点的数据,与webdriver中的text方法类似

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
CentOS 6.X系统下升级Python2.6到Python2.7 的方法
Oct 12 Python
python正则分析nginx的访问日志
Jan 17 Python
python pandas库中DataFrame对行和列的操作实例讲解
Jun 09 Python
Python中的CSV文件使用"with"语句的方式详解
Oct 16 Python
利用Pycharm断点调试Python程序的方法
Nov 29 Python
解决Python3 抓取微信账单信息问题
Jul 19 Python
python中如何设置代码自动提示
Jul 15 Python
python中的django是做什么的
Jul 31 Python
python 制作简单的音乐播放器
Nov 25 Python
Python爬虫之Selenium多窗口切换的实现
Dec 04 Python
浅析Python打包时包含静态文件处理方法
Jan 15 Python
利用Python网络爬虫爬取各大音乐评论的代码
Apr 13 Python
python简单实现最大似然估计&scipy库的使用详解
Apr 15 #Python
Python unittest单元测试框架及断言方法
Apr 15 #Python
python 连续不等式语法糖实例
Apr 15 #Python
Python中使用socks5设置全局代理的方法示例
Apr 15 #Python
在python中求分布函数相关的包实例
Apr 15 #Python
python实现手势识别的示例(入门)
Apr 15 #Python
使用python计算三角形的斜边例子
Apr 15 #Python
You might like
PHP获取163、gmail、126等邮箱联系人地址【已测试2009.10.10】
2009/10/11 PHP
PHPUnit PHP测试框架安装方法
2011/03/23 PHP
浅析php过滤html字符串,防止SQL注入的方法
2013/07/02 PHP
php实现上传图片生成缩略图示例
2014/04/13 PHP
PHP创建文件,并向文件中写入数据,覆盖,追加的实现代码
2016/03/25 PHP
PHP面向对象五大原则之依赖倒置原则(DIP)详解
2018/04/08 PHP
表格单元格交错着色实现思路及代码
2013/04/01 Javascript
Javascript浅谈之this
2013/12/17 Javascript
jquery中$.post()方法的简单实例
2014/02/04 Javascript
javascript实现密码强度显示
2015/03/18 Javascript
JavaScript计划任务后台运行的方法
2015/12/18 Javascript
实现easyui的datagrid导出为excel的示例代码
2016/11/10 Javascript
jquery实现提示语淡入效果
2017/05/05 jQuery
webpack vue项目开发环境局域网访问方法
2018/03/20 Javascript
用element的upload组件实现多图片上传和压缩的示例代码
2019/02/12 Javascript
javascript实现获取中文汉字拼音首字母
2020/05/19 Javascript
vue 使用rules对表单字段进行校验的步骤
2020/12/25 Vue.js
使用graphics.py实现2048小游戏
2015/03/10 Python
python dataframe 输出结果整行显示的方法
2018/06/14 Python
python3实现windows下同名进程监控
2018/06/21 Python
python字典值排序并取出前n个key值的方法
2018/10/17 Python
python实现网页自动签到功能
2019/01/21 Python
Django框架基础模板标签与filter使用方法详解
2019/07/23 Python
台湾家适得:Homeget
2019/02/11 全球购物
BannerBuzz加拿大:在线定制横幅印刷、广告和标志
2020/03/10 全球购物
怎样写好自荐信和推荐信
2013/12/26 职场文书
感恩节红领巾广播稿
2014/02/11 职场文书
人力资源主管的岗位职责
2014/03/15 职场文书
青春寄语大全
2014/04/09 职场文书
艺术教育实施方案
2014/05/03 职场文书
节水标语大全
2014/06/11 职场文书
党员干部群众路线个人整改措施
2014/09/18 职场文书
2014年测量员工作总结
2014/12/12 职场文书
社区服务活动报告
2015/02/05 职场文书
先进个人总结范文
2015/02/15 职场文书
导游词之天津古文化街
2019/11/09 职场文书