DownloadPostmanApp
https://www.getpostman.com/downloads/

https://www.getpostman.com/downloads/canary

什么是断言(Assert):预期结果与实际结果的判断。

  预期结果 == 实际:用例通过,写到报告里

  预期 != 实际:用例失败写到报告里

  一般情况下:断言只针对状态码 (200,400,500等)和Responses的Body(body中的json解析成JS对象)

  

postman的Test功能:可以去执行js的一个隔离的环境

    设置全局变量(有些时候一个值会关联到所有脚本的测试 需要定义为全局变量)

    设置环境变量(通过环境变量可以让脚本既能在测试环境执行又能在正式环境执行)

    拿到并处理请求的响应

    定义测试检测点和断言(注意 js里面 三个等于号代码类型和值完全匹配)

sandbox:在postman中运行一些JavaScript代码的地方(可以使用chai语法 独立版Postman才能使用的)

  公共库(JavaScript)

  环境变量与全局变量

  动态变量

  操作cookie

  获取查看请求以及响应

  读取数据文件

  相关文档:https://learning.getpostman.com/docs/postman/scripts/postman_sandbox_api_reference/

  

  //chai语法
  pm.test("返回正确的状态码", function () {
    pm.expect(pm.response).to.have.status(200);
    pm.expect(pm.response).to.be.success;
  });

  Postman做ui测试

  思路

    发请求去拿到网站响应的->html

    解析html标签,判断一些元素是否显示

  目的

    快速检查ui是否正确

  用到的库 https://cheerio.js.org/

  //加载(请求)cheerio
  var cheerio = require('cheerio');
  $ = cheerio.load(responseBody);

  pm.test("返回值是否是成功200",function(){
    //返回值是否是成功200
    pm.response.to.be.success;
  });

  pm.test("必须包含4门课程",function(){
  //判断网页中是否包含4个.$ervive-block-in 类的标签
    pm.expect($('.servive-block-in').length === 4)
  });

常见的请求方法:GET :获取资源可以获取一组资源也可以获取一个资源。

        POST:创建资源创建一个资源或创建一组资源。

        PUT:和PATCH:更新一些资源。

        DELETE:删除一个资源。

Postman的调试与打印

  鉴权: 有些api在访问之前必须登录

  collection的作用

  容器

  组织业务逻辑

  导入导出

  其他功能,比如监控和mock server

  

  变量:环境变量 本地变量 全局变量

  Global:全局,比如可以将错误提示信息设置为全局变量

  Environment:环境变量,比如可以将测试domain设置成环境变量

  Local:本地变量,一般可以在sandbox中定义

  Data:测试数据中导入的变量,也就是所谓的参数化

  pm.test("请求成请求的状态码是 200", function () {
    pm.response.to.have.status(200);
  });

  var jsonData = JSON.parse(responseBody);

  //获取环境变量注意这个方法没有返回值
  console.log(pm.environment.get('node_name'));

  tests['返回值的name必须跟参数中的name相等'] = jsonData.name === pm.environment.get('node_name');

   

  运行测试用例:

    

  用例运行结果:

  

  构造测试数据:

  将刚才生成的string 新建一个文本文档:

   将制作好的json导入:

  

  点击preview可以预览:

生成测试报告

