★ 十多年自动化软件测试一线实战摸爬滚快速成长经验分享 ★ 涵盖绝大部分自动化测试知识,内容充实、逻辑严密、语言生动 ★ 后端、Web端、Android端、iOS端、H5端、小程序端实战演练 ★ 快速掌握口自动化、Web UI自动化、移动端自动化等主流技术 ★ 实用性很强,是一本面向新时代测试人员不可多得的实战类好书 ★ 读者可知其然且知其所以然,同时掌握自动化测试思想和工具
售 价:¥
纸质售价:¥81.10购买纸书
温馨提示:数字商品不支持退换货,不提供源文件,不支持导出打印
为你推荐
前折页
书名页
内容简介
版权页
推荐序1
推荐序2
推荐序3
推荐序4
推荐序5
前 言
第1部分 入门篇
第1章 大话测试行业
1.1 测试行业现状分析
1.2 未来发展趋势
1.3 测试工程师的核心竞争力
1.4 测试知识体系
1.5 测试发展能力图谱及推荐书单
1.6 本章总结
第2章 认识自动化测试
2.1 为什么自动化测试是必要的
2.2 手工测试与自动化测试的区别
2.3 自动化测试常见误区
2.4 自动化测试的优劣分析
2.5 提倡分层自动化测试
2.6 什么项目适合做自动化测试
2.6.1 什么样的项目或团队适合做自动化测试
2.6.2 不适合做自动化测试的项目有什么特点
2.7 做好自动化测试需要具备哪些能力
2.8 自动化测试引入时机和适用场景
2.9 常用主流工具有哪些
2.10 自动化测试面临的挑战
2.11 本章总结
第2部分 基础学习篇
第3章 Robot Framework框架准备
3.1 Robot Framework 框架介绍
3.1.1 优势和亮点
3.1.2 不足
3.1.3 Robot Framework 生态系统
3.2 Windows 平台环境搭建
3.2.1 Python 的安装与配置
3.2.2 pip 的安装与升级
3.2.3 Robot Framework 框架的安装
3.2.4 wxPython 框架的安装
3.2.5 Robot Framework RIDE 的安装
3.3 Mac 平台环境搭建
3.3.1 Python 的安装与配置
3.3.2 pip 的安装
3.3.3 Robot Framework 框架的安装
3.3.4 Mac OS X 无法启动RIDE 的解决方案
3.4 Linux 平台环境搭建
3.4.1 Python 的安装与配置
3.4.2 pip 的安装与配置
3.4.3 Robot Framework 框架的安装
3.4.4 wxPython 框架的安装
3.5 Robot Framework RIDE 支持Python 3
3.5.1 Robot Framework RIDE 1.7.3 的新特性
3.5.2 Robot Framework RIDE 1.7.3 的安装与升级
3.6 本章总结
第4章 Python 测试编程
4.1 语法规范
4.1.1 代码编排
4.1.2 文档编排
4.1.3 空格的使用
4.1.4 注释及文档描述
4.1.5 命名规范
4.1.6 编码建议
4.2 Python 2 和Python 3 如何选择
4.2.1 为什么Python 2 和Python 3 都要学
4.2.2 Python 2 和Python 3 的主要特性区别
4.2.3 Python 2 和Python 3 同时兼容的技巧
4.3 快速入门
4.3.1 Python 变量和赋值
4.3.2 Python 字符串
4.3.3 Python 列表和元组
4.3.4 Python 字典
4.3.5 Python if 分支条件
4.3.6 Python while 循环
4.3.7 Python for 循环
4.3.8 Python range 内建函数
4.3.9 Python 列表解析
4.3.10 Python open 函数
4.3.11 Python 错误和异常
4.3.12 Python 函数
4.3.13 Python 类
4.3.14 Python 模块与包
4.3.15 Python 常用内置函数
4.4 Python 编程常用技巧
4.4.1 Python 拼接字符串的7 种方式
4.4.2 Python 列表推导、字典推导、集合推导
4.4.3 Python 三元操作符用来进行条件赋值
4.4.4 Python 同时迭代两个列表
4.4.5 Python 带索引的列表迭代
4.4.6 Python 迭代列表组合
4.4.7 Python 统计元素出现次数
4.4.8 Python 找出列表中出现次数最多的元素
4.4.9 Python 一键启用文件服务器
4.4.10 Python 快速拼接构造列表
4.4.11 Python 一行代码搜索字符串的多个前后缀
4.4.12 Python 实现真正的switch-case 语句
4.4.13 Python 实例方法、静态方法、类方法
4.4.14 Python 求集合并集、交集、差集
4.4.15 Python 去除列表重复元素的几种方法
第5章 Robot Framework功能的使用
5.1 RIDE 两种启动方式
5.2 RIDE 功能介绍
5.2.1 菜单栏
5.2.2 工具栏
5.2.3 案例区
5.2.4 工作区
5.2.5 常用快捷键
5.3 常用Robot Framework 编辑器工具
5.3.1 PyCharm
5.3.2 Sublime Text
5.3.3 其他工具
5.4 测试项目、测试套件和测试用例
5.4.1 测试项目
5.4.2 测试套件
5.4.3 测试用例
5.5 资源文件
5.5.1 内部资源文件
5.5.2 外部资源文件
5.6 常量和变量
5.6.1 变量与常量介绍
5.6.2 变量作用域
5.6.3 Robot Framework 内置变量
5.6.4 标量变量的定义和使用
5.6.5 列表变量的定义和使用
5.6.6 字典变量的定义和使用
5.6.7 变量知识补充
5.7 用户关键字
5.7.1 关键字Arguments
5.7.2 关键字Teardown
5.7.3 关键字Return
5.8 Edit 选项卡
5.8.1 测试项目Edit 选项卡
5.8.2 测试套件Edit 选项卡
5.8.3 测试用例Edit 选项卡
5.8.4 小结
5.9 Text Edit 选项卡
5.10 Run 选项卡
5.10.1 自动保存
5.10.2 失败暂停
5.10.3 Arguments 参数配置
5.10.4 Only run tests with these tags
5.10.5 Skip tests with these tags
5.10.6 查看测试报告和测试日志
5.11 Robot Framework 常用技巧
5.11.1 If 分支结构
5.11.2 For 循环结构
5.11.3 列表变量的用法和元素获取
5.11.4 变量使用方法补充
5.11.5 搜索关键字
5.11.6 测试用例执行六大技巧
5.11.7 测试标签技巧
5.11.8 Setup 和Teardown
5.11.9 Pybot 和Robot 命令
5.11.10 Jybot 模式安装与运行
第6章 Robot Framework常用函数库
6.1 内置库介绍
6.1.1 标准库
6.1.2 扩展库
6.2 Evaluate 万能关键字
6.3 类型转换
6.3.1 Convert To String:转换成字符串
6.3.2 Convert To Integer:转换成整数
6.3.3 Convert To Number:转换成符点数
6.3.4 Convert To Boolean:转换成布尔值
6.3.5 Encode String To Bytes:字符编码
6.4 变量操作
6.4.1 Log Variables:打印变量
6.4.2 Import Variables:导入变量
6.4.3 Set Variable:设置变量
6.4.4 Set Global Variable:设置全局变量
6.4.5 Set Suite Variable:设置测试套件变量
6.4.6 Set Test Variable:设置测试用例变量
6.4.7 Set Variable If:当条件满足时设置变量
6.4.8 Get Variables:获取所有变量
6.4.9 Get Variable Value:获取变量值
6.4.10 Get Environment Variables:获取所有环境变量
6.4.11 Get Environment Variable:获取环境变量值
6.4.12 Set Environment Variable:设置环境变量
6.5 关键字操作
6.5.1 Run Keyword:运行关键字
6.5.2 Run Keyword If:当条件满足时运行关键字
6.5.3 Run Keyword Unless:当条件不满足时运行关键字
6.5.4 Repeat Keyword:重复运行某关键字
6.5.5 Run Keywords:运行多个关键字
6.5.6 Run Keyword And Return:运行关键字并返回结果
6.5.7 Run Keyword And Return If:当条件满足时运行关键字并返回结果
6.5.8 Run Keyword And Continue On Failure:失败后仍运行指定关键字
6.5.9 Run Keyword And Ignore Error:运行关键字并忽略错误
6.5.10 Run Keyword If All Tests Passed:所有测试用例通过后运行关键字
6.5.11 Run Keyword If Any Tests Failed:任一测试用例失败后运行关键字
6.5.12 Run Keyword If Test Passed:测试用例通过后运行关键字
6.5.13 Run Keyword If Test Failed:测试用例失败后运行关键字
6.5.14 Run Keyword If Timeout Occurred:测试用例超时后运行关键字
6.6 条件与循环
6.6.1 Continue For Loop:直接继续下一次循环
6.6.2 Continue For Loop If:当条件满足时继续下一次循环
6.6.3 Exit For Loop:立即退出循环
6.6.4 Exit For Loop If:当条件满足时退出循环
6.7 断言操作
6.7.1 Should (Not)Be Empty:断言是否为空
6.7.2 Should (Not)Be Equal:断言是否相等
6.7.3 Should (Not)Be Equal As Strings:断言作为字符串是否相等
6.7.4 Should (Not)Be Equal As Integers:断言作为整数是否相等
6.7.5 Should (Not)Be True:断言是否为真
6.7.6 Should (Not)Contain:断言是否包含某元素
6.7.7 Should (Not)Contain Any:断言是否包含任一元素
6.7.8 Should Contain X Times:断言某元素是否被包含指定次数
6.7.9 Should (Not)Start With:断言是否以某某开头
6.7.10 Should (Not)End With:断言是否以某某结尾
6.7.11 Should (Not)Match Regexp:断言是否匹配正则表达式
6.7.12 Length Should Be:断言长度是否相等
6.7.13 Keyword Should Exist:断言关键字是否存在
6.7.14 List Should (Not)Contain Value:断言列表是否包含某值
6.7.15 Lists Should Be Equal:断言两个列表是否相等
6.7.16 List Should Not Contain Duplicates:断言列表不包含重复项
6.7.17 Dictionary Should Contain Item:断言字典是否包含某键值对
6.7.18 Dictionary Should (Not)Contain Key:断言字典是否包含某Key 值
6.7.19 Dictionary Should (Not)Contain Value:断言字典是否包含某Value 值
6.7.20 Dictionaries Should Be Equal:断言给定的字典是否相等
6.8 集合操作
6.8.1 Create List:创建列表
6.8.2 Log List:打印输出列表中的值
6.8.3 Append To List:添加元素到列表
6.8.4 Insert Into List:插入元素到列表
6.8.5 Copy List:复制列表
6.8.6 Get From List:从列表中取值
6.8.7 Get Index From List:获取列表值对应的索引位置
6.8.8 Reverse List:反转列表
6.8.9 Set List Value:设置列表值
6.8.10 Sort List:排序列表
6.8.11 Remove From List:移除列表中指定位置的元素
6.8.12 Remove Values From List:从列表中移除给定的所有值
6.8.13 Remove Duplicates:从列表中移除重复项
6.8.14 Create Dictionary:创建字典
6.8.15 Log Dictionary:打印字典
6.8.16 Set To Dictionary:添加元素到字典
6.8.17 Copy Dictionary:复制字典
6.8.18 Get Dictionary Items:获取字典中的所有元素
6.8.19 Get Dictionary Keys:获取字典中的所有Key 值
6.8.20 Get Dictionary Values:获取字典中的所有Value 值
6.8.21 Get From Dictionary:获取字典中的指定Key 值
6.8.22 Pop From Dictionary:删除并返回字典中的指定Key 值
6.8.23 Remove From Dictionary:删除字典中的指定Key 值
6.9 常用关键字
6.9.1 Log:打印输出
6.9.2 Log Many:打印各元素值
6.9.3 Log To Console:打印到控制台
6.9.4 Sleep:延时等待
6.9.5 Comment:添加注释
6.9.6 Call Method:调用方法
6.9.7 Get Count:获取数量
6.9.8 Get Length:获取长度
6.9.9 Get Time:获取时间
6.9.10 Pass Execution:标记测试用例执行成功
6.9.11 Pass Execution If:当条件满足时标记测试用例执行成功
6.9.12 Fail:标记当前测试用例失败
6.9.13 Fatal Error:停止执行所有测试用例
6.9.14 Import Library:导入测试库
第3部分 项目实战篇
第7章 基于HTTP接口的自动化测试
7.1 接口测试扫盲
7.1.1 接口的本质
7.1.2 接口有哪些类别
7.1.3 什么是接口测试
7.1.4 接口测试的重要性
7.1.5 接口测试的关注点
7.1.6 接口测试的介入时机
7.1.7 接口测试的根本目标
7.2 开展接口测试的基本流程
7.3 接口测试用例设计
7.3.1 三类对象抽象模型
7.3.2 接口测试三层模型
7.3.3 接口输入用例设计
7.3.4 接口逻辑用例设计
7.3.5 接口输出用例设计
7.3.6 其他部分用例设计
7.3.7 一个完整的例子
7.3.8 小结
7.4 环境依赖安装
7.4.1 所需第三方库列表
7.4.2 安装Requests 依赖库
7.4.3 安装RequestsLibrary 依赖库
7.4.4 安装HttpLibrary.HTTP 依赖库
7.5 接口测试设计规范
7.5.1 接口测试整体分层结构
7.5.2 接口测试功能划分原则
7.5.3 接口测试套件命名约定
7.5.4 接口测试用例命名与分类
7.6 接口测试项目实战:最佳实践
7.6.1 实战项目接口分析
7.6.2 实战项目框架设计
7.6.3 实战项目业务分层
7.6.4 实战项目模块划分
7.6.5 公共请求方法
7.6.6 业务资源文件
7.7 接口测试项目实战:用例设计
7.7.1 实战一:登录型接口功能测试设计
7.7.2 实战二:列表型接口功能测试设计
7.7.3 实战三:信息型接口功能测试设计
7.7.4 实战四:基于业务场景下的接口组合测试设计
7.8 接口测试项目实战:成果展示
7.9 Robot Framework 实战常用技巧
7.9.1 一套测试用例支持多个环境运行
7.9.2 测试用例标签分类策略
7.9.3 测试套件和测试用例Hook
7.9.4 动态构造测试数据
7.9.5 自定义Python 方法
7.10 Robot Framework 开发系统关键字
7.11 Robot Framework+GitLab 代码管理
7.12 Robot Framework+Jenkins 构建持续集成
7.12.1 Jenkins 环境搭建
7.12.2 Robot Framework Jenkins 插件安装
7.12.3 添加运行节点Slave
7.12.4 Robot Framework+Job 接口自动化测试配置
7.12.5 Robot Framework+Job 测试构建及结果查看
第8章 基于Selenium 的Web UI 自动化测试
8.1 Selenium 框架介绍
8.1.1 Selenium 是什么
8.1.2 Selenium 与Robot Framework 的关系
8.2 环境安装
8.2.1 安装依赖库
8.2.2 查看库版本
8.3 第一个示例
8.3.1 打开RIDE
8.3.2 创建项目
8.3.3 创建测试套件
8.3.4 创建测试用例
8.3.5 编写测试用例
8.3.6 运行及查看结果
8.4 常用关键字
8.4.1 浏览器操作
8.4.2 iFrame 操作
8.4.3 输入操作
8.4.4 单击元素操作
8.4.5 属性获取
8.4.6 元素等待操作
8.4.7 预期结果校验
8.4.8 Cookie 操作
8.4.9 其他常用关键字
8.4.10 小结
8.5 元素定位
8.5.1 常用定位工具
8.5.2 常用定位方法
8.6 多浏览器处理
8.6.1 Chrome 浏览器
8.6.2 Firefox 浏览器
8.6.3 Safari 浏览器
8.6.4 PhantomJS 浏览器
8.7 Robot Framework+Selenium Web UI自动化测试项目实战
8.7.1 实战项目背景说明
8.7.2 Web UI 项目分层设计
8.7.3 实战一:Web UI 登录类测试设计
8.7.4 实战二:Web UI 应用类测试设计
8.7.5 实战三:Web UI 列表类测试设计
8.7.6 小结
第9章 基于Appium 的移动端自动化测试
9.1 Appium 框架介绍
9.1.1 Appium 是什么
9.1.2 Appium 常见概念
9.1.3 Appium 工作原理
9.1.4 Appium 与Robot Framework 的关系
9.2 环境搭建
9.2.1 Android 自动化测试所需环境搭建
9.2.2 Appium 框架所需环境搭建
9.2.3 iOS 自动化测试所需环境搭建
9.3 Appium Desktop 使用介绍
9.3.1 Appium Desktop 的安装
9.3.2 Appium Desktop 的功能介绍
9.4 Robot Framework+ Appium 开展Android 自动化测试
9.4.1 需要了解的ADB 知识
9.4.2 获取Android 设备序列号
9.4.3 获取App 包名和Activity 名
9.4.4 第一个Appium Android 自动化测试示例
9.4.5 获取Android App 控件元素的方法
9.4.6 Android App 元素常用定位方式
9.4.7 Appium Library 常用关键字
9.4.8 Android 自动化测试实战:前期准备
9.4.9 Android 自动化测试实战:项目结构设计
9.4.10 Android 自动化测试实战:公共关键字设计
9.4.11 实战一:实现Android App 自动登录测试
9.4.12 实战二:测试Android App 同页面的多个同类型元素
9.4.13 实战三:获取并断言Android App Toast 提示信息
9.4.14 小结
9.5 Robot Framework+Appium 开展iOS 自动化测试
9.5.1 iOS 开发证书、描述文件与Bundle ID 的关系
9.5.2 iOS 产出物的几种格式
9.5.3 获取iOS 设备的UDID 和App Bundle ID
9.5.4 iOS 常用命令
9.5.5 iOS 模拟器的安装和使用
9.5.6 iOS 模拟器simctl 常用命令
9.5.7 Appium 安装配置WebDriverAgent
9.5.8 获取iOS App 控件元素的三种方法
9.5.9 iOS App 元素常用定位方式
9.5.10 第一个Appium iOS 模拟器自动化测试示例
9.5.11 第一个Appium iOS 真机自动化测试示例
9.5.12 Robot Framework + Appium 实现iOS 模拟器自动化测试
9.5.13 Robot Framework + Appium 实现iOS 真机自动化测试
9.5.14 小结
9.6 Appium+Python 开展H5 混合应用自动化测试
9.6.1 在混合应用中识别H5 页面的几种方法
9.6.2 混合应用元素定位整体思路
9.6.3 App WebView 调试模式的检查和开启
9.6.4 利用DevTools 远程调试WebView
9.6.5 一个Appium+Python H5 自动化测试示例
9.6.6 小结
9.7 Robot Framework+ Appium 开展小程序自动化测试
9.7.1 小程序和H5 的区别
9.7.2 一个Appium+Python 小程序自动化测试示例
9.7.3 Robot Framework+ Appium 实现小程序自动化测试
9.8 本章总结
第4部分 扩展篇
第10章 Robot Framework框架部分源码解析
10.1 Robot Framework 框架目录结构
10.1.1 Robot Framework 源码位置
10.1.2 Robot Framework 源码目录结构
10.2 Robot Framework 执行用例逻辑分析
10.3 Robot Framework 二次开发——命令行实时显示日志
买过这本书的人还买过
读了这本书的人还在读
同类图书排行榜