一、什么是自动化测试?
自动化测试指软件测试的自动化,在预设状态下运行应用程序或者系统,预设条件包括正常和异常,最后评估运行结果。将人为驱动的测试行为转化为机器执行的过程。
自动化测试多用到回归测试和兼容性测试。
常见的自动化测试工具
QTP : quick fast professional 有图形化界面 需要下载1个多G的程序
jmeter : apache下的开源压力测试和接口测试 轻量级 图形化界面
appium:手机端(ipad)应用测试工具 开源
loadrunner:性能测试工具
soupui:接口测试
selenium :测试工具集 多平台 多语言
自动化测试对象
UI自动化
- 适合界面元素稳定的项目
- 页面相关性强,必须后期介入
接口自动化
- 适合接口变动较小,界面变动频繁的项目
- 页面相关性小,可在产品前期介入
二、什么是selenium
Selenium是ThroughtWorks公司一个强大的开源Web功能测试工具系列,支持多平台、多浏览器、多语言去实现自动化测试,Selenium2.0将浏览器原生的API封装成WebDriver API,可以直接操作浏览器页面里的元素,WebDriver 解决了 Selenium1.0 存在的缺点(比如,绕过 JS 沙箱)。Selenium3.0增加支持edge、safari浏览器平台。
selenium
支持多平台:windows、linux、MAC
支持多浏览器: IE、safari、chrome、 edge、Firefox
支持多语言:C、java、ruby、python、C#
下图引用博客 https://blog.youkuaiyun.com/juhua2012/article/details/89020160
selenium1.0 = selenium IDE + selenium RC + selenium Grid
selenium2.0 = selenium1.0 + WebDriver
简单介绍WebDriver
Server端:即Remote Server(远程服务器),可以是任意的浏览器,当脚本启动浏览器时,该浏览器就是Remote Server,它的职责是等待Client发送请求并做出响应;
Client端(也就是测试脚本):测试代码中的一些行为是以HTTP请求的方式发送给被测试浏览器——Remote Server,Remote Server接受请求,执行相应操作,并在Response中返回执行状态、返回值等信息。