postman+newman+node.js+git+jenkins实现接口自动化持续集成

缺少的配图会在后期慢慢更新出来

1 首先我们来说说postman+newman+node.js+git+jenkins它们之间的关系。首先jenkins只支持命令行模式,包含win的和linux的。postman的命令行运行环境是newman,而newman又依赖于node.js。

2 以上软件都是开源的,大家百度一下很容易找到。

jenkins 地址 https://jenkins.io/download/

其中jenkins下载war包放入tomcat启动.

在配置上win环境和linux配置略有不同。

1 linux需要建立一个账号名Jenkins,并且提升至root权限,用此jenkins账号生成git秘钥对,否则有时候无法拉取git的分支。这一点我有疑问,运维大神可以出来指点指点。

2 在节点配置上linux需要将全路径配置上,否则会报错。而win换将貌似不需要

3 我的测试环境和生产环境是一样的,开发并没把加密拿掉 ,索性postman支持js代码,可以实现AES加密

下边是解密

4 postman写成的脚本导出到本地git仓库中,当然还有你的环境集合。这里多说一嘴,postman并不适合做多接口串行,当然不是不能做,例如可以使用  pm.globals.set(变量名, 变量值) 设置到环境变量中 然后在其他脚本中进行引用就行了,但是如果入参和断言需要到数据库取值的情况postman就不大灵活了,当然postman也有对应的插件可以支持简单的数据库增删改查。总之工具是没有代码来的方便的,这也是我工作中逐渐放弃工具转向代码的原因,我认为python是对测试比较友好的,语法简单,资源丰富。有兴趣的不妨去学习下。

5 如果你本地安装的有newman和node.js也可以在推送git之前对脚本先行调试

dos/shell 中cd到脚本所在目录  newman run 脚本名 -e 环境文件名 -d 数据文件名 -r html

6 jenkins 的git以及邮件配置

1  邮件配置,当脚本运行之后形成的测试报告会以邮件的方式发送给指定邮箱

系统管理中》》》》》Jenkins Location中配置jenkins的url路径以及管理员邮箱,此邮箱也是下边邮件配置的使用邮箱

    

 

邮件通知中 配置stmp邮件服务器

点击 邮件通知中  高级  进行具体的邮件通知配置

7 jenkis中git的配置

进入系统管理 》》》》》全局工具配置

配置jenkins服务端的git路径

配置jenkins凭据 就是将git的私钥添加到jenkins的凭据中去

选择认证方式 填写git私钥

在jenkins工程构建中  配置git

开始构建后可以看到已经成功拉取到git分支上的文件

拉取对应的git对应的分支

安装git parameter插件  然后构建中 选择参数化构建

配置git parameter  参数

在源码管理中配置分支变量

返回工程中 立即构建  变成  Bulid with Parameters

无论是接口自动化,UI自动化,app自动化都要考虑到公司的实际情况来实行,其中接口自动化的收益最高,但是展示的结果上来看是没有UI自动化来的直观、

接口自动化分单接口,多接口,或者两者的混合。

单接口自动化注重单接口的精度,比如边界等价,以及单接口内参数的组合等

多接口自动化注重业务场景,接口的返回值要能向下延伸

其中单接口的见效最快。

总之自动化只是一种概念,具体采用哪一种框架来实现,可以根据实际情况来实现。

原文地址:https://www.cnblogs.com/yuan-x/p/12178497.html

时间: 2024-10-14 19:25:30

postman+newman+node.js+git+jenkins实现接口自动化持续集成的相关文章

Jmeter+Ant+Jenkins接口自动化持续集成环境搭建(Linux)

一.安装说明 系统环境:CentOS release 6.4 JDK版本:jdk1.8.0_181 Jmeter版本:apache-jmeter-3.0 Ant版本:apache-ant-1.9.13 Jenkins版本:jenkins-war:2.138.1 二.安装JDK 将jdk-8u181-linux-i586.tar.gz解压后移动到指定目录,然后将以下内容加入/etc/profile文件内 1 #jdk 2 JAVA_HOME=/usr/java/jdk1.8.0_181 3 JRE

使用 Jenkins 搭建 iOS/Android 持续集成打包平台【转】

