一、接口的分类:
最常用的两种接口webservice接口和http api接口;
1、webservice接口走soap协议通过http传输,请求报文和返回报文都是XML格式,现在测试的时候都通过工具才能进行调用,测试;
2、http api接口是走http协议,通过路径来区分调用的方法,请求报文都是key-value形式的,放回报文一般都是json串,有get和post等方法,也是最常用的两种请求方式;

二、接口基本属性
接口返回的数据都是json也就是通用的数据类型;
json都是以key value键值对形式存在的;
接口测试的话,必须得有接口文档;
1、请求URL
2、请求方式,get,post...
3、入参(请求参数)
4、返回参数
5、请求、返回示例
6、状态码说明
如果是get请求,直接用浏览器就能发,不需要借助工具;
发送请求,请求UR路径L后面跟参数,URL路径与参数之间用?连接;
要注意的是?号必须是英文的,参数与参数之间连接用&符号,value值是中文也不需要加引号

三、接口测试的必要性:
1、发现页面上操作发现不了的bug
2、检查系统的异常处理能力
3、检查系统的安全性、稳定性
4、前端随便变更,接口测试好了,后端不用变
接口签名:
为了防止别人恶意刷请求。
例子:http://api.nnzhp.cn/reg?username=xxx&passwd=xxx&
sign=557c99d9a387a6173b99bf2a3a05a5de(sign的值有自己的一套规则进行加密)

四、get请求和post请求的区别:(网上大部分写的安全和长度问题基本不存在)
get请求没有请求体,只有请求头,get请求的参数只能写在URL里面或者cookie里面;
post请求参数放在请求体里面;

五、接口测试工具
接口测试工具postman
postman发post请求,入参形式为json的,body里面选择raw,
最后面选择json(application/json)
postman cookie写在headers里面
cookie : 存在本地的一个键值对
session : 存在服务端的一个键值对
ls -l |wc -l #查看当前目录下有多少个文件

接口测试工具jmeter
jmeter响应数据乱码解决方法:
找到jmeter安装目录下的配置文件jmeter.properties搜索
sampleresult.default.encoding=ISO-8850-1前去掉#号后
改成sampleresult.default.encoding=utf-8;改完后保存重启
jmeter生效;
jmeter入参传json的请求:
选body data----写入键值对即可(注意格式,符号都是英文的,最后一个键值对后面不要跟逗号)

jmeter上传文件请求:
选files upload,文件名称写文件绝对路径,参数名称写file,
3.3或以上的版本需要写mime;

jmeter下载文件请求:
1、添加线程组 :右键测试计划,添加-Threads(Users)-线程组;
2、添加一个http请求:右键线程组,添加-Sampler-HTTP请求;
3、写好http请求中的url和路径;
4、添加beanshell,获取到返回的文件内容,保存到一个文件里面。右键线程组,添加-Sampler-BeanShell Sampler,beanshell代码如下:(死格式直接复制改路径就完事了)
import java.io.*;

byte[] result = prev.getResponseData(); //这个是获取到请求返回的数据,prev是获取上个请求的返回

String file_name = "C:\\Users\\Administrator.USER-20171028IA\\Desktop\\BaiDu.jpg"; //代表存放文件的位置和文件名

File file = new File(file_name);

FileOutputStream out = new FileOutputStream(file);

out.write(result);

out.close();

jmeter传带有cookie的请求:
请求-右键-添加-配置原件-HTTPcookie管理器,写入key,value值,域写host即可;

jmeter传带有headers的请求:
请求-右键-添加-配置原件-HTTP信息头管理器,名称写入referer,值写请求头和host即可;

六、jmeter参数化
1、文件参数化
jmeter右键-添加-配置原件-CSV data set config
filename写入参数化文件的绝对路径(win10参数化文件放到jmeterbin目录下写文件名即可)
file encoding 编码写不写无所谓
variable names (comma-delimited)写入一个合适的变量名即可
请求里面需要参数化的key或者value写入${变量名}即可
delimiter(use‘\t’for tab)参数多列的情况以什么分隔,默认逗号分隔
allow quoted data? 不用管
recycle on eof? 参数化文件读完了后是否从头开始取(true是、false否)
stop thread on eof? 参数化文件读完后是否停止测试(true是、false否)
sharing mode all全部线程组生效/多个线程/单个线程(用处不大)

2、用户定义的变量
线程组右键-添加-配置原件-用户定义的变量
例如对host进行定义成一个变量,这样所有请求都可以用直接引用,非常的方便。

3、函数助手
jmeter顶部taps-选项-函数助手对话框-选择一个功能-_random
写入最小值和最大值后点击生成-复制生成的函数字符串,后面
直接引用就行(这样可以生成随机数);

jmeter顶部taps-选项-函数助手对话框-选择一个功能-_time值写
入要获取时间的格式:yyyy-MM-dd-HH-mm-ss(年月日时分秒
,可选择性输入取对应的时间)点击生成-复制生成的函数字符串
即可引用(生成当前时间)

七、jmeter关联
关联是什么:把上一个请求返回的数据,拿到下一个请求使用
从中取关联值请求的请求-右键-添加-后置处理器-jp@gc_json path extractor(插件,需要自己安装)
例子: {
"error_code": 0,
"login_info": {
"userId": 1,
"sign": "d58e3582afa99040e27b92b13c8f2280",
"login_time": "20171207113501"
}
}
要取sign的值:$login_info.sign ($代表返回数据)
destination varlable name:(变量名写入) sign
jsonpath expression:$login_info.sign
default value:(没有找到取什么值)error 可自定义
后面直接引用变量名即可:${sign}

