【原文链接】新书上市----Pytest企业级应用实战 新书上市
《Pytest企业级应用实战》
京东购书链接
当当购书链接
天猫购书链接
作者简介
本书作者本硕毕业于哈尔滨工业大学,曾先后就职于中兴通讯和华为,现任职于中科南京软件技术研究院,其自工作以来一直致力于测试开发研究工作,先后负责过多个项目的自动化测试和CICD流水线的设计开发工作,在DevOps领域有着丰富的实战经验。
内容简介
Pytest是非常广泛的基于Python语言的应用自动化测试框架,《Pytest企业级应用实战》首先从实战的角度层层递进地讲解了Pytest框架使用方法,然后从企业级应用实战的角度讲解了如何利用Pytest自动化测试企业测试框架,并结合Jenkins以及Allure工具,演示在企业中是如何应用的。
第1章介绍运行环境以及Pytest快速体验,第2章介绍Pytest测试脚本的组成结构和测试脚本默认的命名规则以及脚本执行,第3章介绍断言的使用方法,第4章介绍了标签的使用方法,第5章详细介绍了自动化脚本各种常用的执行策略,第6~8章介绍了fixture的基础和高级应用以及常见的fixture的使用方法,第9章介绍了参数化以及数据驱动的使用方法,第10章介绍了告警,第11章介绍了Pytest中丰富的日志和打印功能,第12章介绍了Allure测试报告,第13章从设计角度介绍如何设计封装自动化测试框架,以及Pytest、Allure与Jenkins的集成,第14章介绍了常用的第三方插件,第15章解读了Pytest的核心即Pluggy的源码分析。
《Pytest企业级应用实战》既可以作为自动化测试人员、测试开发人员的工具书,也可以作为Pytest技术相关培训教材。
目录
第1章 Pytest概述
1.1 Pytest简介
1.1.1 Pytest的特点
1.1.2 Pytest发展历程
1.1.3 为什么要选用Pytest
1.2 开发环境的安装
1.2.1 Python安装
1.2.2 同时安装多个Python版本
1.2.3 彻底卸载Python
1.2.4 Pycharm的下载安装
1.3 虚拟环境管理工具Pipenv的应用
1.3.1 安装Pipenv
1.3.2 Pipenv工具的使用方法
1.3.3 配置Python解释器
1.4 Pytest快速体验
1.4.1 Pytest安装与升级
1.4.2 创建并执行第一个测试脚本
1.4.3 Pytest命令的默认行为
1.4.4 对产生的异常进行断言
1.4.5 在类中编写测试脚本
1.4.6 测试脚本请求,创建一个临时目录
第2章 Pytest脚本规则、组成与运行
2.1 Pytest脚本的规则
2.1.1 测试脚本文件命名规则
2.1.2 测试函数的测试类命名规则
2.1.3测试脚本目录的约束条件
2.1.4 自定义测试文件名、测试类、测试函数命名规则
2.2 Pytest脚本的组成
2.2.1 自动化脚本组成简介
2.2.2 测试类中各个层级的setup和teardown
2.2.3 测试文件中各个层级的setup和teardown
2.2.4 测试文件中测试函数和类中测试方法混合时各个层级的setup与teardown
2.2.5 各个层级的setup和teardown在自动化实践中的应用
2.3 Pytest脚本的运行
2.3.1 指定目录或文件
2.3.2 指定测试函数或测试方法
2.3.3 通过------k参数对文件类名及函数名进行模糊匹配和挑选
2.3.4 通过------ignore参数挑选用例,忽略执行
2.3.5 通过------ignore-glob参数支持正则挑选用例忽略
2.3.6 通过------deselect参数挑选用例不执行,并显示未执行数量
2.3.7 通过重复指定文件路径,实现用例重复执行
2.3.8 通过------collect-only参数不执行脚本而统计脚本总数
2.3.9 通过Pytest.ini设置用例默认的搜索目录
2.3.10 在IDE中通过右键执行当前文件用例
2.4 Pytest脚本的加载原理
2.4.1 prepend模式
2.4.2 append模式
2.4.3 prepend和append模式存在的问题
2.4.4 importlib模式
第3章 Assert断言
3.1 使用Assert断言
3.1.1 Python中为False的数值断言均失败
3.1.2 Python逻辑表达式为False的断言均失败
3.2 自定义断言报错信息
3.3 对捕获的异常进行断言
3.3.1 对异常类型进行断言:
3.3.2 对捕获的异常信息进行断言
3.3.3 同时对捕获的异常类型和异常信息进行断言
3.3.4 对一个函数可能产生的异常进行断言
3.4 重写断言Assert语句的报错信息
3.4.1 默认的报错信息
3.4.2 重写判断是否相等的断言报错信息
3.4.3 重写常见的判断逻辑报错信息
......
第4章 mark标签的用法
第5章 Pytest测试用例的执行策略
第6章 fixture的基础应用
第7章 fixture的高级应用
第8章 常见内置fixture的应用
第9章 parameterize参数化及数据驱动
第10章 告警
第11章 日志和控制台输出管理
第12章 Allure测试报告
第13章 与jenkins持续集成
第14章 其他常用的用例插件
第15章 Pytest核心即Pluggy源码解读
序言
目前,软件自动化测试在整个IT行业或者说在软件测试领域正占据越来越重要的位置,当前整个IT行业都在提倡降本增效,而自动化测试则是降本增效的一个非常重要的手段。此外,从个人成长角度来看,测试开发将是未来测试人员的职业发展趋势,而自动化测试是测试开发最容易入手的方向。那么想要做好自动化测试,至少需要对一种自动化测试框架非常熟悉,在众多自动化测试框架中,Pytest可以说是独领风骚。本书从实战的角度,详细介绍Pytest自动化测试框架的使用方法,同时融入了一些在企业中的实战应用经验。
本书共分15章,其中第1章主要内容为快速体验Pytest,第2~11章让读者循序渐进地了解Pytest,第12~14章则从设计自动化测试框架的角度介绍Pytest,第15章从源码的角度介绍了Pytest自动化测试框架的核心原理。
为了更好地满足技术类读者的需求,本书不过多地介绍理论,而是采用实例演示的方式,与读者一同学习和总结Pytest的用法,进而能让读者达到更好的学习效果。此外,本书还可以作为查询工具书,书中各章节标题采用解决实际问题类型的方式来命名,以便读者可以迅速定位到自己喜欢的或需要的章节进行阅读。
本书的特点如下:
(1)以实战为主,尽量减少过多文字理论层面的分析,展示实战代码,即从实战中总结出Pytest的使用方法,通过引入实际问题激发读者深入分析并解决问题的兴趣。
(2)章节安排上循序渐进,先让读者快速体验Pytest,然后逐渐介绍Pytest各个方面的特性以及使用方法,接下来介绍在企业级实战中如何将Pytest与其他工具结合,从而设计出自动化测试团队真正需要的实际可执行、可落地的自动化测试框架,最后又详细解读Pytest最核心的源码,进而满足了一些进阶学习读者的需求。
(3)本书在介绍Pytest各个方面特性和使用方法的内容中,既有基础内容的讲解,也有一些进阶内容,让读者既能迅速地掌握Pytest的基础内容,同时也能很快地体会学习Pytest带来的成就感。
(4)设置大量的代码示例,让读者通过实战来总结和研究Pytest的用法,这也是学习技术最佳的途径。