背景描述 根据项目需求,现要在团队内部搭建一个统一的打包平台,实现对iOS和Android项目的打包.而且为了方便团队内部的测试包分发,希望在打包完成后能生成一个二维码,体验用户(产品.运营.测试等人员)通过手机扫描二维码后就能直接安装测试包. 该需求具有一定的普遍性,基本上所有开发APP的团队都可能会用到,因此我将整个需求实现的过程整理后形成此文,并且真正地做到了零基础上手,到手即飞.开箱即用,希望能对大家有所帮助. 首先,先给大家展示下平台建设完成后的整体效果: 该平台主要实现的功能有3点:

Net 项目构建基于Jenkins + Github + Mono 的持续集成环境

Net 项目构建基于Jenkins + Github + Mono 的持续集成环境 阅读目录 1 安装 2 配置 3 测试 在Redhat enterprise 6.5 的服务器上,为在gutub 上的 .net 项目构建一个持续集成环境,用到了Jenkins和mono.因公司的服务器在内网,访问外网时要通过代理,所以在很多步骤都加上了代理,如果你的服务器可以直接访问外网,则可以去掉代理. 回到顶部 1 安装 首先要在Redhat服务器上安装必要的工具. 1.1 安装Java 先检查版本,要求1

Jenkins构建Android项目持续集成之findbugs的使用

题外话 这篇本来和之前的系列要一起出的,但是因为中间公司要发布一个版本,给耽搁了,今天工作做完了,又闲了下来.所以就又来继续jenkins构建Android项目持续集成系列的findbugs篇. Findbugs简介 关于findbugs的介绍,可以自行百度下,这里贴下百度百科的介绍.findbugs是一个静态分析工具,它检查类或者 JAR 文件,将字节码与一组缺陷模式进行对比以发现可能的问题.这组缺陷模式是可配置的,通过配置,可以过滤掉一些我们不想或不需要检测的问题. findbugs在gra

使用postman+newman+jenkins实现接口自动化 (待更新~)

一.环境准备 安装好node.js  安装好newman  二.本机调试脚本 了解命令行执行脚本    从postman导出脚本-->本机调试生成报告 1~2操作步骤包含本地newman生成html:https://www.cnblogs.com/miaomiaoka/p/11168642.html 将本地脚本 导出到github上,通过github在jenkins添加 1.Github新建一个远程仓库 点击加号,选择[new repository]  2.创建完成 复制 3.Cmd命令行 cd

Node.js中的模块接口module.exports浅析

在写node.js代码时,我们经常需要自己写模块(module).同时还需要在模块最后写好模块接口,声明这个模块对外暴露什么内容.实际上,node.js的模块接口有多种不同写法.这里作者对此做了个简单的总结. 返回一个JSON Object 如下代码是一个简单的示例. 1 var exp = { 2 "version": "1.0.0", 3 "function1": null, 4 "module1": null, 5 };

在Maven+Spring项目中使用Node.js的Gulp进行前端自动化构建

刚开始打算进行前后端分离开发,后来发现在使用JSP或者Freemarker做动态页面时,想发挥这些自动化构建工具牛逼闪闪的livereload功能并不是那么的轻易,因为我们必须还得调教它们去调用Java容器.现在全球社区似乎还没有成熟的插件可以自动帮我们调教Java容器,百度Fis的Jello也只是做了一下velocity的自动化,自己写感觉就是自虐,所以在这个问题上倒不如把Gulp当成一个Maven来使用,反正J2EE开发人员应该大都习惯了修改代码之后漫长无尽的build.相反,如果对Gulp

Node.js连接Mysql,并把连接集成进Express中间件中

引言 在node.js连接mysql的过程,我们通常有两种连接方法,普通连接和连接池. 这两种方法较为常见,当我们使用express框架时还会选择使用中间express-myconnection,可以单独对mysql配置,也可以把connection集成到express中间件中. 最后送上一个node.js 连接各种主流数据库示例代码. 前提条件 1.安装mysql对应的驱动,npm install mysql 2.安装第三方插件express-connection, npm install e

Docker——Jenkins + Git + Registry构建自动化持续集成环境(CI/CD)

前言 在互联网时代,对于每一家公司,软件开发和发布的重要性不言而喻,目前已经形成一套标准的流程,最重要的组成部分就是持续集成(CI)及持续部署.交付(CD). 本文基于Jenkins+Docker+Git\Svn实现一套CI自动化发布流程,同时支持撤回. 一.发布流程设计 工作流程: 开发人员提交代码到Git或Svn版本仓库: Jenkins人工/定时触发项目构建: Jenkins拉取代码.代码编码.打包镜像.推送到镜像仓库: Jenkins在Docker主机创建容器并发布. 二.环境设计 1.