UI自动化适合项目:维护周期长,变动小,回归测试、每日构建后的验证测试、多平台相同测试案例、项目进度压力不大。
Selenium:用于Web应用程序测试的工具。支持多浏览器:Firefox、Chrome、IE、Opera、Edge;支持分布式测试用例执行。
前端技术:HTML、JavaScript、XML。
使用小工具:Firebug是抓包的,FirePath是定位的。(50及以上的无法直接安装插件)
如:browser.find_element_by_xpath(".//*[@id='kw']").send_keys("selenium")
一、环境搭建
1、Python3.5.4官网下载:https://www.Python.org/;.msi文件双击安装,勾选。安装完可以在菜单栏看到Python目录,可以打开自带IDLE。
注意:Python安装目录添加到系统环境变量的Path下(我的电脑-属性-高级-环境变量-系统变量的Path中添加:变量名PATH,变量值:D:\worksoftware\python3.5.4\;)。
2、setuptools与pip安装 :方便第三方库安装。(最新的python安装包scripts下已经有pip包,需要将D:\worksoftware\python3.5.4\Scripts加入环境变量)
https://pypi.python.org/pypi/setuptools
https://pypi.python.org/pypi/pip 进入cmd,对应目录下执行python setup.py install。
3、按照selenium(前面的pip装好就是方便下载selenium):pip install Selenium或pip install Selenium==3.8.0
pip show selenium
pip uninstall selenium。
4、浏览器驱动,主要IE、Chrome、火狐。对应版本需要注意。
A、chromedriver与chrome版本映射表 ;
B、firefoxdriver与firefox版本映射表 https://github.com/mozilla/geckodriver/releases 驱动版本;
http://ftp.mozilla.org/pub/firefox/releases/ 火狐浏览器版本;
C、IEdriver与IE版本映射表 http://selenium-release.storage.googleapis.com/index.html
和Selenium的版本号一定要一致;
二、使用基础
1、跨目录模块调用
2、异常抛出、警告框处理
3、元素定位、浏览器大小set_windows_size、前进后退driver.back()、driver.forward()、driver.quit()、driver.refresh() 、clear()、send_keys(*value)、click()、submit()回车、text获取元素文本、鼠标:couble_click()双、move_to_element()悬停、context_click()右、drag_and_drop()拖动。
4、元素等待:显式/隐式
5、休眠
6、多表单、多窗口切换
7、上传文件、下载文件
8、滚动条、单选、复选框、下拉框、textarea文本输入框、窗口截图
9、验证码处理
三、进阶
1、自动化测试模型:线性、模块化驱动、数据驱动测试、关键字驱动测试eg线性:每个脚本独立eg模块化:将重复模块独立成公共模块,其他用例去调用这个模块(比如登录、登出)eg:数据驱动测试(数据参数化,实现数据与脚本的分离。比如不同用户登录)数组、字典、外部文件excel、csv、txt、xml等。eg:关键字驱动测试
2、读取数组、字典、txt、csv、xml三、selenium IDE 录制、回放、编辑
四、unittest单元测试框架
五、高阶
1、discovery更多测试用例
2、html测试报告