Postman简单的接口测试的更多相关文章

  1. postman 简单教程-实现简单的接口测试

    最近开始做接口测试了,因为公司电脑刚好有postman,于是就用postman来做接口测试,哈哈哈哈,...postman 功能蛮强大的,还比较好用,下面说下postman如何来测试接口 1.下载po ...

  2. postman简单接口测试

    Postman简单接口测试 1. get请求: a. 选择get请求时,地址栏输入地址,如果需要添加参数,可以直接在地址栏加?后面写参数,也可以在点击params添加参数 b. 在headers中添加 ...

  3. SpringBoot | 第十五章:基于Postman的RESTful接口测试

    前言 从上一章节开始,接下来的几个章节会讲解一些开发过程中配套工具的使用.俗话说的好,工欲善其事,必先利其器.对于开发人员而言,有个好用的工具,也是一件事半功倍的事,而且开发起来也很爽,效率也会提升很 ...

  4. Postman如何做接口测试,那些不得不知道的技巧

    Postman如何做接口测试1:如何导入 swagger 接口文档 在使用 postman 做接口测试过程中,测试工程师会往界面中填入非常多的参数,包括 url 地址,请求方法,消息头和消息体等一系列 ...

  5. pytest.8.使用pytest做简单的接口测试

    From: http://www.testclass.net/pytest/test_api/ 背景 我们现在需要测试v2ex网站的查看论坛节点信息的api.具体如下: 节点信息 获得指定节点的名字, ...

  6. Postman进行webservices接口测试

    1.接口地址 webservices是什么? 更多webservices接口地址访问地址:http://www.webxml.com.cn/zh_cn/web_services.aspx webser ...

  7. 使用postman玩转接口测试

    (一)前言: 之前搞自动化接口测试,由于接口的特性,要验证接口返回xml中的数据,所以没找到合适的轮子,就自己用requests造了个轮子,用着也还行,不过就是case管理有些麻烦,近几天又回头看了看 ...

  8. postman简单教程,使用tests模块来验证接口时是否通过

    接口测试醉重要的就是返回数据的检查,一个简单的接口,我们可以肉眼检查返回数据,但接口一旦多起来且复杂,每次的检查都会很费劲,此时我们就需要postman 的tests模块来代替 概念: Postman ...

  9. postman简单教程,如何在请求中引用上次请求返回的值

    做接口测试,一定会遇到这种情况,需要拿上次请求的值在本次请求中使用,比如,我们去测试一个东西,要去登录才能做其他的操作,需要拿到登录返回数据中的某些字段,比如,token啊等... 如果发一次请求,就 ...

随机推荐

  1. leetcode 547朋友圈

    方法一:染色法 类似于岛屿的个数也可以用染色法:通过深度优先搜索来做 使用一个数组来表示当前朋友a是否已经包含到已经遍历的朋友圈中,遍历所有的朋友,如果当前朋友没有在已经访问的朋友圈中,即visite ...

  2. 链表反转 C++

    ListNode* reverse1(ListNode* pHead) { if(pHead == NULL) return NULL; ListNode * p1 = NULL; ListNode ...

  3. LC 470. Implement Rand10() Using Rand7()

    Given a function rand7 which generates a uniform random integer in the range 1 to 7, write a functio ...

  4. vue路由跳转到登录页

    // 第一种 { path:'/', component: require('../components/Login.vue') }, // 第二种 { path: '/', redirect: '/ ...

  5. Zabbix - 实现对磁盘动态监控

        回到目录 前言 zabbix一直是小规模互联网公司服务器性能监控首选,首先是免费,其次,有专门的公司和社区开发维护,使其稳定性和功能都在不断地增强和完善.zabbix拥有详细的UI界面和分组策 ...

  6. 阶段3 3.SpringMVC·_03.SpringMVC常用注解_2 RequestBody注解

    拿整个请求体的数据

  7. Gradle DSL method not found: 'compile()'

    问题描述: 今天在导入第三方库的时候报错:Gradle DSL method not found: 'compile()' 通过网上查询发现是自己导包路径错误:应该导入app下面的build.grad ...

  8. Python 安装 for Linux

    make后报错: Failed to build these modules:_multiprocessing   binascii           zlib 下载http://www.zlib. ...

  9. mariadb数据库(3)连接查询,视图,事务,索引,外键(优化)

    --创建学生表 create table students ( id int unsigned not null auto_increment primary key, name varchar(20 ...

  10. 基于redis的高并发秒杀的JAVA-DEMO实现!

    在Redis的事务中,WATCH命令可用于提供CAS(check-and-set)功能.假设我们通过WATCH命令在事务执行之前监控了多个Keys,倘若在WATCH之后有任何Key的值发生了变化,EX ...