LupuX 2017-06-18 14:24:28 11853 收藏 41
分类专栏: Auto Test 文章标签: 自动化测试 selenium web测试 UI自动化
版权
一、什么是Selenium
Selenium 是一个浏览器自动化测试框架,它主要用于web应用程序的自动化测试,其主要特点如下:开源、免费;多平台、浏览器、多语言支持;对web页面有良好的支持;API简单灵活易于使用;支持分布式测试用例执行。
Selenium经历了两个版本,Selenium1.0和2.0,Selenium1.0主要由以下几部分构成:
Selenium IDE:是一个嵌入到Firefox中的插件,可以实现浏览器的录制于回放功能。
Selenium Grid:自动化测试辅助工具,可以很方便地同时在多台机器上并行运行多个测试事例。
Selenium RC:是Selenium的核心工具,支持多种不同的语言编写的测试脚本,通过Selenium RC的服务器作为代理服务器去访问应用从而达到测试的目的。主要分为以下两部分:
明白了Selenium1.0的家族关系,Selenium2.0可以简单的认为是将WebDriver加入到了Selenium RC这一部分中去。那么Selenium RC和WebDriver有什么区别呢?RC和 WebDriver 类似,都可以看做是一套操作web页面的规范。当然,他们的工作原理不一样。
Client:用来编写测试脚本来控制Selenium server的库。
Server:负责控制浏览器的行为,包含三部分:Launcher;HttpProxy;Core。
Selenium RC 在浏览器中运行 JavaScript 应用,使用浏览器内置的 JavaScript 翻译器来翻译和执行selenese 命令(Selenium 命令集合) 。
WebDriver 通过原生浏览器支持或者浏览器扩展直接控制浏览器。WebDriver 针对各个浏览器而开发,取代了嵌入到被测 Web 应用中的 JavaScript。与浏览器的紧密集成支持创建更高级的测试,避免了JavaScript 安全模型导致的限制。除了来自浏览器厂商的支持,WebDriver 还利用操作系统级的调用模拟用户输入。
以后我们基本都用Selenium2.0来进行学习和脚本编写,并且选定Python语言作为编写脚本的语言,其实各种语言编写脚本都大同小异。
二、Selenium环境搭建
1. 安装Python
这里暂时只说windows下的。访问Python官网:https://www.Python.org/选择下载Python2或者3系列,直接点击安装,注意勾选将其自动添加至系统环境变量中,并且勾选自动安装pip,便于我们直接从cmd中使用。具体步骤不再多说,网上教程很多。
2. 安装Selenium
安装好了Python环境之后,我们直接用pip install Selenium
命令来安装Selenium。
3. 安装浏览器驱动
这里我们需要知道的是Firefox的驱动已经集成在了Selenium WebDriver包中了,不用我们自己安装了。下面看一个简单了例子:
#coding=utf-8
from Selenium import webdriver
#浏览器驱动
driver=webdriver.Firefox()
driver.get("https://www.baidu.com")
driver.find_element_by_id("kw").send_keys("Selenium2")
driver.find_element_by_id("su").click()
driver.quit()
1
2
3
4
5
6
7
8
9
10
这个简单的例子做的事是:打开Firefox,访问百度首页,输入Selenium2关键字进行搜索,退出。运行它,我们可以看见以下页面:
如果我们想要使用其他的浏览器呢?首先必须要下载响应浏览器的驱动,我们可以访问http://docs.Seleniumhq.org/download/来下载相关的驱动,并将其放在系统路径中。比如我们这里把Firefox改为Chrome,再运行程序可以看见:
4. 其他工具安装
这里我们主要使用Firefox来进行演示,还需要安装一些插件来方便我们后面的控件抓取。可以直接访问https://addons.mozilla.org/zh-CN/firefox/来搜索和安装一些插件,比如常用的XPath和Firebug等。
环境搭建完成以后我们要做的就是开始学习编写脚本的API了。
三、WebDriver API
本节的内容是,在Python语言中,如何通过Selenium Web