展开全部

主编推荐语

本书主要介绍如何基于Python使用Selenium、unittest、Pytest、GitLab、Jenkins等工具实现Web UI自动化测试,以帮助读者提升测试水平。

内容简介

本书第1章简要介绍自动化测试的相关概念和思路、Selenium的特点和发展历史、WebDriver的原理,以及Selenium IDE的简单应用。第2章和第3章介绍与Python相关的基础知识,为后续内容的讲解做准备。第4章~第15章详细介绍使用各种框架进行自动化测试的方法和实战案例,帮助读者进一步掌握自动化测试技能。第16章从实际情况出发,介绍提升自动化测试用例执行效率的几种常见方法,供读者在实际操作中参考。

目录

  • 版权信息
  • 内容提要
  • 前言
  • 第1章 自动化测试简介
  • 1.1 什么是自动化测试
  • 1.2 Selenium简介
  • 1.2.1 Selenium的特点
  • 1.2.2 Selenium发展历史
  • 1.2.3 WebDriver组件
  • 1.3 Selenium IDE
  • 1.3.1 Selenium Firefox IDE
  • 1.3.2 Katalon Recorder插件
  • 1.4 WebDriver脚本示例
  • 第2章 测试环境准备
  • 2.1 Windows操作系统测试环境搭建
  • 2.1.1 Python
  • 2.1.2 Selenium
  • 2.1.3 PyCharm
  • 2.2 macOS操作系统测试环境搭建
  • 2.3 开发者工具简介
  • 2.3.1 Chrome DevTools
  • 2.3.2 Firefox DevTools
  • 第3章 Python知识储备
  • 3.1 Python基本数据类型
  • 3.1.1 数值
  • 3.1.2 字符串
  • 3.1.3 列表
  • 3.1.4 元组
  • 3.1.5 字典
  • 3.1.6 集合
  • 3.2 顺序、分支、循环语句
  • 3.2.1 顺序语句
  • 3.2.2 分支语句
  • 3.2.3 循环语句
  • 3.3 Python函数、模块
  • 3.3.1 创建函数
  • 3.3.2 函数参数
  • 3.3.3 Python模块
  • 3.4 面向对象编程
  • 3.4.1 类和实例
  • 3.4.2 继承和多态
  • 3.5 Python中的os模块
  • 3.6 Python中的time模块
  • 3.7 文件读写
  • 3.7.1 Python中的open函数
  • 3.7.2 JSON文件
  • 3.7.3 YAML文件
  • 3.7.4 CSV文件
  • 第4章 前端知识储备
  • 4.1 HTML基础知识
  • 4.1.1 创建HTML文件
  • 4.1.2 HTML元素
  • 4.1.3 HTML元素属性
  • 4.1.4 复杂元素
  • 4.2 CSS相关知识
  • 4.2.1 CSS基础
  • 4.2.2 CSS选择器
  • 4.3 JavaScript相关知识
  • 4.3.1 JavaScript基础概念
  • 4.3.2 JavaScript HTML DOM
  • 4.4 XML相关知识
  • 4.4.1 XML简介
  • 4.4.2 XML树结构
  • 4.4.3 XPath
  • 第5章 Selenium基础方法
  • 5.1 Selenium常用方法
  • 5.1.1 打开、关闭浏览器
  • 5.1.2 访问某个网址
  • 5.1.3 网页的前进和后退
  • 5.1.4 刷新浏览器页面
  • 5.1.5 浏览器窗口最大化、最小化和全屏
  • 5.1.6 获取、设置浏览器窗口的大小
  • 5.1.7 获取、设置浏览器窗口的位置
  • 5.1.8 获取页面的title
  • 5.1.9 获取当前页面的URL地址
  • 5.1.10 获取页面的源码
  • 5.1.11 多窗口操作(Selenium 3)
  • 5.1.12 多窗口操作(Selenium 4)
  • 5.1.13 浏览器方法和属性总结
  • 5.2 Selenium元素定位方法
  • 5.2.1 页面元素定位方法概览
  • 5.2.2 使用id定位元素
  • 5.2.3 使用name定位元素
  • 5.2.4 使用class name定位元素
  • 5.2.5 使用tag name定位元素
  • 5.2.6 使用链接的全部文字定位元素
  • 5.2.7 使用部分链接文字定位元素
  • 5.2.8 使用XPath定位元素
  • 5.2.9 使用CSS定位元素
  • 5.2.10 使用find_element('locator', 'value')定位元素
  • 5.2.11 定位组元素
  • 5.2.12 XPath和CSS selector精讲
  • 5.2.13 Selenium 4的相对定位器
  • 5.2.14 元素定位“没有银弹”
  • 5.3 获取页面元素的相关信息
  • 5.3.1 获取元素的基本信息
  • 5.3.2 获取元素的属性信息
  • 5.3.3 获取元素的CSS属性值
  • 5.3.4 判断页面元素是否可见
  • 5.3.5 判断页面元素是否可用
  • 5.3.6 判断元素的选中状态
  • 5.4 鼠标操作实战
  • 5.4.1 鼠标单击操作
  • 5.4.2 内置鼠标操作包
  • 5.4.3 鼠标双击操作
  • 5.4.4 鼠标右击操作
  • 5.4.5 鼠标指针悬浮操作
  • 5.4.6 鼠标拖动操作
  • 5.4.7 其他鼠标操作汇总
  • 5.5 键盘操作
  • 5.5.1 文字输入
  • 5.5.2 组合键
  • 第6章 常见控件实战
  • 6.1 搜索框
  • 6.2 按钮
  • 6.3 复选框
  • 6.4 链接
  • 6.5 select下拉列表
  • 6.6 input下拉列表
  • 6.7 表格
  • 6.8 框架
  • 6.9 JavaScript弹窗
  • 6.10 非JavaScript弹窗
  • 6.11 日期时间控件
  • 6.12 文件下载
  • 6.13 文件上传
  • 第7章 Selenium高级应用
  • 7.1 复杂控件的操作
  • 7.1.1 操作Ajax选项
  • 7.1.2 操作富文本编辑器
  • 7.1.3 滑动滑块操作
  • 7.2 WebDriver的特殊操作
  • 7.2.1 元素class值包含空格
  • 7.2.2 property、attribute、text的区别
  • 7.2.3 定位动态id
  • 7.2.4 操作cookie
  • 7.2.5 截图功能
  • 7.2.6 获取焦点元素
  • 7.2.7 颜色验证
  • 7.3 JavaScript的应用
  • 7.3.1 操作页面元素
  • 7.3.2 修改页面元素属性
  • 7.3.3 操作滚动条
  • 7.3.4 高亮显示正在被操作的页面元素
  • 7.3.5 操作span类型元素
  • 7.4 浏览器定制启动参数
  • 7.5 AutoIt的应用
  • 7.6 重要的异常
  • 第8章 Selenium等待机制
  • 8.1 影响元素加载的外部因素
  • 8.2 Selenium强制等待
  • 8.3 Selenium隐性等待
  • 8.4 Selenium显性等待
  • 第9章 线性测试脚本
  • 9.1 Redmine系统
  • 9.1.1 下载和安装
  • 9.1.2 常见错误
  • 9.1.3 Redmine系统的启动和关闭
  • 9.1.4 Redmine简单使用
  • 9.2 线性脚本
  • 第10章 unittest测试框架
  • 10.1 unittest框架结构
  • 10.2 测试固件
  • 10.3 编写测试用例
  • 10.4 执行测试用例
  • 10.5 用例执行次序
  • 10.6 内置装饰器
  • 10.7 命令行执行测试
  • 10.8 批量执行测试文件
  • 10.9 测试断言
  • 10.10 测试报告
  • 10.11 unittest与Selenium
  • 10.12 unittest参数化
  • 10.12.1 unittest+DDT
  • 10.12.2 unittest+parameterized
  • 第11章 Pytest测试框架
  • 11.1 Pytest框架简介
  • 11.2 Pytest测试固件
  • 11.3 Pytest测试用例和断言
  • 11.4 Pytest框架测试执行
  • 11.4.1 使用main函数执行
  • 11.4.2 在命令行窗口中执行
  • 11.5 Pytest框架用例执行失败重试
  • 11.6 标记机制
  • 11.6.1 对测试用例进行分级
  • 11.6.2 跳过某些用例
  • 11.7 全局设置
  • 11.8 测试报告
  • 11.8.1 pytest-html测试报告
  • 11.8.2 Allure测试报告
  • 11.9 Pytest与Selenium
  • 11.10 Pytest参数化
  • 第12章 PO设计模式
  • 12.1 PO方案一
  • 12.2 PO方案二
  • 12.3 项目变更应对
  • 第13章 测试框架开发
  • 13.1 测试数据分离
  • 13.2 测试配置分离
  • 13.3 Selenium API封装
  • 13.4 测试报告
  • 第14章 项目实战
  • 14.1 测试计划
  • 14.2 测试用例
  • 14.3 测试脚本
  • 14.4 反思:测试数据
  • 14.4.1 测试数据准备
  • 14.4.2 冗余数据处理
  • 第15章 持续集成
  • 15.1 Git应用
  • 15.1.1 Git安装
  • 15.1.2 Git基本操作
  • 15.1.3 GitLab部署
  • 15.1.4 Git远端仓库
  • 15.2 Jenkins应用
  • 15.2.1 Jenkins部署
  • 15.2.2 管理插件
  • 15.2.3 创建任务
  • 15.2.4 命令行启动Jenkins
  • 15.2.5 设置项目执行频率
  • 15.2.6 配置邮件
  • 15.2.7 配置钉钉
  • 15.3 自动化测试持续集成
  • 第16章 提升效率
  • 16.1 立足根本
  • 16.2 另辟蹊径
  • 16.2.1 无头浏览器
  • 16.2.2 不关闭浏览器
  • 16.3 着眼未来
  • 16.3.1 分布式执行
  • 16.3.2 Docker技术
  • 写在最后
展开全部

评分及书评

4.0
5个评分
  • 用户头像
    给这本书评了
    5.0

    书中实例较多,非常适合练手作者书中了解细腻,深入浅出书中内容涉及全面,同时提供了很多避坑指南建议初学者,反复多看几次,能快速提高自动化测试技能。

      转发
      评论
      用户头像
      给这本书评了
      2.0

      作为入门书可能不错

        转发
        评论

      出版方

      人民邮电出版社

      人民邮电出版社是工业和信息化部主管的大型专业出版社,成立于1953年10月1日。人民邮电出版社坚持“立足信息产业、面向现代社会、传播科学知识、服务科教兴国”,致力于通信、计算机、电子技术、教材、少儿、经管、摄影、集邮、旅游、心理学等领域的专业图书出版。