如何学好Python自动化,每个进阶的测试人都应该看看

160 阅读5分钟

随着互联网的发展,自动化测试所面临的挑战也随之越来越大。当项目要频繁做回归测试时,手动测试方式已经无法应对,自动化测试成为解决问题的关键。

Python凭借其灵活性,在自动化测试方面已经被广泛使用,能够大大提高测试效率。那么,软件测试自动化到底需要学习哪些知识呢?

阶段一:掌握Python的基础语法

image.png

阶段二:掌握Python自动化测试常用库 众所周知,Python有非常丰富的第三方库,这也是Python代码简单优雅的原因之一,那么,软件自动化测试常用的库有哪些?

image.png

1.基本库:

sys 程序和Python解析器的交互

os 启动新进程;操作文件和目录

re 正则表达式,字符串匹配

string 基本字符串操作

inspect 提供自省和反射功能

importlib 支持动态导入

bitstring二进制数据处理

zipfile 压缩解压文件

tarfile 压缩解压文件

random 随机数,概率

命令行,读取配置: optparse 处理命令行选项

glob 文件路径查找

yaml 访问yaml数据文件

ConfigParser 读取配置文件

xml XML库

pickle 序列化

json 序列化

网络请求相关: libxml2 XML解析器

urlparse URL解析

urllib 访问URL资源

urllib2 访问URL资源

cookielib http客户端的cookie处理

requests 神器,用于发送网络请求,常用于接口测试

httplib http请求客户端

BeautifulSoup 从HTML或XML文件中提取数据的Python库

大数据和数据库相关: avro avro是一个数据序列化系统

etcd etcd访问库

pyspark spark库

hdfs hdfs库

pyhive hive库

redis 访问redis数据库

rediscluster 访问redis集群

pymongo 访问mongodb

kafka 访问kafka

pykafka 访问kafka

sqlalchemy ORM库

MySQLdb 访问MySQL数据库

阶段三:自动化测试常用框架

image.png unittest:比较基础,二次开发方便,适合高手使用,是python自带的单元测试框架,可以用来作为我们自动化测试框架的用例组织执行框架unittest流程:写好TestCase,然后由TestLoader加载TestCase到TestSuite,然后由TextTestRunner来运行TestSuite,运行的结果保存在TextTestResult中,我们通过命令行或者unittest.main()执行时,main会调用TextTestRunner中的run来执行,或者我们可以直接通过TextTestRunner来执行用例。

pytest/nose:更加方便快捷,效率更高,适合小白及追求效率的公司,且pytest的信息更加详细如果你的项目比较小、复杂度比较低,Pytest 是最适合的自动化测试平台。非常多的 Python开发者都喜欢它,他们大部分用它来进行单元测试。它也具有 Robot Framework 所闻名的验收测试能力。

Pytest最好的特性之一是,它提供了测试用例的详细失败信息,使得开发者可以快速准确地改正问题。它兼容最新版本的 Python,还兼容unittest、doctest 和 nose,开箱即用。它还有包含更多功能的插件和多样化的现有测试技术和测试用例。事实上,有 300多个可用插件来自它的活跃社区。

该平台设计用于编写更简单错误率更小的代码。你可以将 Pytest 与诸如 Selenium 和Splinter 之类的图形用户界面一起使用,来使得测试工作更轻松。

RobotFramework:由于有界面及美观的报告,易用性更好,灵活性及可定制性略差 Robot Framework 是最流行的Python 自动化测试框架。

它是完全用 Python 开发的,对于验收测试非常有用。这个框架可以运行在 Java 和.NET环境。它还支持跨平台,例如 Windows、MacOS 和Linux。

这个产品是由世界上一些著名的测试人员创建的,拥有关键词驱动方案。它有如此多可用的工具和库,使得这个框架非常先进和健壮。它是一个开源框架,并且留有API扩展空间。表格式的测试数据语法和关键词驱动测试使得它在全球的测试人员中非常流行。它无疑是最易用的自动化测试框架,并且允许你进行并行测试。

下面是测试资料,对于做【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!

tp.png

最后:  可以通过在 点击蓝色字体后面 免费领取一份216页软件测试工程师面试宝典文档资料。以及相对应的视频学习教程免费分享!,其中包括了有基础知识、Linux必备、Shell、互联网程序原理、Mysql数据库、抓包工具专题、接口测试工具、测试进阶-Python编程、Web自动化测试、APP自动化测试、接口自动化测试、测试高级持续集成、测试架构开发测试框架、性能测试、安全测试等。

如果我的博客对你有帮助、如果你喜欢我的博客内容,请 “点赞” “评论” “收藏” 一键三连哦!

更多好文推荐:

那个准点下班的人,比我先升职了...

包装成1年工作经验的测试工程师,我给他的面试前的建议如下

面试官:工作三年,还来面初级测试?恐怕你的软件测试工程师的头衔要加双引号...

“入职一年,那个被高薪挖来的自动化软件测试被劝退了。”

4个月自学软件测试面进阿里!如何从功能测试转成自动化...我经历了什么