Selenium 2自动化测试实战
基于Python语言
作品简介
《Selenium 2自动化测试实战——基于Python语言》共分14章。第1章是自动化测试相关基础知识的介绍;第2章到第10章是《Selenium 2自动化测试实战——基于Python语言》的重点,循序渐进地介绍了自动化测试所用到的技术;第11章通过一个具体的项目综合运用了前面章节所介绍的技术与技巧;第12章到第14章选取了当前最热门的技术进行了介绍,旨在扩展测试人员的综合技术能力。《Selenium 2自动化测试实战——基于Python语言》的写作目的并不是为了简单地告诉读者如何使用一个自动化测试工具,而是希望读者在学习。
《Selenium 2自动化测试实战——基于Python语言》的内容后能够提高综合的技术高度与宽度,从而摆脱简单的手工测试,向高级测试工程师的道路迈进。
作品目录
推荐序
前言
第1章 自动化测试基础
1.1 软件测试分类
1.2 分层的自动化测试
1.3 什么样的项目适合自动化测试
1.4 自动化测试及工具简述
1.5 Selenium工具介绍
1.6 前端技术介绍
1.7 前端工具介绍
1.8 开发语言的选择
第2章 测试环境搭建
2.1 Windows下的环境搭建
2.1.1 安装Python
2.1.2 安装setuptools与pip
2.1.3 安装Selenium
2.1.4 ActivePython
2.2 Ubuntu下的环境搭建
2.3 使用IDLE编写Python
2.4 编写第一个自动化脚本
2.5 安装浏览器驱动
2.6 不同编程语言下使用WebDriver
第3章 Python基础
3.1 Python哲学
3.2 输出与输入
3.2.1 print打印
3.2.2 input输入
3.2.3 引号与注释
3.3 分支与循环
3.3.1 if语句
3.3.2 for语句
3.4 数组与字典
3.4.1 数组
3.4.2 字典
3.5 函数、类和方法
3.5.1 函数
3.5.2 类和方法
3.6 模组
3.6.1 引用模块
3.6.2 模块调用
3.6.3 跨目录模块调用
3.6.4 进一步讨论跨目录模块调用
3.7 异常
3.7.1 认识异常
3.7.2 更多异常用法
3.7.3 抛出异常
本章小结
第4章 WebDriver API
4.1 从定位元素开始
4.1.1 id定位
4.1.2 name定位
4.1.3 class定位
4.1.4 tag定位
4.1.5 link定位
4.1.6 partial link定位
4.1.7 XPath定位
4.1.8 CSS定位
4.1.9 用By定位元素
4.2 控制浏览器
4.2.1 控制浏览器窗口大小
4.2.2 控制浏览器后退、前进
4.2.3 模拟浏览器刷新
4.3 简单元素操作
4.3.1 126邮箱登录
4.3.2 WebElement接口常用方法
4.4 鼠标事件
4.5 键盘事件
4.6 获得验证信息
4.7 设置元素等待
4.7.1 显式等待
4.7.2 隐式等待
4.7.3 sleep休眠方法
4.8 定位一组元素
4.9 多表单切换
4.10 多窗口切换
4.11 警告框处理
4.12 上传文件
4.12.1 send_keys实现上传
4.12.2 AutoIt实现上传
4.13 下载文件
4.14 操作Cookie
4.15 调用JavaScript
4.16 处理HTML5的视频播放
4.17 窗口截图
4.18 关闭窗口
4.19 验证码的处理
4.20 WebDriver原理
本章小结
第5章 自动化测试模型
5.1 自动化测试模型介绍
5.1.1 线性测试
5.1.2 模块化驱动测试
5.1.3 数据驱动测试
5.1.4 关键字驱动测试
5.2 模块化驱动测试实例
5.3 数据驱动测试实例
5.3.1 参数化邮箱登录
5.3.2 参数化搜索关键字
5.3.3 读取txt文件
5.3.4 读取csv文件
5.3.5 读取xml文件
本章小结
第6章 Selenium IDE
6.1 Selenium IDE安装
6.1.1 在线安装
6.1.2 下载插件安装
6.2 Selenium IDE界面介绍
6.3 创建测试用例
6.3.1 录制脚本
6.3.2 编辑脚本
6.4 Selenium IDE命令
6.5 断言与验证
6.5.1 断言
6.5.2 验证
6.6 等待与变量
6.6.1 等待
6.6.2 变量
本章小结
第7章 unittest单元测试框架
7.1 认识unittest
7.1.1 认识单元测试
7.1.2 重要的概念
7.1.3 断言方法
7.1.4 组织单元测试用例
7.1.5 discover更多测试用例
7.2 关于unittest还需要知道的
7.2.1 用例执行的顺序
7.2.2 执行多级目录的用例
7.2.3 跳过测试和预期失败
7.2.4 fixtures
7.3 带unittest的脚本分析
7.4 编写Web测试用例
本章小结
第8章 自动化测试高级应用
8.1 HTML测试报告
8.1.1 修改HTMLTestRunner
8.1.2 生成HTML测试报告
8.1.3 更易读的测试报告
8.1.4 测试报告文件名
8.1.5 项目集成测试报告
8.2 自动发邮件功能
8.2.1 发送HTML格式的邮件
8.2.2 发送带附件的邮件
8.2.3 查找最新的测试报告
8.2.4 整合自动发邮件功能
8.3 Page Object设计模式
8.3.1 认识Page Object
8.3.2 Paget Object实例
本章小结
第9章 Selenium Grid2
9.1 Selenium Server环境配置
9.2 Selenium Grid工作原理
9.3 Remote应用
9.3.1 WebDriver驱动分析
9.3.2 Remote实例
9.3.3 参数化平台及浏览器
9.4 WebDriver驱动
9.4.1 Edge浏览器
9.4.2 Opera浏览器
9.4.3 Safari浏览器
9.4.4 HtmlUnit模式
9.4.5 PhantomJS模式
本章小结
第10章 Python多线程
10.1 单线程的时代
10.2 多线程技术
10.2.1 threading模块
10.2.2 优化线程的创建
10.2.3 创建线程类
10.3 多进程技术
10.3.1 multiprocessing模块
10.3.2 Pipe和Queue
10.4 应用于自动化测试
10.4.1 多线程执行测试用例
10.4.2 多线程分布式执行测试用例
本章小结
第11章 自动化测试项目实战
11.1 自动化测试用例设计
11.1.1 手工测试用例与自动化测试用例
11.1.2 测试类型
11.1.3 自动化测试用例编写原则
11.2 BBS社区项目实战
11.2.1 准备工作
11.2.2 项目结构介绍
11.2.3 编写公共模块
11.2.4 编写Page Object
11.2.5 编写测试用例
11.2.6 执行测试用例
本章小结
第12章 BDD框架之Lettuce入门
12.1 什么是BDD
12.2 安装Lettuce
12.3 阶乘的例子
12.3.1 什么是阶乘
12.3.2 编写BDD实现
12.3.3 添加测试场景
12.3.4 Lettuce目录结构与执行过程
12.4 Lettuce_webdriver自动化测试
本章小结
第13章 GitHub托管项目
13.1 注册与安装
13.1.1 注册GitHub
13.1.2 安装Git
13.1.3 建立连接
13.2 Git/GitHub基本使用
13.2.1 GitHub创建项目
13.2.2 本地创建项目
13.2.3 克隆项目
13.2.4 更新项目
本章小结
第14章 持续集成Jenkins入门
14.1 环境搭建
14.2 创建任务
14.3 运行构建
14.4 定时执行构建
本章小结
载入中