目 录
第 1章 Selenium 1
1.1 准备软件 1
1.2 Selenium简介 1
1.2.1 主要功能 2
1.2.2 各版本和系统之间的关联 2
1.3 Selenium IDE的使用 3
1.3.1 Selenium IDE的安装 3
1.3.2 Selenium IDE 4
1.3.3 Selenium IDE入门实例 7
1.4 Selenium WebDriver 11
1.4.1 Selenium WebDriver简介 11
1.4.2 Selenium WebDriver的安装和配置 12
1.4.3 Selenium WebDriver入门实例 16
1.4.4 javadoc简介 19
1.4.5 WebDriver元素的定位 20
1.4.6 get()方法的实例 22
1.4.7 关于浏览器的操作方法 23
1.4.8 弹出窗口的切换方法 24
1.4.9 多个元素的选择 27
1.4.10 单个元素的选择 28
1.5 JUnit框架与WebDriver 30
1.5.1 JUnit 4 30
1.5.2 在Eclipse中JUnit 4的
使用 31
1.5.3 通过模拟鼠标移动显示悬浮的下拉窗体的实例 37
1.5.4 模拟鼠标单击事件 39
1.5.5 使用javadoc进行查找 40
第 2章 JMeter 44
2.1 性能测试基础 44
2.1.1 性能的定义 44
2.1.2 性能测试的概念 45
2.1.3 性能测试的分类 45
2.1.4 性能指标 48
2.1.5 性能测试技术要求 49
2.2 JMeter概述 49
2.3 搭建JMeter环境 51
2.4 JMeter目录结构 53
2.5 JMeter的测试计划及常用元件 53
2.5.1 测试计划 53
2.5.2 线程(用户) 54
2.5.3 测试片段 55
2.5.4 控制器 56
2.5.5 配置元件 57
2.5.6 定时器 58
2.5.7 前置处理器 58
2.5.8 后置处理器 59
2.5.9 断言 59
2.5.10 监听器 60
2.6 脚本录制方法 61
2.6.1 使用Badboy录制 61
2.6.2 使用JMeter内置的代理服务器录制 64
2.7 JMeter中元件的作用域与执行顺序 70
2.8 JMeter的参数化设置 72
2.8.1 通过添加前置处理器参数化 72
2.8.2 通过CSV Data Set Config参数化 77
2.8.3 借助函数助手随机参数化 79
2.9 设置JMeter集合点 80
2.10 设置JMeter检查点 82
2.10.1 添加内容检查断言 82
2.10.2 添加断言持续时间 84
2.10.3 设置断言结果大小 86
2.11 设置JMeter关联 87
2.12 JMeter常用监听器 92
2.12.1 “图形结果”监听器 92
2.12.2 “查看结果树”监听器 93
2.12.3 “聚合报告”监听器 94
2.12.4 Summary Report监听器 94
2.13 在非GUI模式下运行JMeter 95
2.14 实例1:使用JMeter创建Web测试计划 97
2.15 实例2:使用JMeter创建Web Service测试计划 101
2.16 实例3:使用JMeter创建JDBC 测试计划 105
第3章 单元测试 111
3.1 面向对象编程 111
3.1.1 什么是面向对象 111
3.1.2 类与实例 113
3.1.3 继承 115
3.1.4 接口 116
3.1.5 多态 118
3.2 准备被测程序 120
3.2.1 被测程序的功能 121
3.2.2 程序概要设计 121
3.2.3 程序代码实现 122
3.2.4 开发测试代码 127
3.3 JUnit测试框架 129
3.3.1 在Eclipse中配置JUnit 130
3.3.2 使用JUnit进行测试 131
3.3.3 JUnit断言机制 133
3.3.4 JUnit各类注解 135
3.3.5 JUnit假设机制 137
3.3.6 JUnit参数化 138
3.3.7 JUnit测试集 140
3.4 JMock测试框架 141
3.4.1 驱动和桩 141
3.4.2 Mock对象 142
3.4.3 JMock的特性 145
3.4.4 使用JMock模拟isNumber方法 145
3.4.5 使用JMock模拟类 147
第4章 Appium开发 150
4.1 搭建Appium环境 150
4.1.1 环境准备 150
4.1.2 安装JDK 150
4.1.3 下载与安装
Android SDK 153
4.1.4 添加Android SDK环境变量 155
4.1.5 连接夜神模拟器 156
4.1.6 安装Node.js 157
4.1.7 安装Python 158
4.1.8 安装Appium-desktop 159
4.1.9 安装.NET Framework 160
4.1.10 检查Appium环境设置 161
4.1.11 安装Appium-Python-Client 161
4.1.12 第 一个脚本 162
4.1.13 Desired Capabilities 168
4.2 定位元素 172
4.2.1 使用Appium Inspector定位元素 172
4.2.2 使用UI Automator Viewer定位元素 173
4.2.3 使用id定位元素 176
4.2.4 使用Appium Inspector中的xpath定位元素 176
4.2.5 使用id和text定位元素 177
4.2.6 使用List定位元素 178
4.3 Appium常用操作 181
4.3.1 等待元素出现 181
4.3.2 toast元素的定位 181
4.3.3 Appium屏幕截图 182
4.3.4 WebView定位 183
4.3.5 swipe方法 186
4.3.6 手势定位 189
4.4 yaml 191
4.4.1 yaml支持的数据类型 191
4.4.2 读取yaml数据 192
4.4.3 配置yaml 192
第5章 搭建Appium测试框架 196
5.1 准备软件 196
5.2 框架整体说明 196
5.2.1 Appium框架的组成 196
5.2.2 框架实现说明 197
5.3 Logging模块 197
5.3.1 日志的级别 197
5.3.2 Logging模块的组成 197
5.3.3 使用Logging模块过滤输出日志 198
5.4 PageObject设计模式 198
5.4.1 PageObject设计模式存在的问题及解决方案 198
5.4.2 基于PageObject设计模式封装架构 198
5.5 实现框架 199
5.5.1 建立项目文件夹 199
5.5.2 在base_view 下封装常用方法 199
5.5.3 封装常用元素和业务逻辑 200
5.5.4 对测试数据进行封装 203
5.5.5 对测试用例进行封装(以登录功能为例) 203
5.5.6 批量生成报告 204
5.5.7 以批处理方式执行测试 205
5.5.8 持续集成(以Jenkins为例) 205