接口测试工具的模版(常见接口测试工具)

网友投稿 261 2023-01-01


本篇文章给大家谈谈接口测试工具的模版,以及常见接口测试工具对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。 今天给各位分享接口测试工具的模版的知识,其中也会对常见接口测试工具进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!

本文目录一览:

【接口测试】0 接口测试工具Postman简介

从今天开始,会持续更新一款接口测试必备工具-postman的系列使用文章,每天会更新一篇postman的使用技巧,希望对工作中用得到该工具的同学有所帮助。

Postman 最早是google的一个插件存在的,但是又google退出中国以及postman团队对工具的定位,主攻pc端app的开发及优化,现在的google插件已经很少再使用了,postman虽然是一个商用软件,但是对于我们普通用户来说,基本功能完全够用的。

Postman 从最初设计上就是为接口测试而生的,所以在程序员中广泛使用,在开发调试网络程序时跟踪一些网络请求,能够高效的帮助后端开发人员独立进行接口测试。

我们来看一下postman的主要功能:

1、Postman是一款功能强大的网页调试、HTTP请求发送及接口测试用例运行的工具

2、能够模拟各种HTTP Request如GET、POST 、header、 PUT、 DELETE…等等

3、请求中还可以发送文件(图片、文本文件等)、额外的header等,实现特定的接口测试

4、能够高效的帮助后端开发人员独立进行接口测试

5、Postman提供了云服务,支持数据同步及团队协作等

6、提供了丰富的HTML格式的报告模板

7、不仅仅进行接口测试,而且是一个API管理工具

8、Postman是一款最常见的REST风格接口测试工具。

9、.................

在后面的系列文章中包括但不限于下面的专题:

1、Postman 工具的安装及注册

2、Postman接口测试的流程

3、Postman 发送get请求

4、Postman 发送post请求-x-www-from-urlencoded格式参数使用

5、Postman 发送post请求-form data格式参数使用(file文件上传)

6、Postman 发送post请求-Json格式参数使用

7、Postman 环境变量的使用

8、Postman pre-requests的使用

9、Postman test断言功能的使用

10、Postman Runner的使用

11、Postman Data数据文件处理

12、Postman monitor功能使用

13、Postman Newman命令行工具的使用

14、Postman与Jenkins集成使用

15、Postman进行Soap webservice接口测试

16、Postman使用mock进行挡板测试(1)

17、Postman使用mock进行挡板测试(2)

..............

暂时先规划这么多,后面在写的过程中,遇到好的点,会增加进来,今天就先写到这。

做接口测试的流程一般是怎么样的?

接口测试8大流程如下:

1、需求分析

项目立项后,对于整体产品的需求进行认识和理解(与功能测试的需求分析是一致的)。注意:此时只有产品需求文档,架构师还没有开始建模,主要目的是保证各部门(产品、开发、测试…)对于需求理解一致。

2 、api文档分析【重点】

该环节主要分析:请求和响应。

请求:请求url是否合理、请求信息头是否明确、请求方法是否合理、请求参数是否必填、含义、参数方式(url\form\json)。

响应:响应状态码是否合理、响应数据格式是否明确、响应信息头内容是否明确。

异常:异常返回信息和错误代码。

业务:接口彼此之间依赖关系。

该流程重点是:请求参数方式和类型、接口之间依赖关系、错误异常。

3、测试计划

由测试Leader编写,目的:分配测试任务进度安排和指导测试方案执行。

核心:测什么、谁来测、怎么测、风险预测及控制。

4、用例设计

提示:该环节主要针对参数、测试数据、安全、依赖、异常进行覆盖。

测试用例大体分为两种:根据需求进行提取测试点、设计用例覆盖测试点。

5、环境搭建

提示:项目环境部署需要根据计划中安排执行,是否需要测试人员部署。

环境搭建可以是LAMP也可以是LNMP。

6、 用例执行

使用公司指定工具执行测试用例。

提示:提测之前最好安排进行冒烟测试,保证提测时准时执行。

7、缺陷管理

