自动化测试实战教程(基于Python语言)(微课版)
定 价:53 元
丛书名:
抱歉,电子工业出版社不参与样书赠送活动!
- 作者:彭玲
- 出版时间:2025/5/1
- ISBN:9787121501449
- 出 版 社:电子工业出版社
适用读者:本书结构清晰,内容由浅入深,适合作为高职院校软件技术及计算机相关专业培养软件测试技能型人才的教材,也适用于软件测试工程师和自动化测试爱好者自学。
- 中图法分类:TP311.561
- 页码:244
- 纸张:
- 版次:01
- 开本:16开
- 字数:401(单位:千字)
本书是一本面向软件测试工程师和自动化测试初学者的实用教材。本书以Python语言为基础,全面介绍了自动化测试的基础知识、测试流程、测试工具、测试用例设计和自动化脚本编写。本书不仅涵盖了自动化测试环境的搭建、Python编程基础,还深入探讨了Selenium、unittest、pytest和Appium等自动化测试工具和框架的应用。通过详细的理论讲解和丰富的实战案例,本书旨在帮助读者掌握自动化测试的核心技能,提高测试效率和质量。本书与时俱进,自动化脚本采用Selenium 4,强调了Page Object设计模式的应用,以及在移动App自动化测试中Appium和uiautomator2的使用,使读者能够快速适应当前自动化测试的发展趋势。
彭玲,1982年6月生,毕业于武汉大学计算机应用技术专业,硕士研究生,讲师。2017—2023年期间,在国内学术期刊上发表计算机科学类独撰论文9篇,申请软件著作权3项,参与省级科研课题1项,市级科研课题2项。
第一篇 自动化测试基础知识
第1章 自动化测试概述 2
1.1 自动化测试概述 3
1.1.1 自动化测试的背景 3
1.1.2 自动化测试的定义 3
1.1.3 自动化测试的分类 3
1.1.4 自动化测试的工作原理 4
1.1.5 自动化测试的适用范围 4
1.1.6 自动化测试的趋势与发展 4
1.2 自动化测试的优势与挑战 5
1.2.1 自动化测试的优势 5
1.2.2 自动化测试的挑战 5
1.3 测试策略与生命周期 6
1.3.1 测试策略 6
1.3.2 软件测试生命周期 7
1.4 自动化测试工具的选择与比较 7
1.4.1 Selenium简介 8
1.4.2 Appium简介 9
1.4.3 TestComplete简介 10
第2章 Web自动化测试环境搭建 12
2.1 安装Python 13
2.2 安装PyCharm 14
2.3 安装Selenium 17
2.4 安装浏览器驱动 18
2.5 编写Selenium自动化测试脚本 21
第3章 Python编程基础 23
3.1 基础语法 24
3.1.1 打印 25
3.1.2 编码规范 25
3.1.3 引号与注释 26
3.1.4 缩进 27
3.2 变量与数据类型 28
3.2.1 整型、浮点型、字符串 29
3.2.2 列表、元组、字典、集合 31
3.2.3 变量作用域和命名规则 32
3.3 控制结构 34
3.3.1 条件语句 35
3.3.2 循环结构 36
3.3.3 break、continue和pass语句 37
3.4 函数 39
3.4.1 函数定义与调用 40
3.4.2 参数传递机制 42
3.4.3 返回值与递归函数 43
3.5 面向对象编程 44
3.5.1 类与对象 45
3.5.2 构造方法与析构方法 46
3.5.3 属性与方法 47
3.5.4 继承与多态 49
3.6 异常处理与调试技术 51
3.6.1 异常类型与捕获 53
3.6.2 抛出异常与自定义异常 53
3.7 文件操作 54
3.7.1 打开与关闭文件 55
3.7.2 读写文件的基本操作 56
3.7.3 文件路径管理 56
3.8 推导式 58
3.8.1 列表推导式 59
3.8.2 字典推导式 59
3.8.3 集合推导式 60
3.9 常用模块与第三方库 60
3.9.1 导入模块 60
3.9.2 创建模块与包 60
3.9.3 sys模块与模块搜索路径 61
3.9.4 常用的第三方库 61
第二篇 Web自动化测试
第4章 Selenium基础方法 66
4.1 WebDriver简介 66
4.1.1 WebDriver的特点 66
4.1.2 WebDriver API常用方法概览 67
4.2 浏览器操作 68
4.2.1 打开、关闭浏览器 68
4.2.2 网页的前进和后退 69
4.2.3 刷新浏览器页面 70
4.2.4 浏览器窗口最大化、最小化和全屏 70
4.2.5 获取、设置浏览器窗口的大小 71
4.2.6 获取、设置浏览器窗口的位置 71
4.2.7 浏览器操作方法和属性总结 72
4.3 Selenium元素定位 73
4.3.1 页面元素定位方法概览 75
4.3.2 使用id定位元素 77
4.3.3 使用name定位元素 78
4.3.4 使用class name定位元素 78
4.3.5 使用tag name定位元素 78
4.3.6 使用全链接的文字定位元素 79
4.3.7 使用部分链接文字定位元素 79
4.3.8 使用XPath定位元素 79
4.3.9 使用CSS定位元素 80
4.3.10 使用find_element()方法定位单个元素 82
4.3.11 使用find_elements()方法定位一组元素 83
4.3.12 Selenium 4的相对定位器 83
4.4 鼠标操作 84
4.4.1 内置鼠标操作包 85
4.4.2 鼠标悬停操作 85
4.4.3 鼠标拖曳操作 86
4.4.4 其他鼠标操作 87
4.5 键盘操作 87
4.5.1 模拟键盘进行文字输入 87
4.5.2 键盘常用组合键操作 88
4.6 对象操作 89
4.6.1 单击对象 89
4.6.2 输入内容 89
4.6.3 清空内容 89
4.6.4 提交表单 89
4.6.5 获取文本内容 90
4.6.6 获取对象属性值 90
4.6.7 对象显示状态 90
4.6.8 对象编辑状态 90
4.6.9 对象选择状态 90
4.7 获取页面及其元素的相关信息 91
4.7.1 获取页面的title、文本和属性 91
4.7.2 获取当前页面的URL 92
4.7.3 获取页面的源码 92
4.7.4 判断页面元素是否可见 92
4.7.5 判断页面元素是否可用 92
4.7.6 判断元素的选中状态 93
第5章 常见控件操作 94
5.1 复选框 95
5.2 下拉框 95
5.3 警告框 96
5.4 非JavaScript弹窗 97
5.5 表格 97
5.6 日期时间控件 98
5.7 文件下载 99
5.8 文件上传 100
5.9 多窗口切换操作 101
5.10 多表单切换操作 101
第6章 Selenium高级应用 104
6.1 复杂控件操作 104
6.1.1 滑动滑块操作概述 105
6.1.2 操作Ajax选项 105
6.1.3 操作富文本编辑器 106
6.2 WebDriver的特殊操作 107
6.2.1 元素class值包含空格 108
6.2.2 attribute、property和text的区别 108
6.2.3 定位动态id 109
6.2.4 截图功能 110
6.3 浏览器定制启动参数 110
6.4 影响元素加载的外部因素 111
6.5 设置元素等待 112
6.5.1 显式等待 112
6.5.2 隐式等待 113
6.6 JavaScript的应用 114
第7章 unittest单元测试框架 116
7.1 unittest框架基本结构 117
7.1.1 unittest框架简介 117
7.1.2 setUp()与tearDown()方法 118
7.1.3 跳过测试和条件执行 120
7.2 执行测试用例的方法 121
7.2.1 运行命令行工具 122
7.2.2 在Pycharm中运行脚本 123
7.2.3 分组测试 126
7.3 测试用例的执行顺序 130
7.4 编写测试断言 131
7.5 自动生成HTML测试报告 133
7.6 数据驱动 136
7.6.1 数据驱动的概念 136
7.6.2 DDT支持数据类型 136
第8章 pytest单元测试框架 143
8.1 pytest框架基本结构 144
8.1.1 pytest框架 144
8.1.2 setup()与teardown() 146
8.2 pytest的基本使用 149
8.2.1 pytest固件 149
8.2.2 pytest断言 153
8.2.3 pytest运行方式 155
8.2.4 测试用例的执行顺序 160
8.3 pytest参数化 160
8.3.1 数据驱动之parameters 160
8.3.2 数据驱动之fixture()函数 165
8.4 pytest测试报告 169
8.4.1 pytest-html测试报告 169
第9章 Page Object设计模式 173
9.1 认识Page Object设计模式 174
9.2 实现Page Object设计模式 174
9.2.1 使用Page Object设计模式的简单实例 174
9.2.2 改进Page Object 177
第10章 认识App自动化测试工具Appium 185
10.1 Appium简介 186
10.1.1 Appium的工作原理 187
10.1.2 Appium环境搭建 189
10.2 Desired Capabilities解析 194
10.3 控件定位 196
10.3.1 App控件的定位之id定位 196
10.3.2 app控件的定位之ClassName定位 196
10.3.3 App控件的定位之XPath定位 197
10.3.4 App控件的定位之Accessibility id定位 198
10.3.5 App控件的定位之Android uiautomator定位 198
10.3.6 uiautomatorviewer、inspect定位 199
10.4 Appium的常用API 199
10.4.1 上下文操作 200
10.4.2 键盘操作 201
10.4.3 触摸操作 201
10.4.4 移动端测试的特有操作 203
10.4.5 其他常用操作 204
10.5 常用的adb命令 206
10.6 Appium Desktop的操作方法 208
10.6.1 测试准备工作 208
10.6.2 控件定位 208
10.6.3 脚本运行与调试 210
第11章 认识App自动化测试工具uiautomator 2 212
11.1 uiautomator 2 环境搭建 213
11.1.1 什么是uiautomator 2 213
11.1.2 uiautomator 2的环境搭建 213
11.2 常见定位方式 216
11.3 常见API的使用方法 218
11.4 编译运行方式 220
第12章 自动化测试项目实战 222
12.1 web自动化测试实战项目 222
12.1.1 测试项目需求分析 222
12.1.2 测试环境准备 224
12.1.3 设计测试用例 224
12.1.4 自动化测试脚本设计 225
12.2 移动App自动化测试实战项目 229
12.2.1 测试项目需求分析 229
12.2.2 测试环境准备 230
12.2.3 自动化测试脚本设计 230