REST API 自动化测试 利器Rest Assured(API接口自动化测试框架体系)

现在,越来越多的 Web 应用转向了 RESTful 的架构,很多产品和应用暴露给用户的往往就是一组 REST API,这样有一个好处,用户可以根据需要,调用不同的 API,整合出自己的应用出来。从这个角度来讲,Web 开发的成本会越来越低,人们不必再维护自己的信息孤岛,而是使用 REST API 互联互通
 那么,作为 REST API 的提供者,如何确保 API 的稳定性与正确性呢?全面系统的测试是必不可少的。Java 程序员常常借助于 JUnit 来测试自己的 REST API,不,应该这样说,Java 程序员常常借助于 JUnit 来测试 REST API 的实现!从某种角度来说,这是一种“白盒测试”,Java 程序员清楚地知道正在测试的是哪个类、哪个方法,而不是从用户的角度出发,测试的是哪个 REST API
 Rest-Assured 是一套由 Java 实现的 REST API 测试框架,它是一个轻量级的 REST API 客户端,可以直接编写代码向服务器端发起 HTTP 请求,并验证返回结果;它的语法非常简洁,是一种专为测试 REST API 而设计的 DSL
 使用 Rest-Assured 测试 REST API,就和真正的用户使用 REST API 一样,只不过 Rest-Assured 让这一切变得自动化了

源码地址:
Gitee地址:https://gitee.com/hagyao520/RestAssured.git
GitHub地址:https://github.com/hagyao520/RestAssured.git

框架介绍:

  • Java + Rest Assured + Maven + TestNG + JDBC + Excel+ Git + +Ant + Jenkins

    • 使用Java作为项目编程语言
    • 使用Rest Assured作为API接口自动化项目底层服务驱动框架
    • 使用Maven作为项目类型,方便管理架包
    • 使用TestNG作为项目运行框架,方便执行测试用例,生成测试报告
    • 使用JDBC作为数据库管理工具,方便连接数据库,执行SQL
    • 使用Excel作为用例管理工具,方便编写测试用例,维护测试脚本
    • 使用Git作为仓库管理工具,方便管理项目代码
    • 使用Ant作为Java的build打包工具,方便项目代码打包
    • 使用Jenkins作为自动化持续集成平台,方便自动编译,自动打包,自动运行测试脚本,邮件发送测试报告

主要功能:

 1. 实现了基于Rest Assured,HttpClient等常用接口请求方法的二次封装,包括(SendPost,SendGet,GetJsonResult)等,使用起来更简便
 2. 实现的基于Oracle,MySql等常用数据库SQL操作,包含(Insert into,Delete,Update,Query)和执行"存储过程"操作等
 3. 实现了基于Oracle,MySql等常用数据库数据获取功能,获取数据库字段值,写入到Excle文档所需参数中,然后进行接口请求参数调用
 4. 实现了基于Excel文档信息的读取和写入,包括(SheetName,ReadData,WriteData)等,基本内容符合测试用例编写步骤,编写测试用例脚本更简单
 5. 实现了基于Excel文档数据断言功能,预期结果和实际结果比对效验,检查点失败自动写入结果,可在测试报告中查看,一个检查点失败不影响后续用例执行
 6. 实现了基于ExtentReports,TestNG生成的测试报告二次美化功能,界面更美观,内容清晰

环境配置:

  1. JDK1.7以上
  2. Eclipse/IDEA
  3. Rest Assured
  4. Maven 
  5. Git 
  6. Ant 
  7. Jenkins

注意事项:

- 工程项目编码需要设置成UTF-8,否则会出现中文乱码情况

https://blog.csdn.net/hualusiyu/article/details/80576622

原文地址:https://www.cnblogs.com/softidea/p/9609929.html

时间: 2024-11-05 18:32:30

REST API 自动化测试 利器Rest Assured(API接口自动化测试框架体系)的相关文章

供应商导入的API补充(详解EBS接口开发之供应商导入)(转)