使用缺陷管理工具来对执行用例的缺陷进行管理(与功能测试缺陷管理一致)。

提示:缺陷提交-修复-回归-关闭。

8、测试报告

测试报告不同公司有不同的模板,但测试报告主题内容一般分为下列四部分:测试过程、缺陷统计、缺陷分析、测试总结。

总结:

1、接口测试需要围绕测试计划实施。

2、接口测试重点是:api文档分析、用例设计。

3、具体接口应用工具主要根据后台协议和测试计划测试工具来定,可使用工具如:postman、jmeter、requests、抓包(fiddler、charles)。

各种测试用例简要模板

0 .  文档介绍

提示:请用户根据项目的实际测试状况,裁剪本测试用例模板。

0.1 文档目的

 

0.2 文档范围

 

0.3 读者对象

 

0.4 参考文献

提示: 列出本文档的所有参考文献(可以是非正式出版物),格式如下:

[ 标识符 ]  作者,文献名称,出版单位(或归属单位),日期

例如:

[ AAA ]   作者,《立项建议书》,机构名称,日期

 [ SPP-PROC-ST ]   SEPG,系统测试规范,机构名称,日期

0.5 术语与缩写解释

缩写、术语 解 释

SPP精简并行过程,Simplified Parallel Process



1 .  接口-路径测试用例

1 .1  被测试对象(单元)的介绍
1.2 测试范围与目的
1 . 3 测试环境与测试辅助工具的描述
1.4 测试驱动程序的设计
1.5 接口测试用例
接口A的函数原型

输入/动作期望的输出/相应实际情况

典型值…

边界值…

异常值…

接口B的函数原型

输入/动作期望的输出/相应实际情况

典型值…

边界值…

异常值…


1.6 路径测试的检查表

检查项 结论

数据类型问题

(1)变量的数据类型有错误吗?

(2)存在不同数据类型的赋值吗?

(3)存在不同数据类型的比较吗?

变量值问题

(1)变量的初始化或缺省值有错误吗?

(2)变量发生上溢或下溢吗?

(3)变量的精度不够吗?

逻辑判断问题

(1)由于精度原因导致比较无效吗?

(2)表达式中的优先级有误吗?

(3)逻辑判断结果颠倒吗?

循环问题

(1)循环终止条件不正确吗?

(2)无法正常终止(死循环)吗?

(3)错误地修改循环变量吗?

(4)存在误差累积吗?

内存问题

(1)内存没有被正确地初始化却被使用吗?

(2)内存被释放后却继续被使用吗?

(3)内存泄漏吗?

(4)内存越界吗?

(5)出现野指针吗?

文件I/O问题

(1)对不存在的或者错误的文件进行操作吗?

(2)文件以不正确的方式打开吗?

(3)文件结束判断不正确吗?

(4)没有正确地关闭文件吗?

错误处理问题

(1)忘记进行错误处理吗?

(2)错误处理程序块一直没有机会被运行?

(3)错误处理程序块本身就有毛病吗?如报告的错误与实际错误不一致,处理方式不正确等等。

(4)错误处理程序块是“马后炮”吗?如在被它被调用之前软件已经出错。


2.  功能测试用例

2 .1  被测试对象的介绍
2 .2 测试范围与目的
2. 3 测试环境与测试辅助工具的描述
2 .4 测试驱动程序的设计
2 .5 功能测试用例

功能A描述

用例目的

前提条件

输入/动作期望的输出/相应实际情况

示例:典型值…

示例:边界值…

示例:异常值…

功能B描述

用例目的

前提条件

输入/动作期望的输出/相应实际情况

……
3.  健壮性测试用例

3 .1  被测试对象的介绍
3 .2 测试范围与目的
3. 3 测试环境与测试辅助工具的描述
3 .4 测试驱动程序的设计
3 .5 容错能力 / 恢复能力测试用例

异常输入/动作容错能力/恢复能力造成的危害、损失

示例:错误的数据类型…

示例:定义域外的值…

示例:错误的操作顺序…

示例:异常中断通信…

