目录
接口测试招聘需求
分层的手工测试
分层的测试技术
分层的自动化测试
手工测试VS自动化测试
接口概述
Web接口
接口测试概述
接口测试常用工具
接口测试简单案例
一、接口测试招聘需求
二、分层的手工测试
手工测试可以分为黑盒测试、白盒测试、灰盒测试
黑盒测试:黑盒测试一般也称为功能测试,把测试程序看成一个黑色的盒子,在程序界面处输入数据、进行操作、检查程序是否按照需求规格说明书的规定正常实现
白盒测试:白盒测试又称结构测试,就是通过检查程序的代码来发现程序的错误,需要测试人员掌握被测程序的编程语言,熟悉程序结构和处理过程,所以一般由程序员再加来做,在单元测试阶段应用较多
灰盒测试:灰盒测试结合了白盒测试和黑盒测试的要素,是介于白盒测试与黑盒测试之间的测试。灰盒测试像黑盒测试那样,检查输出结果对于输入的数据是否正确,同时也像白盒测试那样,检查程序的代码,
但这种检查不像白盒测试那样详细、完整,一般只对程序模块之间但调用、核心代码进行检查,在集成测试阶段经常采用,一般也是程序员大量采用。
三、分层的测试技术
测试金字塔模型
2009年由敏捷大师Mike。Cohn(麦克。科恩)提出
基本观点:应该有更多的低级别单元测试,而不仅仅是通过用户界面运行高层端到端的测试
测试金字塔模型的理念:
1.越底层,越稳定
金字塔主要观点认为单元测试的稳定性高,需要多投入
2.越底层,越高效
程序的问题,最终还是落在具体的代码的上,所以底层的测试更容易发现问题。
3.越底层,越低成本
越底层测试能越早发现问题,越早发现问题,修复的成本自然越低
4.越底层,越难实施
越底层的实现对技术专业性越高
四、分层的自动化测试
分层自动化测试:
由著名的面向对象分析设计、UML、模式专家,敏捷开发方法创始人之一Martin.Fowler(马丁.富勒)提出
UI层自动化测试:功能自动化测试使用Selenium、QTP等自动化工具对系统进行测试,主要通过模拟用户在界面的操作对系统进行测试,在系统的回归测试、冒烟测试、大数据量测试中广泛应用
Unit层自动化测试:单元的自动化测试,通过单元自动化测试工具(如Junit、Jtest、Unittest)完成程序基本单元(如类、函数、程序模块等)的测试,主要验证程序基本组成单元的功能是否正确
接口自动化测试:介于UI层与Unit层之间的测试,随着前端、后端技术的分离,程序的前端展示、交互界面和后端业务、数据处理通过特定程序接口完成数据的传递,通过接口测试可以简单、精确的
完成前后短数据交互的正确性
五、手工测试VS自动化测试
手工测试VS自动化测
六、接口测试的概念
接口概述
日常生活中的接口
通过接口的连接,负责把水、油、气、风等物(流、气) 体从一处送往另一处
什么是接口:
API全称Application Programming Interface,应用程序编程接口
接口本质上是程序开发的函数或方法,提供参数和返回值
函数/方法:function或method
程序接口示例:函数调用
def test_add():
res1 = add(10,20)
if res1 == 30:
print("加法计算正确")
def test_sub():
num1 = 200
num2 = 100
res2 = sub(num1, num2)
if res2 == 100:
print("减法计算正确")
程序接口示例:QQ登录
七、Web接口
什么是Web接口
基于web程序结构的接口
在客户端和服务器端传输的数据主要包括HTML、图片、视频、CSS、JavaScript等
主要基于HTTP/HTTPS协议
为什么使用Web接口
补充知识点:程序是分层设计的,各层之间有数据传递
表示层:提供给用户的图形界面,以前一般由美工完成
业务逻辑层和数据访问层:实现程序的所有业务逻辑和数据处理,由程序员完成
ç
为什么使用Web接口
随着Web前端技术的发展及HTML5技术的普及,页面的数据展示和交互设计越来越丰富、复杂,为了更好的解决Web前端(表示层)和后端 (业务逻辑层和数据访问层)的数据传递问题,
采用web接口来实现
采用Web接口的好处--分工协作,应用广泛
前端的专业性越来越高(HTML5/Javascript/CSS),由Web前端工程师完成,专注与数据展示和页面的交互设计,只要通过调用web接口就可以获取后端数据
后端仍由程序员完成,不必精通前端技术,只专注与业务逻辑和护具处理的实现,只提供web接口给前端即可
web接口的应用范围更加广泛,由后端开发的接口既可以提供给web页面调用,也可以提供给移动APP调用;既可以提供给公司内部系统调用,也可以提供给公司外部系统调用
什么是Web接口测试
Web接口测试就是测试前端和后端之间的Web接口的正确性
为什么做Web接口测试
可以更早的介入测试
更好的验证系统的安全性和性能
发现更底层的问题
Web接口构成两大要素
协议:在当前web接口中,应用最为普遍的协议是HTTP/HTTPS协议
数据格式:JSON是目前最为流行的接口数据传输的格式之一
Web接口主要测试点
功能测试:
业务流程测试、特殊字符、参数类型、必填/可选参数、边界值
性能测试:
响应时间、并发数、吞吐量
安全姓测试:
敏感信息加密、必要参数后端校验、恶意请求处理
八、接口测试常用工具
接口测试工具:
提供的功能相对比较简单,可以模拟和发送HTTP请求,并显示返回接口数据。如:Postman、HttpRequester
接口自动化测试工具:
功能更加强大,一般提供用例的批量执行、接口返回结果的断言以及测试报告的生成等,如:Jmeter、soapUI、Robot Framework
接口性能测试工具:
主要用于测试接口的性能测试,验证接口处理并发的能力,如Jmeter、LoadRunner、soapUI
接口测试简单示例:
提示:本教程为系列教程,如感觉不错,请您持续关注本博客。