大家好,今天给各位小伙伴带来的是测试工程师常用的10个python库,相信有些小伙伴肯定知道一些库,也使用过一些库。下面我们就来聊聊这常用的10个python库,我们主要介绍这些库和这些库的一些应用场景,方便没有接触过的小伙伴知道这些库的作用。
个人认为以下10个库是测试工程师最常用的库。
- os
- sys
- time
- selenium
- unittest
- pytest
- pymsql
- appium
- requests
- numpy
一、os库
1、介绍:
os 库是Python标准库,包含几百个函数,常用的有路径
操作、进程管理、环境参数等。
2、应用:
我们说一个使用场景,在进行web自动化测试的时候,前期网页是没有部署到服务器的,这个时候我们没有办法访问服务器,只能通过本地的html页面来进行测试,这个时候就要使用os库来访问我们的本地页面,如:dr.get("file:///"+os.path.abspath('HTML/下列列表.html'))
还有,os库中有对文件的修改,删除等功能,对于办公自动化方面很有帮助
二、sys库
1、介绍:
sys库提供了许多函数和变量来处理python运行时环境的不同部分
2、应用:
在我们通过命令行运行python脚本时,需要传递一些参数给到脚本中,这个时候就可以使用sys库中
sys.argv: 返回一个list,其中包含在命令行中传给脚本的参数。这常用于处理命令行参数。例如,如果运行命令为python myscript.py arg1 arg2,那么sys.argv为['myscript.py', 'arg1', 'arg2']。 sys.exit(): 使Python程序终止运行。可以在明确程序无法继续运行,或完成了其工作时调用。 sys.path: Python模块的搜寻路径。它是个字符串列表,在每次导入模块时都会检查这些路径。 sys.stdin, sys.stdout 和 sys.stderr: 绑定到Python运行时的标准输入、输出和错误流。这些可能对文件I/O和错误处理很有用。 sys.version: 包含了关于当前Python解释器的版权和版本信息 sys.getsizeof(object): 返回对象的大小(以字节为单位) sys.maxsize:返回Python整数的最大值。 sys.platform:返回操作系统平台名称。 sys.exc_info():返回一个包含三个值的元组(type, value, traceback),它们为异常类型、异常值及追溯信息。 sys.modules:已加载模块的字典,{module_name: module}
三、time库
1、介绍:
Time库包含三类函数
时间获取:time() ctime() gmtime()
时间格式化:strftime() strptime()
程序计时:sleep(),perf_counter()
2、应用:
经常用到的地方就是在自动化测试的时候,需要休眠代码,为了能更好的定位到元素,你是不是常常time.sleep(2)一下呢?
四、selenium库
用它可以定位我们页面的元素,然后在操控页面元素,当然也可以操控浏览器和移动端app,八大定位元素的方法可还记得?
五、unittest库
unittest单元测试框架不仅可以适用于单元测试,还可以适用WEB自动化测试用例的开发与执行,该测试框架可组织执行测试用例,并且提供了丰富的断言方法,判断测试用例是否通过,最终生成测试结果。
2、应用:
可以使用在批量运行自动化测试用例,用例之间数据交互,自动生成测试报告等
六、pytest库
1、介绍:
这个库和上面的uinttest类似也是自动化测试框架,里面有一系列的函数可以让我们进行断言,生成测试报告等
2、应用:
pytest的使用和unittest类似,不同的地方在于pytest有很多插件,可以用例出错重跑等
七、email库
1、介绍:
该库常和smtplib库一起使用,你在写代码进行邮件自动化发送的时候必不可少
2、应用:
该库的使用需要配合邮箱的设置,邮箱要开启一些服务,然后你才可以登录smtp服务器
八、appium库
1、介绍:
Appium是一个开源的,适用于原生或混合移动应用( hybrid mobile apps )的自动化测试工具,Appium应用WebDriver: JSON wire protocol驱动安卓和iOS移动应用
2、应用:
在进行移动端自动化测试时,你的代码必须引入appium库,你才能调用appium软件,然后再控制移动端的app
九、pymsql库
1、介绍:
pymsql是python来连接操作mysql数据的一个python专用库
2、应用:
在编写自动化测试时,有些数据我们需要从mysql数据库中获取,这个时候这个库就很有作用了
十、requests库
1、介绍:
Requests 是用Python语言编写,基于 urllib,采用 Apache2 Licensed 开源协议的 HTTP 库。它比 urllib 更加方便,可以节约我们大量的工作,完全满足 HTTP 测试需求。Requests 的哲学是以 PEP 20 的习语为中心开发的,所以它比 urllib 更加 Pythoner。
2、应用:
主要应用于接口自动化测试,可以用来发送get和post等等一些请求。
十一、 numpy 库
除此之外,还会用到 numpy,进行随机数之类的工具调用
import numpy as np
pop_list = np.random.randint(100,size=6)
标签:测试,工程师,python,sys,Python,应用,自动化 From: https://www.cnblogs.com/chenxiaomeng/p/18032497