原文地址  供应商导入的API补充(详解EBS接口开发之供应商导入) --供应商 --创建 AP_VENDOR_PUB_PKG.Create_Vendor ( p_api_version IN NUMBER, p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE, p_commit IN VARCHAR2 := FND_API.G_FALSE, p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FU

Android 网络编程 API笔记 - java.net 包相关 接口 api

Android 网络编程相关的包 : 9 包, 20 接口, 103 类, 6 枚举, 14异常; -- Java包 : java.net 包 (6接口, 34类, 2枚举, 12异常); -- Android包 : android.net 包 (1接口, 19类, 3枚举, 1异常), android.net.http 包 (6类), android.net.nsd 包 (3接口, 2类), android.net.rtp (4类), android.net.sip 包 (1接口, 9类, 1

API查询利器-Zeal

软件名: Zeal 功能: 查询各种语言以及框架的API, 非常强大 添加API的方法: 1. 2. 可能有的小伙伴会发现有些框架在这里搜索不到,不要着急,有大牛写了很多的扩展包,就在这个网站里:https://zealusercontributions.now.sh/ 点开之后,搜索自己需要的API, 比如pytorch 打开Zeal: 将刚才复制的地址,填入这个Feed URL,点击下载即可! 可以看到,我们成功添加了pytorch !!! 很强大的工具!!! MAC下有Dash,更好用.

零成本实现接口自动化测试 – Java+TestNG 测试Restful service

本文是转载Wade Xu的文章http://www.cnblogs.com/wade-xu/p/4229805.html 接口自动化测试 – Java+TestNG 测试 Restful Web Service 关键词:基于Rest的Web服务,接口自动化测试,数据驱动测试,测试Restful Web Service, 数据分离,Java+Maven+TestNG 本文主要介绍如何用Java针对Restful web service 做接口自动化测试(数据驱动),相比UI自动化,接口自动化稳定性

接口自动化测试框架搭建 – Java+TestNG 测试Restful service

接口自动化测试 – Java+TestNG 测试 Restful Web Service 关键词:基于Rest的Web服务,接口自动化测试,数据驱动测试,测试Restful Web Service, 数据分离,Java+Maven+TestNG 本文主要介绍如何用Java针对Restful web service 做接口自动化测试(数据驱动),相比UI自动化,接口自动化稳定性可靠性高,实施难易程度低,做自动化性价比高.所用到的工具或类库有 TestNG, Apache POI, Jayway r

接口自动化测试的"开胃小菜"---简单黑客攻击手段

Web应用系统的小安全漏洞及相应的攻击方式 接口自动化测试的"开胃小菜" 1   写作目的 本文讲述一个简单的利用WebAPI来进行一次基本没有破坏力的“黑客”行为. 主要目的如下: 了解什么叫安全漏洞 知道什么是api 了解一些获取api的工具 通过对API的认识了解白盒接口测试基本概念和技术 免责声明: 本文主要是以学习交流为目的,而且实验的对象也是通过搜索引擎随机选择的.不以搞破坏为目的,纯粹是以教学为目的,同时也警醒大伙重视基本的互联网安全.当然,本文会对关键字打个马赛克,防止

接口自动化测试框架 (一) :APIAutoTest框架

前言 随着测试技术的发展,接口自动化测试逐渐成为各大公司投入产出比最高的测试技术.介入时间早,执行效率高,稳定性高的优点,让越来越多的公司引入接口自动化测试. 框架简介 APIAutoTest是处理API接口的轻量级自动化测试框架,Java语言实现,基于TestNG测试框架,支持持续集成,自动构建与测试. 框架介绍 1.    数据驱动设计,使用TestNG中的@DataProvider读取Excel中存储的自动化测试用例. 2.    基于TestNG测试框架 3.    使用HttpClie

简单实现接口自动化测试(基于python+unittest)

简单实现接口自动化测试(基于python+unittest) 简介 本文通过从Postman获取基本的接口测试Code简单的接口测试入手,一步步调整优化接口调用,以及增加基本的结果判断,讲解Python自带的Unittest框架调用,期望各位可以通过本文对接口自动化测试有一个大致的了解. 引言 为什么要做接口自动化测试? 在当前互联网产品迭代频繁的背景下,回归测试的时间越来越少,很难在每个迭代都对所有功能做完整回归.但接口自动化测试因其实现简单.维护成本低,容易提高覆盖率等特点,越来越受重视.

接口自动化测试系列之PHPUnit-接口测试的步骤

接着上篇文章接口自动化测试系列之PHPUnit-接口测试基础继续来说 接口测试的步骤 接口测试的步骤并没有什么特殊的,但其中比较关键的是阅读接口文档.这里有个特别奇怪的现象,我们作为测试每天都在读各种复杂.不靠谱的需求,而且还是较好的完成测试工作.但为什么读起来一个非常好的文档的时候却不知道该怎么看了呢?实在想不明白!比如,给了你一份非常详细的学习文档了,或者搭建环境的文档亦或API的文档,很多人都不想看,甚至拒绝看!那怎么会做好测试呢?尤其是想做到高端点的.这个习惯要改改啊亲们! 好,回归正题