示例:异常关闭某个功能…

示例:负荷超出了极限…
4 .  性能测试用例

4 .1  被测试对象的介绍
4 .2 测试范围与目的
4. 3 测试环境与测试辅助工具的描述
4 .4 测试驱动程序的设计
4 .5 性能测试用例

性能A描述

用例目的

前提条件

输入数据期望的性能(平均值)实际性能(平均值)

性能B描述

用例目的

前提条件

输入数据期望的性能(平均值)实际性能(平均值)

……
5 .  图形用户界面测试用例

5 .1  被测试对象的介绍
5 .2 测试范围与目的
5. 3 测试环境与测试辅助工具的描述
5 .4 测试驱动程序的设计
5 .5 测试人员分类

类别特征

A类

B类

……
5.6  用户界面测试的检查表

检查项测试人员的类别及其评价

窗口切换、移动、改变大小时正常吗?

各种界面元素的文字正确吗?(如标题、提示等)

各种界面元素的状态正确吗?(如有效、无效、选中等状态)

各种界面元素支持键盘操作吗?

各种界面元素支持鼠标操作吗?

对话框中的缺省焦点正确吗?

数据项能正确回显吗?

对于常用的功能,用户能否不必阅读手册就能使用?

执行有风险的操作时,有“确认”、“放弃”等提示吗?

操作顺序合理吗?

有联机帮助吗?

各种界面元素的布局合理吗?美观吗?

各种界面元素的颜色协调吗?

各种界面元素的形状美观吗?

字体美观吗?

图标直观吗?


6.  信息安全性测试用例

6 .1  被测试对象的介绍
6 .2 测试范围与目的
6. 3 测试环境与测试辅助工具的描述
6 .4 测试驱动程序的设计
6 .5 信息安全性测试用例

假想目标A

前提条件

非法入侵手段是否实现目标代价-利益分析

……

假想目标B

前提条件

非法入侵手段是否实现目标代价-利益分析

……
7.  压力测试用例

7 .1  被测试对象的介绍
7 .2 测试范围与目的
7. 3 测试环境与测试辅助工具的描述
7 .4 测试驱动程序的设计
7 .5 压力测试用例

极限名称A 例如“最大并发用户数量”

前提条件

输入/动作输出/响应是否能正常运行

例如10个用户并发操作

例如20个用户并发操作



极限名称B

前提条件

输入/动作输出/响应是否能正常运行


8.  可靠性测试用例

8 .1  被测试对象的介绍
8 .2 测试范围与目的
8. 3 测试环境与测试辅助工具的描述
8 .4 测试驱动程序的设计
8 . 5 可靠性测试用例

任务A描述

连续运行时间

故障发生的时刻故障描述

……

统计分析

任务A无故障运行的平均时间间隔(CPU小时)

任务A无故障运行的最小时间间隔(CPU小时)

任务A无故障运行的最大时间间隔(CPU小时)

任务B描述

连续运行时间

故障发生的时刻故障描述

……

统计分析

任务B无故障运行的平均时间间隔(CPU小时)

任务B无故障运行的最小时间间隔(CPU小时)

任务B无故障运行的最大时间间隔(CPU小时)
9.  安装 / 反安装测试用例

9 .1  被测试对象的介绍
9 .2 测试范围与目的
9. 3 测试环境与测试辅助工具的描述
9 .4 测试驱动程序的设计
9 . 5 安装 / 反安装测试用例

配置说明

安装选项描述是否正常使用难易程度

全部

部分

升级

其它

反安装选项描述是否正常使用难易程度
附录:评审意见

api 接口 fuzz 测试初探

在日常测试工作中,经常会有api接口的测试,除了正向流程的测试之外,我们经常还需要覆盖一些异常情况。

例如:

事实上,我们组的接口测试demo框架中,在dataprovider中也经常能够看到诸如下面的例子。

此处是看看接口在传入非期望值的时候,能不能够很好的处理类似请求。

除此以外,还有一些和业务场景强相关的值类型,比如网络测试的时候,我们会关心cidr的格式;计费测试的时候,又特别关注数字的类型。

