一、接口分类,流程,用例设计

接口分类:

外部接口:被测系统与外部其他系统之间的接口。

承保系统(被测系统),核算系统。

内部接口:被测系统内部各个子模块之间的接口。

承保系统(A模块,B模块)

测试接口重点:检查接口参数的正确性,接口功能的正确性,输出结果的正确性,以及对各种异常场景的容错处理和权限控制。

接口测试流程:

1.拿到api接口文档(从开发拿或抓包获取),熟悉接口业务,接口地址,鉴权方式,入参,出参,错误码,其他的特别的需求。

2.编写接口测试用例以及评审

编写思路:

正例:输入正确的入参,接口正常返回。

反例:

鉴权反例:为空,错误,过期,.....

参数反例:必填,参数类型异常,参数长度异常,错误码覆盖。

其他场景:接口黑名单,接口调用次数限制,分页场景测试(负数页,0,1,5,10,100)。

3.使用接口测试工具Postman,Jmeter执行接口测试。

4.Postman+newman+jenkins+git实现持续集成。(输出报告和电子邮件)

二、Postman接口测试工具

Postman+newman+jenkins+git

Jmeter+Ant+Jenkins+Git

Postman下载和安装:https://www.postman.com/downloads/

Postman注册和登录。

token鉴权码:(大部分,cookie,session,签名)

csrf_token:一般情况下有效期是7-15天。

access_token:一般情况下有效期是10分钟-2小时

三、Postman工具详解

请求页签:

params:get请求传参。

Authrization:鉴权

Headers:请求头

Body:Post请求传参

form-data:可以传输key=value还可以传输文件。

x-www-form-urlencoded:只能传输key=value

raw:Text,javascript,JSON,html,XML

binary:把文件当成二进制的方式传输。

Pre-request-script:请求之前的脚本。

Tests;请求之后的断言。

Setting:设置

Cookies:Postman管理Cookie信息。

响应页签:

Body:返回的信息

Pretty(各种格式查看返回数据)

Raw(文本格式)

Preview(网页)

Cookie:响应Cookie

Headers:响应头

Test Results:测试结果

200 响应码

OK 响应信息

237MS 响应时间

343B 响应内容大小

四,接口关联

第一种方式:JSON提取器

1 //打印

2 console.log(responseBody);

3 //JSON提取器:把返回的结果转化成JSON对象

4 var jsdata = JSON.parse(responseBody);

5 //取值,并且设置为去全局变量

6 pm.globals.set("access_token",jsdata.access_token);

第二种方式:正则表达式提取器

1 //打印

2 console.log(responseBody);

3 //正则表达式提取器,match匹配,new RegExp新建正则表达式

4 var data = responseBody.match(new RegExp('"access_token":"(.*?)"'));

5 //取值并设置为全局变量

6 pm.globals.set("access_token",data[1]);

鉴权方式:签名sign

五全局变量和环境变量

全局变量可以在所有的接口请求里面使用。通过{{}}取值。

作用:可以使用全局变量保存在所有接口都需要使用的变量

环境变量可以在当前环境的所有接口请求使用,通过{{}}取值。

作用:可以保存多种环境。可以让接口在多种环境中测试。

开发环境,测试环境,生成环境,预发布环境。

问题:

1.创建和编辑标签接口参数必须唯一,(动态参数)

2.删除接口,ID不能重复,这个ID必须存在

