selenium自动化测试
生活中的自动化处处可见,比如洗衣服、工厂等。
自动化测试是把以人为驱动的测试行为转化为机器执行的一种过程。通常,在设计了测试用例并通过评审之后,由测试人员根据测试用例中描述的规程步步执行测试,得到实际结 果与期望结果的比较。在此过程中,为了节省人力、时间或硬件资源,提高测试效率,便引入了自动化测试的概念。
我们将测试分为三个层次,分别是UI层、service层和unit层。根据每个阶段投入自动化测试比例的不同,创建如下金字塔模型进行分层自动化测试的思想描述。
三个层级投入测试的分配比: Unit层 占整个测试工作的70%,Service层占20%,UI层占10%
在单元层作自动化测试实现成本较低,容易看见成效,越往上层其维护成本越高
尤其UI层的测试很多都是站在用户的角度上去测的,元素时常发生改变,旦发现大的bug返工的代价高昂,所以应尽量将unit层的测试做充分,将错误尽早暴露
适合自动化测试的场景:
任务测试明确,不会频繁变动
回归测试比较频繁
界面比较稳定
有大量的重复任务
软件的维护周期较长
项目进度方面的压力较小
测试人员具备较强编程能力
ui自动化的case是从功能用例中来的,如果迭代周期较短,可以选取功能用例中的和信用例
常用自动化测试工具:
QTP、RF、Selenium
Selenium特点:
支持众多浏览器
支持众多语言
开源、免费
支持众多平台
对web页面具有良好的支持
简单(API简单),灵活(用开发语言驱动)
支持分布式测试用例
指定版本:pip install selenium == 3.5.2
from selenium import webdriver
driver = webdriver.Firefox()
driver1 = webdriver.Chrome()
driver.get("https://www.baidu.com/")
driver1.get("https://www.baidu.com/")
|