一方面,给每个接口增加类似的异常接口测试相对比较无趣;另一方面,我们作为人,考虑问题,不管是开发还是测试,都难免挂一漏万,有一些边边角角的case没能考虑到。

既然如此,我们能否统一抽象出来一种接口异常测试的框架, 自动 注入各种类型的异常,然后将凡是服务没有捕获的,抛出trace, exception 的,记录下请求的payload,为后续验证覆盖提供支撑。

主要使用了模糊测试技术(fuzz testing, fuzzing)。其核心思想是自动或半自动的生成随机数据输入到一个程序中,并监视程序异常,如崩溃,断言(assertion)失败,以发现可能的程序错误,比如内存泄漏。(摘抄之维基百科)

简单的模糊测试随机输入数据,而更加高效的模糊测试,需要理解对象结构或者协议。通过向数据内容,结构,消息,序列中引入一些异常,来人为的构造聪明的模糊测试。

如果你持续关注文件系统或内核技术,你一定注意过这样一篇文章:Fuzzing filesystem with AFL。Vegard Nossum 和 Quentin Casasnovas 在 2016 年将用户态的 Fuzzing 工具 AFL(American Fuzzing Lop)迁移到内核态,并针对文件系统进行了测试。

结果是相当惊人的。Btrfs,作为 SLES(SUSE Linux Enterprise Server)的默认文件系统,仅在测试中坚持了 5 秒钟就挂了。而 ext4 坚持时间最长,但也仅有 2 个小时而已。( https://zhuanlan.zhihu.com/p/28828826 )

所以基于此,在api接口测试中引入模糊测试理论上也是可行的,而且是有效的。

经过一番调研和搜索之后,发现了以下这个项目在接口fuzz测试中,有比较好的上手体验。

我对 PyJFAPI 稍微进行了一些修改,包括日志记录,以及异常判断的地方,只记录服务器返回500错误的情况等。

首先需要准本一个请求的模板。

这里是一个 post请求,定义了一些请求头和请求体。星号之间的请求json体,为异常注入点。
它会自动分析你的json格式,生成各种 payload。理论上来说,你只需要给它提供一份接口的scheme就行(要是所有接口都可以从Swagger直接导出那就很方便了)。

运行:

返回

我们可以手工请求一下这些导致异常的payload。
实例1:

事实上,我们本来已经对这个cidr参数进行了一些异常值的测试。包括:

等等。可以发现,还是有部分特殊情形没有考虑到。

实例2

我把程序构造的部分异常打印出来,可以看到类型还是很丰富的。

pjfapi.py 脚本本身使用方法很简单。 -h 看下help为命令行参数的基本说明。

本文简要的介绍了fuzz测试技术,以及将其应用到api接口测试中的实现,给出了一个具体的fuzz接口测试例子。它不一定能够完全替代掉人工的接口异常,但是可以作为一个很好的补充。

接口测试的工具该怎么选择?

曾经有一段时间接口测试工具的模版,人们习惯于在MS Excel里面编写单元测试用例,然后开发人员就按照单元测试用例一步一步的来实现用例。这通常是很耗时的漫长的过程,尤其是如果应用很大或者UI很复杂的话。这一套单元测试的执行过程常常成为瓶颈,因为任何代码修改都会带来手工执行大量单元测试,以确保新的修改没有破坏原有功能。 如今是个快节奏时代,人们希望工作能够无需人工介入、自动化的快速完成。每个人都喜欢执行一个命令就能把工作搞定,而且在执行期间不需要人工介入。需要做的仅仅是检查一下最终的输出结果。当这个世界正在迈向自动化时,自动化测试也不甘落后,不论是在功能测试方面还是UI测试方面。每天我们都能听说自动化测试方面涌现出的新软件。本文提供接口测试工具的模版了一些信息给那些想用Coded UI自动测试框架来进行应用界面自动化的.Net开发者。 什么是Coded UI 最近我一直在寻找一个自动化的用户接口测试的解决方案。用户接口测试需要用户多次进行手工输入操作,这是一个既枯燥又费时的过程。因此,我想寻找一种更智能的自动化UI测试的方案,这种UI测试在不需要人工干预下,能够被保存,记录并提供支持 ,快速测试代码的改变。Coded UI 采用用户接口来驱动应用的进行自动化测试。这些测试包括UI控制的功能性测试。接口测试工具的模版他们使接口测试工具的模版你可以验证整个应用的功能是否正确,其中包括了用户接口。Coded UI尤其适合用于用户接口中存在校验或者其它的登录方式的测试,比如网页。Coded UI也可以用于人工测试用例的自动化。 Coded UI 测试帮助用户测试应用程序的用户接口。这些测试允许用户验证应用程序的功能。Coded UI 多数时间用于帮助验证在UI层本身的有效逻辑。它能够验证值对用户接口的控制的正确性。其它方案市场有许多自动化用户接口的方案,比如HP的QuickTest Professional, IBM Rational Functional Tester. 其它著名的,易于使用的开源工具解决用户接口自动化问题的有Selenium,也能够记录测试,需要的时候回放。市场上还有来自Microsoft的也能不需要太多努力做同样的事。用Visual Studio Microsoft还有Coded UI的方案用于单元测试。 Coded UI适合在哪儿用 大多数安装了Visual Studio的开发者都喜欢在Visual Studio的环境里进行单元测试,而不是使用第三方工具。由微软提供的Coded UI,在Visual Studio环境里可谓上手即用。在开发者的机器上无需另外安装任何东西。一旦你安装了Visual Studio的Premium版或者Ultimate版,你就同时也安装好了Coded UI。Coded UI可用性 为了使用Coded UI,需要安装Visual Studio 2010/2012/2013的Premium版或者Ultimate版。 Coded UI 测试的组成Coded UI 测试的组成容易理解。它可分成下列文件:UIMap.uitest 这个文件是UIMap类的XML表示。UIMap类包括视窗,控件,属性,方法,断言和动作。UIMap.cs 对UIMap的自定义部分都存在这文件里。如果修改直接存在UIMap.designer.vb文件的话,那些修改都会在记录结束后丢失,因为这个文件重新创建e5a48de588b6e79fa5e9819331333339663264了。给每个在测应用程序中的每个模块创建一个独立的UIMap文件。UIMap.Designer.cs 这是部分类表达各种类。这各种类是给多样的控件和他们的范围,属性,方法的类。提示:不要直接修改 UIMap.Designer.cs。加入你这样做,这个修改会被覆盖掉。CodedUITest.cs 这类表示的实际的CodeUI测试类,方法调用,和断言调用,所有的方法和断言默认都是从UIMap.Designer.cs文件调用的。这类有具有【codedUITest]属性TestClass和包含具有【TestMethod]属性的多种方法。 Coded UI的特性/好处 进行用户界面测试的同时进行校验. 生成VB.Net/C#代码. 测试用例可以被记录和重放. 集成了ALM Story 能够作为每日构建的一部分来运行. 根据需要进行高级扩展. 和Visual Studio集成在一起,所以无需单独购买许可. Coded UI对Web和Windows应用同样适用. 著名的Microsoft支持. 创建Coded UI测试 Coded UI测试可以用下列方式创建使用MTM进行快速自动构建从现有的记录(从手动测试中记录下来的操作)中创建Coded UI 在Coded UI Test Builder创建的底稿的基础上创建一个新的Coded UI测试. 自己写Coded UI. 这个白皮书的范围仅限于“在Coded UI Test Builder创建的底稿之上创建一个新的Coded UI测试”。小贴士: 尽量使用Coded UI Test Builder。Coded UI Test Builder 每一个Coded UI测试的生成都需要遵从下列步骤. 记录/停止/暂停编辑记录下来的步骤添加断言生成代码创建Coded UI 测试 创建新的Coded UI 项目要开始使用Coded UI,首先我们需要创建一个测试项目,用来保存所有Coded UI测试。创建一个新的Coded UI项目包含下列步骤打开Visual Studio 2012 选择 File New Project 选择需要的语言模板 (C# or VB.Net). 我们选择了C#. 选择Coded UI Project 输入一个名字点击 OK 按钮 添加 Coded UI 测试Visual Studio默认配置为创建Coded UI 测试使用 "Generate a new Coded UI Test from scratch using Coded UI Test Builder" 提示:在测试的应用程序中,当你创建UI控件时尽量使用有意义的名称,从而对于自动生成的控件显得更加有意义和可用。一旦 Coded UI 测试工程创建完成,将会自动打开生成Coded UI 测试代码的对话框,请给出以下选项的设置。记录操作,编辑UI地图或添加断言使用一个已经存在的操作记录默认情况下 选择记录操作,编辑UI地图或添加断言,无需做任何操作,然后点击 "ok" Coded UI Test Builder 选择了上述选项后,Coded UI Test Builder就会被打开,同时Visual Studio窗口被最小化。这意味着我们已经为记录操作做好了准备。正如之前描述的,Coded UI Test Builder基于下列4个操作来做记录Record Steps Update or Delete Steps Verify Results (Add Assertions) Generate Code 小贴士: 如果用户界面(UI)变化了,就重新记录测试方法或断言方法,或者重新记录一个既有测试方法中受影响的部分。记录一个序列的操作. 记录一个操作主要需要下列几步. Start Recording, 通过选择Record按钮即可. Pause Recording, 用来处理记录过程中的其它操作,即Generate Code. Edit/Delete 操作, 以防错误的操作被记录。Generate code为记录下来的操作创建编号。会给每一个记录下来的操作都生成编号。Add Assertions 用来校验结果。小贴士: 创建断言最好使用Coded UI Test Builder,因为它会在UIMap.Designer.cs文件中自动添加一个断言方法。 为记录动作做计划任何事情的成功都取决于它计划得有多好。较好地计划最大限度保证了任务成功完成。这样总是比较好,在开始记录动作之前,我们计划好所有的所有要计划的步骤。这里我们将要使用应用程序Windows计算器来记录步骤。我们要自动地加和减两个数字。在记录加和减两个数字的时候,下面的步骤将会用到。。点击“开始记录”控件。到开始,点击执行。在执行窗口,输入”calc" 。停止记录,看记录的步骤。删除错误的步骤(存在的话)。产生代码接口测试工具的模版;提供和动作相匹配的名字。比如,打开计算器。提示:当你产生一个方法时候,使用一个有意义的方法的名字,代替默认名字。有意义的名字帮助识别方法的木的。。重新记录,提供第一个数字,暂停记录产生代码。重新记录,提供操作(加或者减),暂停记录,产生代码。重新记录,提供第二个数字,暂停记录,产生代码。。加断言提示: 产生你的测试作为一系列记录的方法提示: 可以的时候,限制每个方法小于10个动作。这模块化的方法让UI改变时候容易替换方法。 我们已经看到了Coded UI可以使开发者的生活变得多么轻松,尤其是遇到每次都需要进行很多输入的复杂页面的时候。这时,测试用例只需要被记录一次,就可以按照需要执行任意多次。使用Coded UI比使用其它工具的好处是,它能自动适配Web页面和Windows窗口应用。Coded UI测试可以用Visual Studio 2010来运行,也可以用任何版本的VS来运行,它们的功能正变得越来越强大。无需多说,Coded UI是一个由技术领导者提供的强大工具,想要体验Coded UI测试的强大,我们应该开始在项目中使用它看看它能带来多少ROI,我确信Coded UI不会让你失望。 关于接口测试工具的模版和常见接口测试工具的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。 接口测试工具的模版的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于常见接口测试工具、接口测试工具的模版的信息别忘了在本站进行查找喔。

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:日志系统接口设计客户端(日志系统接口设计客户端在哪)
下一篇:java实现从网络下载多个文件
相关文章

 发表评论

暂时没有评论,来抢沙发吧~