Python自动化测试常用库整理

您所在的位置:网站首页 python常用库模块 Python自动化测试常用库整理

Python自动化测试常用库整理

2024-07-14 19:44| 来源: 网络整理| 查看: 265

参考:https://www.jianshu.com/p/b45d240eabac 今天花了一些时间,过了一下这几年自己用Python开发的自动化测试框架,然后将其中常用到Python库抽出来,简单整理了一下它们的用处。我觉得,只要掌握了这些常用的Python库,足以应对大多数自动化测试框架和工具的开发工作。为了从若干源代码文件中找出这些被引用的Python库,还专门写了一个小工具来查找它们,该工具已经上传到github,地址是:import_search.py如果各位在平时工作中,发现了好用的Python库,也请留言注明,我好补充。

基本库:

sys 程序和Python解析器的交互 https://blog.csdn.net/zyc_love_study/article/details/78983817 os 启动新进程;操作文件和目录 https://www.cnblogs.com/yufeihlf/p/6179547.html re 正则表达式,字符串匹配 https://www.cnblogs.com/MrFiona/p/5954084.html string 基本字符串操作 https://www.cnblogs.com/PeterZhang1520389703/p/7647160.html inspect 提供自省和反射功能 https://www.cnblogs.com/linxiyue/p/7989947.html importlib 支持动态导入 http://www.cnblogs.com/zhbzz2007/p/6715516.html bitstring二进制数据处理 https://blog.csdn.net/zcl369369/article/details/22327029 zipfile 压缩解压文件 https://www.cnblogs.com/sun-haiyu/p/7082063.html tarfile 压缩解压文件 https://www.cnblogs.com/chenjianhong/p/4144441.html random 随机数,概率 https://www.cnblogs.com/duking1991/p/6121300.html uuid 生成唯一码 https://www.cnblogs.com/gaoya666/p/9142124.html defaultdict 带默认值的字典 https://www.cnblogs.com/duyang/p/5065418.html fcntl 操作文件描述符 https://blog.csdn.net/lucyxu107/article/details/82837282 signal 信号处理 https://www.cnblogs.com/madsnotes/articles/5688681.html threading 线程库,构建并发应用 https://www.cnblogs.com/chengd/articles/7770898.html https://www.cnblogs.com/tkqasn/p/5700281.html psutil 系统性能参数 https://www.cnblogs.com/jason007/p/6748057.html

命令行,读取配置:

optparse 处理命令行选项 https://blog.csdn.net/m0_37717595/article/details/80603884 glob 文件路径查找 https://blog.csdn.net/u010472607/article/details/76857493/ yaml 访问yaml数据文件 https://blog.csdn.net/yongwan5637/article/details/80338422 ConfigParser 读取配置文件 https://blog.csdn.net/shortwall/article/details/78615368 xml XML库 https://www.cnblogs.com/AlwinXu/p/5483177.html pickle 序列化 https://www.cnblogs.com/lincappu/p/8296078.html json 序列化 https://www.cnblogs.com/tjuyuan/p/6795860.html

网络请求相关: libxml2 XML解析器 urlparse URL解析 urllib 访问URL资源 urllib2 访问URL资源 cookielib http客户端的cookie处理 requests 神器,用于发送网络请求,常用于接口测试 httplib http请求客户端 BeautifulSoup 从HTML或XML文件中提取数据的Python库

网络数据包:

scapy 网络嗅探工具包 dpkt 网络数据报解析 pcapy 解析pcap文件 socket TCP,UDP数据协议 struct 将python基本类型值与用python字符串格式表示的C struct类型间的转化,主要用于网络数据传输

测试系统构建:

flask 构建web应用,构建HTTP接口 tornado 构建web应用,构建HTTP接口 BaseHTTPServer 简单HTTP服务器 appium App自动化测试工具 selenium 大名鼎鼎的web自动化测试工具 behave BDD自动化测试框(通用自动化测试框架) unittest Python内置自动化测试框架(通用自动化测试框架) logging 日志库 traceback 调试信息 nanotime 纳秒级的时间 time 时间访问和转换函数 datetime 日期和时间 jenkinsapi 访问jenkins

