一 接口测试基础
内部接口一般由研发自测
外部接口主要由测试负责
由于开发进度的不同 ,一般接口测试先于功能测试.
1、越早发现BUG,修复成本越低。
越底层发现BUG,修复成本越低。
2.前后端研发是两拨人,一般先进行接口测试,然后再进行功能测试。
3.接口测试可以覆盖更多的异常测试场景。
4.接口测试就是功能测试,省去了前端UI的验证
接口测试的必要性:
1、可以发现很多在页面上操作发现不了的bug
2、检查系统的异常处理能力
3、检查系统的安全性、稳定性
4、前端随便变,接口测好了,后端不用变
5.get请求直接在浏览器中调用即可,不用借助其他工具
向服务端获取数据
post请求:
向服务端发送数据
区别:
GET请求和POST请求的区别:
☆ 1、GET使用URL或Cookie传参。而POST将数据放在BODY中。
2、GET的URL会有长度上的限制,则POST的数据则可以非常大。
现在浏览器技术已基本成熟,get和post都无数据大小限制
3、POST比GET安全,因为数据在地址栏上不可见。
都不安全
4、一般get请求用来获取数据,post请求用来发送数据。
没有严格定义哪种方法进行哪种操作数据方式
6.接口返回信息以json形式展示,json是一种通用的数据类型所有的语言都可以识别处理。
7.HTTP状态码
1、200 2开头的都表示这个请求发送成功,最常见的就是200,就代表这个请求是ok的,服务器也返回了。
2、300 3开头的代表重定向,最常见的是302,把这个请求重定向到别的地方了,
3、400 400代表客户端发送的请求有语法错误,401代表访问的页面没有授权,403表示没有权限访问这个页面,404代表没有这个页面
4、500 5开头的代表服务器有异常,500代表服务器内部异常,504代表服务器端超时,没返回结果
二 .jmeter
一款跨平台,使用简单的压力测试,接口测试工具。
线程组:线程数 -->并发数
上传文件的时候要填写绝对路径 不写绝对路径 默认是在Jmeter的bin目录下查找上传的文件
当响应数据或响应页面没有设置编码时,jmeter会按照jmeter.properties文件中,sampleresult.default.encoding设置的格式解析 默认ISO-8859-1,解析中文肯定出错。
线程组 HTTP请求 查看结果树 配置元件-HTTPcookie管理器 配置元件-HTTP消息头管理器 断言-响应断言
配置元件 - CSV DATA SET CONFIG 用来参数化参数
后置处理器 - json path postprocessor 用来关联接口
配置元件 - JDBC Connection Configuration 用来配置数据库链接地址、数据库驱动
Sampler - JDBC request 用来填写执行的SQL语句
断言:接口执行正确时,无法查看断言结果。当接口失败时,可查看断言。
数据参数化中文乱码解决方法:
1.读文件时,查看结果数中【请求】页签中文乱码 CSV DATA SET CONFIG 中的 file encoding 填写 utf-8
cookie 存在用户本地的键值对
key value
session 存在服务端的一个键值对
正则表达式: "sign": "(.*)",
Jmeter 操作数据库:
引入JAR包 :测试计划
直接把“mysql-connector-java-5.1.7-bin.jar”放在Jmeter目录下的 \lib\ext 这个目录下 貌似测试计划里就不用再导入驱动了
浙公网安备 33010602011771号