Postman+newman+jenkins+git实战的更多相关文章

  1. Postman+Newman+jenkins实现API自动化测试

    最近自己在学习用postman+newman+jenkins实现API自动化测试,这里做个回顾和记录.(此次是在windows上进行的环境搭建) 一.说明 1.大致思路:利用postman做接口调试所 ...

  2. Postman + newman + jenkins 的API自动化测试应用

    一.环境配置 Postman postman 的具体使用可以参考另外一篇文章:postman 做接口测试之学习笔记 Newman 第一步,安装nodejs. 第二步,在nodejs命令行安装newma ...

  3. postman+newman+jenkins环境部署

    postman+newman+jenkins 环境部署 2017年4月27日 14:33 阅读 11 新浪博客 1.postman: http://itfish.net/article/59864.h ...

  4. Postman+Newman+Jenkins APItest自动化集成测试

    postman做接口测试简单易用很容易上手,但是接口越来越多,每次手动点击runner进行测试不灵活,最近就研究了下newman,利用newman实现接口的自动化测试,但是每次需要命令行操作也不方便, ...

  5. postman+newman+jenkins

    1.postman: http://itfish.net/article/59864.html(网上参考资料) 1)安装(要用爬墙软件): 进入下面地址https://chrome.google.co ...

  6. Postman+newman+jenkins构建

      最近忙着项目接口测试,经过不同工具的对比,发现postman使用起来挺顺手的,所以马上决定使用这个工具进行接口测试工作.刚开始的时候,了解了下接口测试的相关信息,直接着手编写接口测试的测试用例信息 ...

  7. Web API 持续集成:PostMan+Newman+Jenkins(图文讲解)

    本文由葡萄城技术团队于博客园原创并首发 转载请注明出处:葡萄城官网,葡萄城为开发者提供专业的开发工具.解决方案和服务,赋能开发者. 上篇文章我们已经完成了API测试工具选型,接下来是一系列周期性的开发 ...

  8. postman+newman+jenkins 接口自动化问题

    声明:个人原创,转载请注明 1.安装postman工具 下载地址:https://www.getpostman.com/点击下载,选择自己的系统,我的是windows系统,64位 2.postman ...

  9. postman+newman+jenkins接口自动化

    postman用来做接口测试非常方便,接口较多时,则可以实现接口自动化 目录 1.环境准备 2.本机调试脚本 3.集成jenkins 1.环境准备 1.1安装nodejs6.0+ 安装nodejs6. ...

随机推荐

  1. 6月11日 python复习 mysql

    01. 列举常见的关系型数据库和非关系型都有那些? 1.关系型数据库通过外键关联来建立表与表之间的关系,---------常见的有:SQLite.Oracle.mysql 2.非关系型数据库通常指数据 ...

  2. 用ssh无密码登录远程linux

    登录linux常用的方式是:用户名+密码,多次输入密码非常不方便,所以推荐使用密钥登录,安全又方便,下面我说下怎么使用密钥登录. 生成密钥 使用密钥登录首先需要本地有ssh密钥 如果本地没有密钥,那么 ...

  3. 【Python 第0课】Why Python?

    为什么用Python作为编程入门语言? 原因很简单. 嗯...原因就是,很简单... 每种语言都会有它的支持者和反对者.去Google一下"why python"(程序员准则:要G ...

  4. JSP内置对象(4个作用域)

    9个内置对象: 4个作用域:表示这4个对象可以存值,但取值范围有限定(setAttribute/getAttribute) pageContext request session applicatio ...

  5. java字节流和字符流,以及java文件操作

    A.首先说字节流:1.字节流在操作的时候不会用到缓冲区(也就是内存)2.字节流可用于任何类型的对象,包括二进制对象3.字节流处理单元为1个字节,操作字节和字节数组.InputStream是所有字节输入 ...

  6. kafka unclean 配置代表啥,会对 spark streaming 消费有什么影响?

    unclean.leader.election.enable 为true的话,意味着非ISR集合的broker 也可以参与选举,这样有可能就会丢数据,spark streaming在消费过程中拿到的 ...

  7. 什么叫线程安全?servlet 是线程安全吗?

    线程安全是编程中的术语,指某个函数.函数库在多线程环境中被调用时,能够 正确地处理多个线程之间的共享变量,使程序功能正确完成. Servlet 不是线程安全的,servlet 是单实例多线程的,当多个 ...

  8. String常用方法解析

    package com.javaBase.string; import java.util.Locale; /** * 〈一句话功能简述〉; * 〈String类中常用的方法整理〉 * * @auth ...

  9. spring-boot-learning-使用jsp

    加入依赖: <!-- jsp--> <!--引入Spring Boot内嵌的Tomcat对JSP的解析包--> <dependency> <groupId&g ...

  10. okayNav jQuery 插件怎么使用

    首先到 https://github.com/VPenkov/okayNav 这个网站里面把代码下载下来 下载之后解压出来,解压后打开文件app 然后创建一个HTML文档 然后倒入css的样式 样式: ...