展开全部

主编推荐语

本书系统介绍自动化测试技术,提升测试人员技能,涵盖多端实战案例,成为Robot Framework用户宝典。

内容简介

本书以计算机软件自动化测试技术为主线,循序渐进地介绍了自动化测试所涉及的知识体系,通过不同端的实战项目,综合运用了所介绍的技术,旨在提高测试人员的综合技术能力并扩展知识体系。全书从对测试行业现状及未来几年趋势的分析开始,呼吁大家在时不我待的当今社会中,找准定位并建立自身的职场核心竞争力。然后围绕自动化测试技术应用结合多端(后端、Web端、Android端、iOS端、H5端、小程序端)实例来引导读者快速上手。本书涵盖了绝大部分自动化测试知识,不但内容充实、逻辑严密,且图文并茂、语言生动。对Robot Framework使用者来说,本书更是一部人人必备的工具宝典。

目录

  • 封面
  • 前折页
  • 书名页
  • 内容简介
  • 版权页
  • 推荐序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 二次开发——命令行实时显示日志
  • 封底
展开全部

评分及书评

尚无评分
目前还没人评分

出版方

电子工业出版社

电子工业出版社成立于1982年10月,是国务院独资、工信部直属的中央级科技与教育出版社,是专业的信息技术知识集成和服务提供商。经过三十多年的建设与发展,已成为一家以科技和教育出版、期刊、网络、行业支撑服务、数字出版、软件研发、软科学研究、职业培训和教育为核心业务的现代知识服务集团。出版物内容涵盖了电子信息技术的各个分支及工业技术、经济管理、科普与少儿、社科人文等领域,综合出版能力位居全国出版行业前列。