JMeter做接口测试几个简单实例

这次小项目是基于HTTP协议的接口,通过JMeter来完成一次基本的接口测试,完整复习一下JMeter的基本操作。
这次练手用的项目,提供的接口文档挺详细的,练手针不戳~
在实际项目中,测试也要先从开发那拿到接口说明书,分析熟悉业务后,写接口的测试用例,最后再在JMeter里写接口测试的脚本。
设置如下

1、登录(POST)

登录

登录接口

简要描述:

  • 登录接口

请求URL:

  • http://api.nnzhp.cn/api/user/login

请求方式:

  • post

参数名
必选
类型
说明
username
string
用户名
passwd
string
密码
登录接口POST请求,入参 username 和 passwd 都是必填项。
在线程组下添加一个察看结果树和HTTP请求默认值,前者可以方便查看所有请求的结果,后者在跑多个同域名的接口的测试的时候,可以设置默认值很实用。

接着就可以做HTTP请求,并加上相应的断言,看用错误密码登录和成功的登录的响应是否符合预期

具体如下: 
 

 

错误的密码时,登录失败,返回的响应体符合断言的预期:

请求正确,登录成功,断言通过:

 

2、获取学生信息(GET)

获取学生信息

简要描述:

  • 获取学生信息接口

请求URL:

  • http://api.nnzhp.cn/api/user/stu_info

请求方式:

  • get
参数名必选类型说明
stu_name string 学生姓名
从接口文档中,我们可以看到获取学生信息用到的是GET方式的请求,入参中 stu_name 为必填项,返回参数太多,就不细说了。

3、添加学生信息(POST,JSON)

添加学生信息

简要描述:

  • 添加学生信息,这个接口是用来讲入参是json类型的

请求URL:

  • http://api.nnzhp.cn/api/user/add_stu

请求方式:

  • post

  • 入参是json类型

参数名必选类型说明
name string 学生姓名
grade string 班级
phone int 电话
sex string 性别,如果不传默认为男
age int 年龄,如果不传默认为18
addr string 地址,如果不传默认为北京市昌平区
在添加学生信息的接口中,用到的也是POST请求方式,但与登录接口不同的是,它的入参是JSON类型的,接口文档中有1个JSON请求示例,我们可以直接复制过来,简单修改一下即可。如下:

  

在这里,由于这个学生信息已存在系统中了,因此返回添加失败的结果。所以,我需要添加1个新的学生信息,另外,这里需要调整下编码格式为utf-8,否则添加的学生信息会出现中文乱码。

 

4、学生充值金币(POST,Cookie)

学生金币充值

简要描述:

  • 学生金币充值接口,这个接口是为了讲添加cookie以及身份验证的

请求URL:

  • http://api.nnzhp.cn/api/user/gold_add

请求方式:

  • post

参数:

该接口有权限验证,需要admin用户才可以做操作,需要添加cookie

cookie中key为登录的用户名,value从登录接口中获取,登陆成功之后会返回sign

参数名必选类型说明
stu_id int 学生id
gold int 金币数量
这个接口有权限验证,需要admin用户登录成功后才可以进行充值,另外,在入参 stu_id 和 gold 中,我们发现 stu_id 指的是学生ID,这里其实就是最开始 获取学生信息 接口返回结果中的id字段,如下:

 

 

 

5、获取所有学生信息(GET,header)

获取所有学生信息

简要描述:

  • 这个接口是为了说明怎么添加header信息的

请求URL:

  • http://api.nnzhp.cn/api/user/all_stu

请求方式:

  • get

需要添加header信息,key为Referer value 为http://api.nnzhp.cn/

参数:

 从接口文档中,我们了解到,要获取所有学生信息,需要添加请求信息头,因此,我们创建一个线程组,在线程组下依次添加HTTP信息头管理器、HTTP请求、察看结果树,如下

 

 

6、文件上传(POST)

文件上传

简要描述:

  • 上传文件接口

请求URL:

  • http://api.nnzhp.cn/api/file/file_upload

请求方式:

  • post

参数名必选类型说明
file file 文件

在上传文件接口中,需要注意的是这里的入参是file类型的,因此,我们需要准备一个待上传的文件。

 

 

 

posted @ 2020-07-12 16:04  HEREISDAVID  阅读(2131)  评论(0编辑  收藏  举报