分层自动化测试
共三种:单元自动化测试、接口自动化测试、UI自动化测试
Google给出的测试比重:单元自动化测试占70%,接口自动化测试占20%,UI自动化测试占10%
selenium属于UI自动化测试
学习重点
1、编程语言(Python)
2、selenium(webdriver)API
3、单元测试框架(unittest、pytest)
Selenium 介绍
Selenium是python的第三方库,支持多语言、多浏览器,目前有三个版本Selenium1.0、Selenium2.0、Selenium3.0
Selenium1.0
selenium1.0 = selenium IDE + selenium RC + selenium Grid
selenium IDE:嵌入在火狐浏览器中的一个插件,可以做一些简单的脚本录制和回放
selenium RC:用来控制浏览器,本质是依靠JS来操作浏览器
selenium Grid:可以将写好的脚本在不同的机器上运行,实现分布式测试
注意:
使用selenium RC控制浏览器不够稳定,有的操作可能无法驱动(由于使用JS控制机制的原因)
Selenium2.0
selenium2.0 = selenium1.0 + webdriver
webdriver:一套操作浏览器的规范,功能等同于selenium RC,但是实现原理不同,webdriver是通过浏览器驱动来操作浏览器,提高了稳定性
注意:
1、由于webdriver通过浏览器驱动直接操作浏览器,因此要操作浏览器需下载对应的浏览器驱动(火狐除外,因为selenium集成了火狐浏览器驱动)
2、seleium2.0仍有selenium RC,没有被删除的原因是要保持向后的兼容性
Selenium3.0
selenium3.0 = selenium2.0 - selenium RC
注意:
1、selenium3.0规范了浏览器驱动,每个浏览器的驱动由浏览器厂商自己维护,提高了稳定性
2、selenium3.0不在集成火狐浏览器驱动