Selenium自动化测试-入门
一、什么是Selenium
Selenium 是一个浏览器自动化测试框架,它主要用于web应用程序的自动化测试,其主要特点如下:开源、免费;多平台、浏览器、多语言支持;对web页面有良好的支持;API简单灵活易于使用;支持分布式测试用例执行。
Java+Selenium3.0基础篇
2. 环境搭建
2.1 下载和安装Python
1) 下载Python 2.7.x
到 https://www.python.org/downloads/, 下载2.7.X版本,如图

下载完后直接,双击开始安装,记得在勾选组建的时候,需要勾选安装python到path这个选项,否则安装完了,还需要类似配置jdk环境变量一样把python添加到系统path中去。
2)验证python是否安装完成和path是否添加方法:
打开cmd,输入python, 如果能看到python版本号,说明python安装成功。通过输入quit()来退出python环境。如果你的环境如图能看到Python版本号信息,说明Python正确安装。

2.2 下载Selenium for python
1) 下载 Selenium for python
到 https://pypi.python.org/pypi/selenium#downloads 下载最新版本,当前是3.0.2
下载tar.gz的包

下载完解压:

2) 安装Selenium
打开cmd,然后cd到解压包当前路径,输入 python setup.py install ,cmd窗口会出现解压滚动屏幕,直到安装完成。如下图。

验证selenium安装成功办法:
在cmd输入python进入python环境,然后输入 from selenium import webdriver,如果不报错就代表selenium安装成功。

3) 第二个安装selenium方式
还有一种安装方式,在线安装,在cmd输入 python -m pip install selenium,然后回车,自动安装。
----------------------------------------------------------------------
--打开和关闭火狐浏览器
要用selenium打开fiefox浏览器。首先需要去下载一个driver插件geckodriver.exe, 下载地址https://github.com/mozilla/geckodriver/releases,下载好这个exe文件后,把这个文件放到你的python安装目录下,例如:C:\Python27\geckdriver.exe。
用Notepad++打开一个空白文件,输入如下代码,保存为first.py
# coding=UTF-8 from selenium import webdriver # 导入webdriver包 driver = webdriver.Firefox() # 初始化一个火狐浏览器实例:driver driver.maximize_window() # 最大化浏览器 driver.get("https://www.baidu.com") # 通过get()方法,打开一个url站点 driver.quit() #关闭并退出浏览器
打开cmd窗口,cd到first.py所在的路径,在cmd中输入命令: python first.py回车,可以看看是否打开火狐,打开百度,关闭火狐的效果。
注意:可能会遇到一些报错
1. geckodriver.exe没有放到python安装目录下,这一类报错。
2. python first.py执行后,找到文件,说明没有通过cd命令切换到first.py所在的文件夹路径。
总结:
通过上面代码,和本文,基本了解了如何打开和关闭浏览器。如果想打开IE或者Chrome浏览器,也需要下载对应浏览器的driver.exe文件,放到python安装目录。
--打开和关闭IE/Chrome浏览器
要调用Firefox浏览器,我们需要下载geckodriver.exe这个文件,放到Python的安装路径下,例如在安装Python是默认安装,路径就是C:\Python27;同样的道理,如果要启动IE和谷歌浏览器,也需要下载相关的插件,放到Python安装路径(C:\Python27,和python.exe在同一级目录下)。
在Selenium官方网站,可以下载最新发布的不同浏览器的插件支持文件,IE(IEDriverServer.exe)、Chrome(chromedriver.exe),下载的时候注意下,IE有32位和64位下载文件,chrome目前暂时只有32bit一个文件。下载好了,放到C:\Python27,和python.exe在同一级目录下。
运行本文下面的代码,有一个前提条件,IE,Chrome,Firefox都是默认安装在C盘,安装的时候不需要去更改安装路径。如果有不是默认安装的,请卸载Firefox,重新下载文件,默认安装到C盘。请相信我,不要浪费时间在,如何启动非默认安装位置下的Firefox浏览器。
1. 如何启动Chrome
# coding=UTF-8 from selenium import webdriver driver = webdriver.Chrome() driver.maximize_window() # 最大化浏览器 driver.implicitly_wait(8) # 设置隐式时间等待 driver.get("https://www.baidu.com") driver.quit()
2. 如何启动IE
# coding=UTF-8 from selenium import webdriver driver = webdriver.Ie() driver.maximize_window() driver.implicitly_wait(8) driver.get("https://www.baidu.com") driver.quit()
注意:可能出现的报错
Exception: Message: Unexpected error launching Internet Explorer. Protected Mode settings are not the same for all zones. Enable Protected Mode must be set to the same value (enabled or disabled) for all zones.
解决办法:Internet选项->安全; 把Internet站点,本地Intrant,受信任站点 三个地方的安全界面都设置相同等级,例如都设置中; 再次运行代码就可以用IE打开百度了。
总结:目前,由于IE的不稳定性和速度问题,建议采用火狐或者谷歌浏览器来测试和debug自动化脚本。
浙公网安备 33010602011771号