前言
如果你是一位有python语言基础的同学,又想通过python+ selenium去实施自动化,那么你非常幸运的找到了这份文档,我也非常荣幸能为你的自动化学习之路带来一丝帮助。
其实,我在selenium自动化方面也是初学者,虽然在刚开始从事测试工作的就尝试学习selenium自动化工具,购买了面《零成本实现web自动化测试---基于seleinum与Bromine》学了一段时间不得门,当时水平有限,甚至一直都不理解什么自动化测试框架,后来就放弃了自动化的学习。
今年换工作后,所测试的项目用python开发,为了更好的测试项目,开始学习python语言,花一个月多月的时候将python基础学习了一下。正好所测试的项目也比较适合进行自动化,于是尝试通过python+selenium 对项目进行自动化工作。
学习的过程还是比较艰难的,对于selenium webdriver 的ruby 和 java的实例比较多,python甚少,查询API文档有方法,但没有实例,不知道如何实现。在学习过程中要感谢 乙醇 同学,他在ruby+selenium 方面有很深的功力;另一位要感谢的是 rabbit ,他在python+selenium 的学习中给我了很多帮助。
下面要简单说说本文档的内容:
为了学习selenium webdriver 本身的用法,全文没有引入python 的unittest 测试框架;所有的脚本也都是单个的用例的学习,引入框架后将会提供更强大的功能,比如用例的运行时间,用例的批量执行等。本文档是第一版,我此后也会继续学习unittest 测试框架的技术,并将在第二版中加入。
本文档不是API,所以还有很多方法没有整理,如果在学习的过程中有任何疑问,请查阅在线AIP 文档:
http://selenium.googlecode.com/git/docs/api/py/index.html
目录
一、selenium+python环境搭建 4
1.1 selenium介绍 4
1.2 准备工作 4
1.3 安装步骤 5
1.4 安装chrome driver 6
1.5 安装 IE driver 7
二、开始第一个脚本 7
2.1 为什么选python 7
2.2 第一个脚本 7
2.3 脚本解析 8
三、元素的定位 9
3.1 id和name定位 11
3.2 tag name和class name定位 11
3.3 CSS定位 11
3.4 XPath定位 12
3.5 link定位 14
3.6 Partial link text定位 14
四、添加等待时间 14
4.1、添加休眠 15
4.2、智能等待 15
五、打印信息 16
5.1、打印tile 16
5.2、打印URL 17
六、浏览器的操作 18
6.1、浏览器最大化 18
6.2、设置浏览器宽、高 19
七、操作浏览器的前进、后退 19
八、操作测试对象 21
九、键盘事件 22
9.1、键盘按键用法 23
9.1、键盘组合键用法 24
十、鼠标事件 25
10.1、鼠标右键 26
10.2、鼠标双击 27
10.3、鼠标拖放 28
十一、定位一组元素 28
11.1、第一种定位方法 30
11.2、第二种定位方法 30
11.3、去掉最后一个勾选 31
十二、多层框架/窗口定位 32
12.1、多层框架定位 33
12.1、多层窗口定位 35
十三、层级定位 35
十四、上传文件操作 39
14.1、操作文件上传例子 39
14.2、139邮箱上传 40
十五、下拉框处理 41
15.1、操作下拉框例子 42
15.2、百度搜索设置下拉框操作 43
十六、调用js 44
15.1、通过js隐藏元素 45
15.2、通过js使输入框标红 47
十六、控制浏览器滚动条 48
16.1、场景一 48
16.1、场景二 48
十七、webdriver原理解析 49
说明:
这个文档的所有内容在本博客中都能找到,只是本文档的结构更合理,顺序更清晰,适合新手一步一步的较系统的学习。
「UI 测试自动化selenium」汇总
下载地址:
http://download.csdn.net/detail/fnngj/6041329