分布式系统构建:

xmlrpclib 基于xml的远程RPC库 fabric 利用ssh高效部署和管理系统的工具,用于远程执行命令和部署文件paramiko 遵循SSH2协议,支持以加密和认证的方式,进行远程服务器的连接。用于远程执行命令和部署文件

大数据和数据库相关:

avro avro是一个数据序列化系统 etcd etcd访问库 pyspark spark库 hdfs hdfs库 pyhive hive库 redis 访问redis数据库 rediscluster 访问redis集群 pymongo 访问mongodb kafka 访问kafka pykafka 访问kafka sqlalchemy ORM库 MySQLdb 访问MySQL数据库

结果展示:

smtplib 负责发送邮件 email 负责构造邮件 numpy 数据处理 math 顾名思义 matplotlib 数据绘图包 pylab 绘制二维,三维数据 pychart 制作图表 lambda函数 可以接收任意多个参数 (包括可选参数) 并且返回单个表达式的值 https://www.cnblogs.com/kaishirenshi/p/8611358.html

你必须知道的10个Python第三库 BeautifulSoup   Beautiful Soup是一个可以从HTML,XML进行提取文件的Python库,日常我们使用爬虫进行数据抓取回来之后,往往需要进行数据解析。   使用它能让你开心愉快提取里面的爬回来的数据。   2. Arrow   用过datetime标准库的同学都知道,这个库每次需要import各种时间模块格式化,非常不友好,arrow直接接受各种时间(datetime,date,timestamp)类型转化为Arrow类型,然后进行各种格式化操作,非常方便。很是人性化,简直是居家旅行必备良药   3. Requests   题图就是requests的logo,这个库使用量之大,Python开发者应该是无人不知无人不晓。   requests是日常网络库使用最频繁的一个,不管是用于正式还是测试,它完全满足与日常网络的需求,非常人性化,简单好用。   requests目前在github有36+的star,除了功能强大,源码也是写的非常赞。五星推荐   4. Fabric   对于少量服务器,日常自动化发布配置,与服务器交互只需要配置一个fabfile.py的自动化脚本就行,非常简单方便。如果需要更多配置运维可以使用ansible,这个后期我单独和大家讨论。   5. Statsd   作为一枚开发同学,服务器API性能,耗时监控是一个很重要的数据,我们需要收集起来进行实时分析。   statsd是一个网络守护进程,通过Python客户端,我们可以统计监听API数据发送到服务端,比如ES,influxdb,promethues,并且用Grafana进行数据展示。   6. Gevent   gevent是基于协程的Python网络库,通过gevent使的协程的使用变得非常简单,遇到阻塞你不需要显示切换,程序会进行自动调度。使用非常广泛,在部署flask,celery往往会加入gevent提高服务性能。   7. Supervisor   之前文章提到过supervisor可以大大方便我们进行进程管理,开始,重启,停止,查看日志等等。   8. Voluptuous   这个库估计很多同学不知道,主要是日常写API的时候进行数据校验,当前端API传递参数过多的时候,这个库,可以通过装饰器的方式提前进行校验数据逻辑,大大降低了你在代码逻辑校验数据的耦合,强烈推荐后端的同学使用。   9. Raven   单纯这个名字大家可能不那么敏感,但是sentry大家肯定就知道了。   这个库就是sentry服务的SDK包。对于日常邮件报警我们通过安装了这个包配合sentry后端服务,就能够进行各种邮件报警的错误收集。   另外通过设置日志等级,我们能轻松通过logger进行触发报警。   这个包适合多个语言,不仅仅是Python语言之下。   10. uWSGI   uWSGI这个是一个web服务器,它实现了WSGI协议、uwsgi、http等协议,我们在Python日常部署文章提到过,主要通过Nginx + uWSGI 拉动我们应用服务(比如Django)提高服务吞吐量。


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3