ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

postman实战与newman安装

2022-01-08 02:00:33  阅读:207  来源: 互联网

标签:实战 postman 信息 书籍 newman ID 输入 请求


一、postman实战

collection:

1、组织所有的测试用例批量执行
2、解决API测试中参数关联这部分

接口测试的对象:
1、产品在浏览器可以访问,那么可以即使没有接口文档,我们可以使用network or charles获取网络请求
2、是服务,但是都是服务之间的调用,在浏览器无法访问

请求地址信息:

查看所有书籍:/v1/api/books

添加书籍:/v1/api/books 

{

      "author": "wuya",

      "done": true,

      "name": "Python接口自动化测试实战"

}

查看具体的书:/v1/api/book/{{bookID}}

删除书籍信息:/v1/api/book/{{bookID}}

1、图书管理系统

首先在postman中新建一个有关书籍的集合,获取请求地址信息

 

1.1 get(获取书籍信息)

1)新建测试用例

输入请求地址,请求方式为"GET",Body中输入书籍作者、书名,更换名称保存运行

 

2)断言书籍信息

Tests中输入信息,a可以替换成任何字母信息

 

3)value的数据结构

是一个数组[],数组里面是一个json{"a":1,"b":2,"c":3}

不论在数学还是计算机里,索引都是从0开始的,我们想获取数组里面的JSON的数据,前提是进入到数组,

如果是第一位数组,进入的方式是[0],以此类推,如果是第九位,那么是[8],

进入到数组后,获取JSON里面的数据,我们就可以通过.key,如获取3,那么就是.c

运行时可以先查看全部的信息,之后输入0,最后输入想要的数字,一一验证

1.2 post(添加新的书籍)

1)新建用例

使用之前的地址和Body内容,修改请求方式为POST,数据格式为JSON

 

2)断言

(1) 关联之前书籍用例,点击集合后的...,运行查看业务状态码

(2) 在Tests中输入信息,验证响应数据,由于书籍的ID是动态参数,所以需要定义一个新的全局变量来获取书籍的ID

 

 

1.3 查看添加的具体书籍(GET)

1) 选择GET请求

在请求地址中将books修改为book,添加书籍ID{{bookID}},(单独运行无法响应,所以状态码为404)

由于需要查看的书籍的ID是一个动态参数,因此需要调用全局变量bookID来作为被查看的书籍的ID信息

 

2) 断言

验证书籍的ID与作者信息

 

 

 

1.4 修改已有书籍信息(put)

1) 请求方式为PUT

将具体书籍ID输入,Body中输入需要修改的内容,Tests中输入

 

2)断言

修改信息

1.5 删除书籍(delete)

1) 输入请求地址,修改方式为DELETE

 

2) 运行集合,查看状态码信息

 

 

 3) 之后重新点进链接,在Tests中输入信息

 

 

二、动态参数的关联

1) 由于书籍中的测试用例的断言里验证协议状态码的部分是一致的,所以可以将协议状态码的断言分离出来

复制协议状态码,点击书籍的集合,点击edit,将协议状态码添加到tests中,点击save保存

 

2) 在Edit中添加响应时间的断言进去,保存运行

三、node.js的安装以及环境验证

下载node.js安装包

在本机C盘中依照提示安装,可以在控制台中输入:npm检测

 

 

四、newman安装以及环境验证

1、使用工具newman就可以生成测试报告(自动化测试的结果)

使用newman的前提是需要安装node.js,通过node.js来安装newman的工具,安装newman的命令:

npm install -g newman --registry=https://registry.npm.taobao.org

 

 2、验证newman安装情况

实战:

使用newman来生成测试报告(协议,postman)

1、将集合中测试完成的用例导出

 

 2、可选择本机中合适的位置

 

 3、进入放置的c盘,运行书籍服务

 

标签:实战,postman,信息,书籍,newman,ID,输入,请求
来源: https://www.cnblogs.com/Kaylee/p/15777357.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有