近期学习了web自动化,其中用到了Selenium,感觉挺好玩,做个学习总结。
Selenium
Selenium概述
1.什么是Selenium?
Selenium是ThoughtWorks公司的一个强大的开源Web功能测试工具系列,采用Javascript来管理整个测试过程,包括读入测试套件、执行测试和记录测试结果。
2.Selenium的特点
1)它采用Javascript单元测试工具JSUnit为核心,只要在测试用例中把预期的用户行为与结果都描述出来,我们就得到了一个可以自动化运行的功能测试套件。
2)Selenium测试直接运行在浏览器中,就像真正的用户在操作一样。
3.Selenium历史
2004年Jason Huggins开始研发Selenium核心。
2006年Selenium RC加入了进来。
2011年Selenium 2.0(Webdriver支持)替代了RC。
2016年10月Selenium 3.0出生。
4.每代的变化
1)Selenium1
一代的selenium存在一些缺陷,但是也没有影响其功用。但是现在我们基本上已经不使用这个版本了
2)Selenium2
写作Selenium2,读作webdriver,webdriver是google的自动化测试框架(或者说是套规范API)webdriver 与seleinum 各有优点, 两个团队都认为合并会更牛逼,在Selenium 2.0中 主推的是WebDriver,于是:
selenium 2.0 = selenium RC + webdriver。
3)Selenium3
支持的浏览器更多了
Selenium工作原理
- selenium组件
- Selenium RC 与 webdriver
- webdriver工作原理
webdriver API
webdriver 是浏览器驱动对象,通过它可以对浏览器进行各种操作。
-
使用前,先导包
from selenium import webdriver
-
创建浏览器对象
driver = webdriver.xxx()
xxx是要使用的相应浏览器
可以通过dir(driver)来查看有哪些方法
-
浏览器尺寸相关操作
maximize_window() #最大化 get_window_size() #获取浏览器尺寸 set_window_size(x,y) #设置浏览器尺寸
-
浏览器位置相关操作
get_window_position() #获取浏览器位置 set_wi