restful api 测试一般怎么测试

使用soapUI测试rest接口操作步骤_百度文库
两大类热门资源免费畅读
续费一年阅读会员,立省24元!
使用soapUI测试rest接口操作步骤
上传于||暂无简介
阅读已结束,如果下载本文需要使用1下载券
想免费下载本文?
定制HR最喜欢的简历
下载文档到电脑,查找使用更方便
还剩5页未读,继续阅读
定制HR最喜欢的简历
你可能喜欢毕业设计-RESTFUL API开发和自动化测试框架的设计与实现下载_计算机_论文_学海网
您现在正在浏览:&>&&>&&>&毕业设计-RESTFUL API开发和自动化测试框架的设计与实现
毕业设计-RESTFUL API开发和自动化测试框架的设计与实现
毕业设计-RESTFUL API开发和自动化测试框架的设计与实现,正文共124页,35619字,附任务书、开题报告、外文翻译等
毕业设计基本内容和要求:
调查了解RESTFUL API和自动化测试工具的发展现状;学习RESTFUL API的实现与使用技术,基于变更管理和持续集成应用的自动化测试框架设计,实现RESTFUL API 自动化测试框架的关键技术;对RESTFUL API自动化测试框架的业务需求进行分析,设计并实现符合要求的RESTFUL API自动化测试框架,进行相关测试,并将RESTFUL API自动化测试框的实现应用到实际项目中。
毕业设计重点解决的问题:
基于REST风格Eclipse平台下API的开发;
通过HTTP Client与Junit设计测试;
基于变更管理的持续集成应用;
使用Ant实现构建和部署;
自动化测试框架的设计;
毕业设计应完成的工作:
阅读至少10篇REST Web Service企业级应用软件开发相关资料,了解自动化测试框架应用开发技术发展的现状;
需求分析:熟悉REST框架和自动化测试思想的基础之上,融入现代软件工程思想,完成RESTFUL API自动化测试框架的需求分析;
系统的建模和设计:根据需求分析,对RESTFUL API 自动化测试框架的业务流程进行建模,做出合理的系统架构设计;
技术学习:对RESTFUL API 自动化测试框架的关键技术问题进行研究,熟练掌握开发技术;
开发实现:熟练运用实现RESTFUL API 自动化测试框架的开发技术,完成系统开发,并根据需求书写测试计划;
搭建环境、测试和应用:搭建测试环境,测试和完善RESTFUL API自动化测试框架,并将之应用于实际项目中;
整理软件工程相关文档,按照《软件学院毕业设计规范》认真撰写毕业论文。
设计方案:
在完成RESTFUL API的开发工作后,根据学科的特点,RESTFUL API 自动化测试框架结合了软件测试的基本概念、软件测试模型、自动化测试以及当前广为应用的JUnit自动化测试框架,分析了REST架构应用软件的特点,并在此基础上提炼出REST架构应用软件的公共测试点、测试方法和验证点,通过对持续集成和项目管理的仔细研究,对RESTFUL API 自动化测试框架的业务需求进行分析和建模,并对关键技术问题进行研究,最终设计和实现系统业务需求,设计并实现了一套REST架构应用自动化测试框架。
RESTFUL API 自动化测试框架采用SVN (版本控制)+Ant(创建)+JUnit(单元测试)+Hudson(持续集成)模式实现了一个针对单元测试的自动化测试系统。该系统主要是以目前比较成熟的单元测试框JUnit为核心,主要通过对Ant的配置,利用Ant进行快速可重复创建、测试和配置,并且将源代码放入版本控制工具SVN中,由持续创建工具Hudson及时频繁地启动自动测试,随时监控产品质量和测试覆盖率。
详见下图:
理论基础:
基于变更管理的持续集成应用
基于REST风格构建Web服务的研究与应用
软件Nightly Build与Test实践
SCRUM敏捷开发流程
RESTFUL API的测试方法
软件自动化测试框架的研究与应用
研究步骤:
1、熟悉RESTFUL API 自动化测试框架的业务需求;
2、对RESTFUL API 自动化测试框架的业务流程进行建模;
3、对RESTFUL API 自动化测试框架的关键技术问题进行研究;
4、系统架构设计及开发环境搭建;
5、项目开发,实现需求;
6、系统测试。
预期成果:
采用模块化设计,开发出采用SVN (版本控制)+Ant(创建)+JUnit(单元测试)+Hudson(持续集成)的模式实现了一个针对单元测试的自动化测试系统,实现RESTFUL API测试脚本生成自动化、测试执行与验证自动化、测试报告生成自动化,减少人机交互的次数,提高自动化测试程度,使非技术人员也能够参加到自动化测试过程中,力争复用性强,扩展性强,易于维护和使用,大大提高自动化测试的效率,保证了软件的质量。
REST架构风格是全新的针对网络应用的开发风格,是当今世界一个成功的互联网超媒体分布式系统架构。近年来,REST架构应用软件的使用日益广泛,特别是在企业的内容协作应用中,REST架构应用软件以其特有的性质获得了人们的青睐。同时,人们对其质量也提出了更高的要求。
软件测试作为软件生命周期的一个重要阶段,是保障软件质量的有效手段。软件测试问题的研究越来越引起人们的重视。传统的网络测试技术集中在网络的UI(用户界面)层,不易发现深层次的软件错误且效率低下。由于REST架构软件对外提供统一规范的接口,因此对REST架构应用软件的测试可以集中在API接口层,再引入自动化测试技术,可以大大提高REST的架构应用软件的开发效率。
在软件开发过程中,经常因为集成问题而导致项目推迟或者崩溃,集成已经成为软件开发过程中的主要风险之一。本文提出了基于变更管理的持续集成应用方案。即结合版本控制(Subversion)和持续构建(Ant),频繁地、自动地进行集成(Hudson), 实现了一个针对单元测试的自动化测试系统,将传统集成风险降低到最小,随时监控产品质量和测试覆盖率。
本文首先陈述了RESTFUL Web服务架构的理论,RESTFUL API的设计理念以及软件测试发展现状,并分析了JUNIT自动化测试框架的工作原理;然后,根据目前软件自动化测试面临的问题,提出了一种基于变更管理的持续集成应用环境的自动化测试框架的解决方案。系统以RESTFUL API为研究对象,同时按照软件工程的思想,完成了自动化测试框架的需求分析、架构设计和开发实现,并在具体项目中进行了实际应用。
关键词:RESTFUL API JUNIT软件自动化测试 持续集成
第一章 引言 ……….…….1
1.1 REST架构简述 1
1.2 软件测试的必要性 2
1.3 REST架构软件测试技术现状 2
1.4 论文研究目标 3
1.5 毕业设计主要工作内容 5
第二章 理论背景 ……..8
2.1软件测试基础 8
2.1.1软件测试定义 8
2.1.2软件自动化测试 8
2.2 REST Web Service 的概念及特点 11
2.2.1传统的B/S Web应用架构 11
2.2.2 REST架构的新规范 13
2.2.3 REST Web Service架构的特点 14
2.3 API及API测试 16
2.3.1 API 的分类 16
2.3.2 API测试 18
2.3.3 RESTFUL API 的开发原理 18
2.4 REST架构应用软件的可测试性分析 19
2.5 SCRUM敏捷开发简介 21
2.5.1 敏捷开发概述 21
2.5.2 SCRUM开发流程 22
第三章 RESTFUL API开发和自动化测试框架技术分析 ………..26
3.1 REST架构应用软件的测试技术 26
3.1.1 REST架构应用软件的基本要素 26
3.1.2 REST架构应用软件的测试原理 28
3.1.3 REST下架构应用软件的测试点及其测试方法 28
3.2 REST WEB 服务架构下的HTTP 超文本协议 29
3.2.1 HTTP请求信息 29
3.2.2 HTTP响应信息 30
3.2.3 HTTP响应代码 30
3.2.4 HTTP与WEB服务架构 30
3.3 JUnit单元测试框架 31
3.3.1 JUnit单元测试框架的特点 32
3.3.2 JUnit的系统结构 32
3.3.3 编写JUnit测试代码的方法和技巧 35
3.4 持续集成技术分析 36
第四章 RESTFUL API开发和自动化测试框架需求分析 ………..38
4.1 RESTFUL API 开发模块需求分析 38
4.1.1 安全管理模块 39
4.1.2 博客管理模块 39
4.1.3 文件管理模块 39
4.1.4 查询管理模块 40
4.1.5 邮件管理模块 40
4.1.6 论坛管理模块 41
4.2 RESTFUL API单元测试管理模块需求分析 41
4.3 持续集成模块需求分析 42
4.4 测试报告模块需求分析 42
第五章 RESTFUL API开发和自动化测试框架系统设计 ………..44
5.1 系统外部框架概况 44
5.2 系统高层技术架构设计 44
5.3 系统详细架构设计 45
5.4 RESTFUL API 开发模块设计 46
5.5 RESTFUL API单元测试管理模块设计 59
5.5.1 API测试流程的设计 59
5.5.2 测试点设计 61
5.5.3 单元测试用例(Unit Cace)的设计 63
5.6 持续集成模块设计 65
5.7 测试报告模块设计 66
第六章 RESTFUL API开发和自动化测试框架的实现与应用 ..69
6.1 RESTFUL API 开发模块的实现 69
6.1.1 安全管理模块 69
6.1.2 博客管理模块 69
6.1.3 文件管理模块 70
6.1.4 查询管理模块 72
6.1.5 邮件管理模块 74
6.1.6 论坛管理模块 75
6.2 RESTFUL API单元测试管理模块的实现 77
6.2.1测试点的实现 77
6.2.2 单元测试用例的实现 81
6.3持续集成模块的实现 82
6.4测试报告模块的实现 86
第七章 总结与展望 ……………….……94
7.1 总结 94
7.2 展望 .95
致谢 ………………….………..……….…………96
参考文献 .………..….……97
外文原文 …………………. ………..…………100
1. What is REST? 100
2. Resources 102
3. URI 103
4. Uniform interfaces through HTTP 104
4.1 GET/RETRIEVE 105
4.2 POST/CREATE 108
4.3 PUT/UPDATE 110
4.4 DELETE/DELETE 111
外文翻译 …………….. …114
1 什么是REST? 114
2 资源 115
4 统一接口HTTP 116
4.1 GET/检索资源 117
4.2 POST/创建资源 120
4.3 PUT/更新资源 122
4.4 DELETE/删除资源 123
资料文件预览
共2文件夹,11个文件,文件总大小:6.15MB,压缩后大小:3.80MB
毕业设计-RESTFUL API开发和自动化测试框架的设计与实现
傅小利——测试
-傅小利-1毕业设计封面-软件.doc&&[41.00KB]
-傅小利-2毕业设计成绩-软件.doc&&[25.50KB]
-傅小利-3毕业设计任务书-软件.doc&&[51.00KB]
-傅小利-4毕业设计开题报告-软件.doc&&[93.00KB]
-傅小利-5毕业设计指导教师评阅表-软件.doc&&[27.50KB]
-傅小利-6毕业设计评阅人评阅表-软件.doc&&[26.50KB]
-傅小利-7毕业设计答辩-软件.doc&&[26.50KB]
-傅小利-8毕业设计中文摘要-软件.doc&&[31.50KB]
-傅小利-9毕业设计外文摘要-软件.doc&&[29.00KB]
-傅小利-10毕业设计目录-软件.doc&&[64.50KB]
-傅小利-11毕业设计正文-软件.doc&&[5.74MB]
[ 下载 ]&&&&&(需要: <span style="color:#FF 个学海币)&&&&&
Q: 为什么我下载的文件打不开?
A: 本站所有资源如无特殊说明,解压密码都是www.xuehai.net,如果无法解压,请下载最新的软件。
Q: 我的学海币不多了,如何获取学海币?
A: 上传优质资源可以获取学海币,详细见。
Q: 为什么我下载不了,但学海币却被扣了?
A: 由于下载人数众多,下载服务器做了并发的限制。请稍后再试,48小时内多次下载不会重复扣学海币。
下载本文件意味着您已经同意遵守以下协议
1. 文件的所有权益归上传用户所有。
2. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
3. 学海网仅提供交流平台,并不能对任何下载内容负责。
4. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
5. 本站不保证提供的下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
论文相关下载
计算机论文下载排行榜
计算机论文最近更新用于测试rest api的nodejs测试框架 - CNode技术社区
What is worth doing is worth doing well.
一直不知道怎么测试rest api,或者说没有一个比较方便的方法来测试rest api。后来想了一下,测试一个api是否可行其实不过就是给予一些参数,然后发起一个请求,获得响应,检查返回的值是否与预想的一致,一致则正确
于是用nodejs写了一段代码,用来测是rest请求(http请求)。整体的思路,希望减少测试的逻辑代码量。即使提供测试数据成为编写测试用例的主要工作量。于是写了一个RestTester对象,用于接受测试数据,以及测试上下文。即只要提高测试数据和测试服务器的相关信息。
测试数据(case):
input(http请求数据):(http方法(GET/POST),请求时使用的headers,如果是post请提供body的数据,body为一个json,目前仅支持json格式的body)
expect(预期值):预想要返回的结果(相应码,headers,json body)
setup/before/after/teardown为该测试特定阶段执行的方法(可选)(具体意义见下文)
测试服务器的相关信息:
server(nodejs的server对象)(可选,不提供则服务器不由测试程序启动)
host(主机名)
port(端口)
timeout(请求超时时间)
encoding(编码)
下图为该测试框架的一个简单的流程图:
整个测试过程均串行执行,即测试用例是一个接一个进行测试,而非并行测试。各阶段附加的方法,也是串行执行。使每个测试用例间串行,主要考虑到测试用例与测试用例之间可能会共用同一个数据库,在setup和teardown可能会相互影响。
另外为每个阶段附加方法的形式有两种,一即写在测试用例的定义里(前面提到);还有就是通过RestTester的onSetup/onTeardown/onBefore/onAfter/onInit/onClose方法来添加,每个方法的一个参数,均为一个函数,当方法结束时,请调用这个函数,以告知,所添加的阶段方法执行完毕。如:
var tester = new RestTester(...)
tester.onSetup(functon(next, title, case){
//todo do what you want to do during setup period
在每个阶段执行完后,RestTester都会触发相应的事件。
详细内容见:
CNode 社区为国内最专业的 Node.js 开源技术社区,致力于 Node.js 的技术研究。
服务器赞助商为
,存储赞助商为
,由提供应用性能服务。
新手搭建 Node.js 服务器,推荐使用无需备案的Frisby.js – 简单易用的开源REST API测试框架_自动测试框架_领测软件测试网
Frisby.js – 简单易用的开源REST API测试框架
发表于:来源:DiggerPlus作者:小A点击数:
借助node.js的魔力,我们已经看到很多优秀的web测试框架,今天给大家分享的是Frisby.js 从下面的测试示例中,我们可以看到Frisby能够提供了很多实用的测试方法,例如expectStatus,e
  Frisby
  借助node.js的魔力,我们已经看到很多优秀的框架,今天给大家分享的是Frisby.js
  从下面的测试示例中,我们可以看到Frisby能够提供了很多实用的,例如expectStatus,expectJSON等,来测试httpstatus,json。
  测试代码
var frisby = require(&#39;frisby&#39;);
frisby.create(&#39;Get Brightbit Twitter feed&#39;)
.get(&#39;/1/statuses/user_timeline.json?screen_name=brightbit&#39;)
.expectStatus(<span style="COLOR: #cc)
.expectHeaderContains(&#39;content-type&#39;, &#39;application/json&#39;)
.expectJSON(&#39;0&#39;, {
place: function(val) { expect(val).toMatchOrBeNull(&Oklahoma City, OK&); }, // Custom matcher callback
verified: false,
location: &Oklahoma City, OK&,
url: &http://brightb.it&
.expectJSONTypes(&#39;0&#39;, {
id_str: String,
retweeted: Boolean,
in_reply_to_screen_name: function(val) { expect(val).toBeTypeOrNull(String); }, // Custom matcher callback
verified: Boolean,
location: String,
url: String
原文转自:
评论列表(网友评论仅供网友表达个人看法,并不表明本站同意其观点或证实其描述)

我要回帖

更多关于 restful api 测试 的文章

 

随机推荐