前言
`测试分门别类,本文列举了常见的自动化测试工具Selenium、性能测试工具LoadRunner和测试管理工具禅道的一些使用要点。
一、Selenium
1、Selenium是什么
Selenium的特点
(Selenium是一个web的自动化测试工具)轻量级:对于不同的语言只是一个包而已;支持多语言;支持多平台;支持多浏览器;可以通过selenium grid进行分布式测试
自动化化测试金字塔
ui层用例维护量比较大,适合界面稳定的时候做自动化测试;接口层用户维护量适中,适合接口稳定的项目,效率比较高;单元测试是针对代码级别进行测试
Selenium的发展
Selenium2.0集成了WebDriver,将浏览器原生的API封装成WebDriver API,可以直接操作浏览器页面里的元素,甚至浏览器本身,解决了环境沙箱的问题;Selenium3.0增加了一些新特性,增加了edge Safari的原生内核。
Webdriver的原理
启动浏览器后,selenium-webdriver会将目标浏览器绑定到特定的端口,启动后的浏览器则作为webdriver的
remote server。
客户端(也就是测试脚本),借助ComandExecutor发送HTTP请求给sever端(通信协议:The WebDriver Wire
Protocol,在HTTP request的body中,会以WebDriver Wire协议规定的JSON格式的字符串来告诉Selenium我
们希望浏览器接下来做什么事情)。
Sever端需要依赖原生的浏览器组件,转化Web Service的命令为浏览器native的调用来完成操作。
2.常见的API
如何对一个百度的输入框定位
<input id=“kw” class=“s_ipt” type=“text” maxlength="100"name=“wd” autocomplete=“off”>
通过id name tag_name class_name css_selector xpath定位
#coding=utf-8
from selenium import webdriver
import time
browser = webdriver.Chrome();
browser