有啥不懂得可参考博客:http://www.nnzhp.cn/archives/category/test

接口测试工具postman/jmeter基本使用的更多相关文章

  1. 数据接口测试工具 Postman 介绍

    此文介绍好用的数据接口测试工具 Postman,能帮助您方便.快速.统一地管理项目中使用以及测试的数据接口. 1. Postman 简介 Postman 一款非常流行的 API 调试工具.其实,开发人 ...

  2. 接口测试工具---postman下载地址

    接口测试工具---postman下载地址: https://app.getpostman.com/app/download/win64?_ga=2.3555895.622696496.15081214 ...

  3. 接口测试工具(Postman)

    给大家介绍一款HTTP接口测试工具 -- Postman ! 优点: 1. 支持参数名与参数值自定义,无论head还是body 2. 支持多种方法调用,包含get与post 3. 支持鉴权加密,包含b ...

  4. 服务端测试之接口测试工具——postman

    今天跟大家分享一个非常常见大家也非常熟悉的测试工具——postman. 1.安装postman postman是一款功能强大的网页调试与发送网页HTTP请求的Chrome插件.打开chrome浏览器, ...

  5. 接口测试工具Postman接口测试图文教程

    Postman接口测试工具使用 一.前言     在前后端分离开发时,后端工作人员完成系统接口开发后,需要与前端人员对接,测试调试接口,验证接口的正确性可用性.而这要求前端开发进度和后端进度保持基本一 ...

  6. (转)接口测试工具Postman使用实践

    一.接口定义 软件不同部分之间的交互接口.通常就是所谓的API――应用程序编程接口,其表现的形式是源代码. —— [ 百度百科 ]我们常说的接口一般指两种:(1)API:应用程序编程接口.程序间的接口 ...

  7. 接口测试工具——postman

    Postman 之前是作为Chrome 的一个插件,现在要下载应用才能使用. 以下是postman 的界面: 各个功能区的使用如下: 快捷区: 快捷区提供常用的操作入口,包括运行收藏夹的一组测试数据, ...

  8. 接口测试工具postman

    一. 安装 1. 免费官网链接:https://www.getpostman.com/postman,下载好后双击.exe程序安装即可 2. 注意事项:建议安装在非系统盘,即C盘以外的盘,路径最好用全 ...

  9. 关于接口测试工具postman与DHC介绍

    一.Postman背景介绍 用户在开发或者调试网络程序或者是网页B/S模式的程序的时候是需要一些方法来跟踪网页请求的,用户可以使用一些网络的监视工具比如著名的Firebug等网页调试工具.今天给大家介 ...

随机推荐

  1. Android开发 ---基本UI组件7 :分页功能、适配器、滚动条监听事件

    效果图: 1.activity_main.xml 描述: 定义了一个按钮 <?xml version="1.0" encoding="utf-8"?> ...

  2. NOIP2012提高组 Day 2 Problem 2 借教室

    原题 题目描述 在大学期间,经常需要租借教室.大到院系举办活动,小到学习小组自习讨论,都需要向学校申请借教室.教室的大小功能不同,借教室人的身份不同,借教室的手续也不一样. 面对海量租借教室的信息,我 ...

  3. 分页控件 AspNetPager的使用

    1.引用AspNetPager.dll插件 1.下载AspNetPager.dll插件到bin文件夹中. 2.在“引用中添加引用”(不然报错:未能在全局命名空间中找到类型或命名名空间名称“Wuqi”) ...

  4. ProtocolBuffer for Objective-C 运行环境配置及使用

    1,我已经安装了brew.pod.protoc,如果您没安装,请按照下面方式安装. 安装很简单,对着README操作一遍即可,我贴出自己在终端的命令行.需要输入的命令行依次为:1)打开终端,查看mac ...

  5. mql初学事物和视图

    1.概念:一条或者多条sql语句的集合! 事务:就是一堆操作的集合,他们同生共死.要么都执行成功,要么都执行失败 2.事务的特性 ACID A:原子性 完整的,不可分割的 原子性 (Atomicity ...

  6. 《JavaScript 设计模式与开发实战》第一部分(1、2、3章)笔记

    第1章:面向对象的JavaScript 动态类型和鸭子类型 编程语言按照数据类型大体可以分为两类: ① 静态类型语言:在编译时便已确定变量的类型. ② 动态类型语言:变量类型要到程序运行的时候,待变量 ...

  7. 前端基础----CSS语法、CSS四种引入方式、CSS选择器、CSS属性操作

    一.CSS语法 CSS 规则由两个主要的部分构成:选择器,以及一条或多条声明. 例如: h1 {color:red; font-size:14px;} 二.CSS四种引入方式 1,行内式 行内式是在标 ...

  8. github/gitee使用办法

    github/gitee只要添加SSH公钥都是可以连接上的 比如把某个文件上传gitee 首先肯定要有权限    否则会一直提醒failed伤心心 接下来说常用语句 git config --list ...

  9. oracle命令1

    基础查询  查询当前用户 show user; 查询当前用户下的表 select * from tab; 清屏 host cls: clear; --查询所有的员工信息 select * from e ...

  10. redis 4.x 安装哨兵模式 sentinel

    1.下载 http://download.redis.io/releases/redis-4.0.11.tar.gz 2.解压 tar zxvf redis-4.0.11.tar.gz 3.安装 cd ...