资源名称:基于Selenium 2的自动化测试 从入门到精通 

内容简介:

本书向开发人员和测试人员展示了如何使用Selenium进行Web自动化测试。本书从自动化测试的特点娓娓道来,引出了主角Selenium;介绍了Selenium IDE的使用;讲述了获取页面元素和定位页面元素的多种方式;讲解了WebDriver与Selenium RC的区别、WebDriver的架构和设计理念;阐述了WebDriver的部署、基本使用方法、对HTML5特性的支持,以及如何迁移已有的Selenium RC代码到Selenium WebDriver的解决方案;展示了在嵌入式系统中使用Selenium进行自动化测试的方法,涵盖Android、 iOS和Raspberry Pi等;此外,本书还描述了Selenium Grid的架构和部署方法;最后介绍了Selenium周边的测试工具和套件。无论从深度还是广度上,本书为开发人员和测试人员学习并掌握Selenium提供了一定的辅助作用。

本书适合开发人员、测试人员、测试管理人员使用,也适合作为大中专院校相关专业师生的学习用书,以及培训学校的教材。

作者简介:

白洛,男,2006年7月硕士研究生毕业于华中理工大学计算机科学与技术专业,同年进入威睿中国公司上海研发部门,现为高级测试工程师,在软件开发领域和互联网领域具有7年的软件开发和测试经验,并担任所在公司相关技术培训的讲师和组织者之一。

资源目录:

前言

第1章初识Selenium1

1.1简介1

1.2自动化测试1

1.3Web自动化测试3

1.4Selenium的前世今生3

1.5Selenium 14

1.6Selenium 25

1.7Selenium 36

1.8Selenium IDE6

1.9Selenium Grid6

1.10Selenium与嵌入式7

1.11Selenium与云计算7

1.12小结8

第2章牛刀小试之Selenium IDE9

2.1简介9

2.2安装Selenium IDE9

2.3Selenium IDE界面一览11

2.4创建测试用例13

2.5存储页面信息14

2.6与AJAX页面进行交互15

2.7处理多窗口16

2.8Rollup的简介17

2.9小结21

第3章Selenium玩转页面元素22

3.1简介22

3.2浏览器调试工具22

3.2.1Google Chrome22

3.2.2Mozilla Firefox23

3.2.3Internet Explorer24

3.3查找页面元素26

3.3.1通过ID查找元素26

3.3.2通过Name查找元素27

3.3.3通过ClassName查找元素28

3.3.4通过TagName查找元素29

3.3.5通过LinkText查找元素30

3.3.6通过PartialLinkText查找元素31

3.3.7通过CSS选择器查找元素32

3.3.8通过Xpath查找元素32

3.3.9通过jQuery查找元素34

3.4元素的Actions40

3.5小结43

第4章初识Selenium WebDriver44

4.1简介44

4.1.1概述44

4.1.2WebDriver与Selenium RC的区别44

4.2WebDriver的架构44

4.2.1synthesized事件和native事件44

4.2.2RPC调用45

4.2.3兼容性矩阵45

4.2.4缺陷46

4.2.5与DOM交互46

4.3WebDriver、Eclipse和Java47

4.4WebDriver的部署49

4.4.1使用Firefox Driver49

4.4.2使用Chrome Driver52

4.4.3使用Internet Explorer Driver56

4.5WebDriver与浏览器60

4.5.1操作页面元素之单选按钮60

4.5.2操作页面元素之多选按钮62

4.5.3操作弹出窗口之验证标题64

4.5.4操作弹出窗口之验证内容67

4.5.5操作警告框、提示框和确认框69

4.5.6操作浏览器最大化72

4.5.7操作浏览器Cookies73

4.5.8操作浏览器前进后退76

4.5.9操作页面元素等待时间78

4.6WebDriver与文件系统79

4.6.1屏幕截图操作79

4.6.2复制文件操作81

4.6.3创建目录操作82

4.6.4删除目录操作83

4.6.5读取文件操作83

4.6.6压缩目录操作84

4.6.7临时目录操作85

4.6.8文件权限操作85

4.7小结86

第5章玩转Selenium WebDriver87

5.1WebDriver与HTML587

5.1.1HTML5中的Video87

5.1.2HTML5中的Canvas89

5.1.3HTML5中的Drag/Drop90

5.1.4HTML5中的Geolocation94

5.2RemoteWebDriver97

5.2.1RemoteWebDriver简介97

5.2.2RemoteWebDriver的优缺点97

5.2.3RemoteWebDriver服务器端97

5.2.4RemoteWebDriver客户端99

5.3WebDriver的事件处理100

5.3.1自定义事件侦听100

5.3.2事件处理实例101

5.4Page Object与Page Factory103

5.4.1不使用Page Object104

5.4.2使用Page Object108

5.4.3使用Page Object、Page Factory、@FindBy和How118

5.5Selenium RC迁移到WebDriver130

5.5.1简介130

5.5.2从Selenium RC迁移到WebDriver的优势130

5.5.3迁移Selenium运行实例130

5.5.4迁移测试代码到WebDriver API131

5.6小结131

第6章Selenium玩转Android132

6.1简介132

6.2玩转Android132

6.2.1架构132

6.2.2搭建Android WebDriver环境133

6.2.3最简单的测试用例137

6.2.4旋转屏幕137

6.2.5触摸和滚动139

6.3当Android遇到HTML5141

6.3.1HTML5中的Web Storage141

6.3.2HTML5中的Application Cache143

6.4在Cloud中测试Android145

6.5小结148

第7章Selenium玩转iOS149

7.1简介149

7.2iosdriver149

7.2.1iosdriver简介149

7.2.2iosdriver的Web app实例150

7.2.3iosdriver的Native app实例153

7.2.4iosdriver的源码编译158

7.3Appium160

7.3.1Appium简介160

7.3.2Appium的iOS配置161

7.3.3Appium的Web app实例162

7.4小结169

第8章Selenium玩转Raspberry Pi170

8.1简介170

8.2操作系统层面的准备工作170

8.3依赖包的安装171

8.4运行Python版的Selenium172

8.5运行Standalone版的Selenium Server175

8.6小结179

第9章Selenium Grid180

9.1简介180

9.1.1Selenium Grid是什么180

9.1.2何时使用Selenium Grid180

9.1.3Selenium Grid 2.0 & 1.0181

9.2Selenium Grid的架构181

9.3Selenium Grid的部署182

9.4Selenium Grid Hub182

9.4.1默认启动Hub182

9.4.2配置Hub端口182

9.4.3JSON配置文件184

9.5Selenium Grid Node184

9.5.1默认启动Node184

9.5.2注册Mac OS X & Opera185

9.5.3注册Linux & Firefox187

9.5.4注册Windows & Internet Explorer187

9.5.5注册Android & Chrome188

9.5.6注册AppiumiOS & Safari189

9.5.7注册多个不同类型的浏览器190

9.6编写Selenium Grid的测试用例193

9.7小结194

第10章Selenium的“兄弟姐妹们”195

10.1简介195

10.2Jenkins195

10.3Web前端性能198

10.3.1BrowserMob Proxy198

10.3.2HttpWatch200

10.4Ruby的光芒203

10.4.1WatirWebDriver203

10.4.2Capybara204

10.5JMeter205

10.6Sikuli208

10.7小结209

参考文献210

资源截图:

1.png

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。