首页 > 其他分享 >SoapUI、Jmeter、Postman三种接口测试工具的比较

SoapUI、Jmeter、Postman三种接口测试工具的比较

时间:2023-05-31 20:22:04浏览次数:40  
标签:Project Postman TestSuite TestCase SoapUI 测试工具 Jmeter

1.  用例组织方式

首先是用例组织方式的不同,不同的目录结构与组织方式代表不同工具的测试思想,学习一个测试工具应该首先了解其组织方式。

SoapUI的组织方式如下图,最上层是WorkSpace,每个窗口只可以打开一个WorkSpace(这是一个xml文件),每个Project也是一个单独的xml文件(为了协同工作,也可以通过设置将其转化为一堆文件集合),所以每个WorkSpace中可以打开多个Project,一个Project也可以在不同的WorkSpace中。

Project对应我们的测试项目,其中可添加WSDL、WADL资源、TestSuite以及MockService。

TestSuite对应我们的测试模块,比如商户中心,其中可以添加TestCase,TestCase对应我们对某个模块的不同接口,比如订单管理接口。而一个接口可以能需要多个Step完成,变量、数据源、请求等都是一个Step。

 

Jmeter的组织方式相对比较扁平,它首先没有WorkSpace的概念,直接是TestPlan,等价于SoapUI中的Project,TestPlan下创建的Threads Group就相当于TestCase,并没有TestSuite的层级。

TheadsGroup中的Sampler、管理器等均相当于SoapUI中的一个Step,如下图:

 

Postman功能上更简单,组织方式也更轻量级,它主要针对的就是单个的HTTP请求。Collection就相当于是Project,而Collection中可以创建不定层级的Folders,可以自己组织TestSuite。每个Request可以当做是一个TestCase或者Step:

 

 

2.  支持的接口类型与测试类型

从功能上Jmeter最为强大,可以测试各种类型的接口,不支持的也可以通过网上或自己编写的插件进行扩展。SoapUI专门针对HTTP类型的两种接口,其初衷更是专门测试Soap类型接口,对于其他协议的接口不支持。Postman更是轻量级,定位也不同,可用来测试Rest接口。

 

工具

接口类型

测试类型

SoapUI

Soap、Rest

功能、压力、安全

Jmeter

Rest、Soap等

可扩展WebSocket、socket

功能、压力

Postman

Rest

功能

 

3.  配置不同接口类型

SoapUI可以创建Soap Project或者Rest Project(但Project中添加什么类型的Step则不受影响),可添加wsdl、wadl资源,并能在TestCase里添加Rest或Soap的Step。

Jmeter可以在线程组里添加HTTP、TCP或WebSocket的Sampler。

Postman仅支持Rest接口。

 

4.  自定义变量以及变量的作用域

除以下表格中所列的变量之外,每个工具都有系统变量,未列在内。

 

工具

变量类型

作用域

SoapUI

Project、TestSuite、TestCase的Properties以及Custom Properties

各自以内的范围内

TestCase里的Properties

在整个TestCase内

TestCase里的Data Source、DataGen等

在整个TestCase内

Groovy脚本定义

看定义方式

Jmeter

TestPlan中用户定义的变量

所有Threads Group

配置元件 - 用户定义的变量

根据元件位置而定

CSV data set、random variable等

根据元件位置而定

前置、后置处理器

当前Threads Group

Postman

Environment Variable

当前环境的Collection

Global Variable

所有Collections

CSV/JSON datafile

Runner当前的Collection

 

5.  数据源、生成器,进行参数化

 

工具

数据源

生成器

循环

SoapUI

DataSource,数据可来源于文件、目录、数据库、Excel、Grid等

DataGen

DataSource Loop

Jmeter

CSV Data Set Config读取csv文件

Random Variable

计数器

ForEach控制器

循环控制器

While控制器

Postman

Runner中运行时,可加载CSV/JSON文件

无(只能通过脚本)

Runner中的Iteration

 

6.  流程控制

SoapUI:由Conditioinal Goto控制流程,以及Groovy脚本

Jmeter:由Switch控制器、If控制器、随机控制器等一系列控制器实现流程控制,以及Beanshell脚本

Postman:通过JavaScript脚本控制

 

7.  结果解析、展示

 

工具

结果

日志

报告

SoapUI

Project-OverView、TestSuites

TestSuite-TestCases

TestCase-TestSteps

SoapUI全局多种log

TestSuite log

TestCase log

Request log

Project report

TestSuite report

TestCase report

(PDF/HTML/XML/CSV)

Jmeter

各种监听器

统一的Jmeter log

监听器可导出到文件

并可导出JTL、CSV文件、通过插件可导出HTML(Jmeter3自带)

Postman

Send可查看Request的Response

Runner可查看运行的Result

Postman console

Chrome DevTools

Request的Response以及Runner的Result均可导出json

 

8.  断言

SoapUI:每个Request可添加Assertion

Jmeter:TestPlan、Threads Group、Sampler均可添加断言

Postman:请求的Tests中可添加断言

 

9.  脚本扩展能力

SoapUI:Groovy脚本

Jmeter:Bean shell(Java)

Postman:JavaScript

 

10. 团队协作

SoapUI:本身一个project是一个xml文件,但是可以通过配置变成一系列文件夹,每个Case、每个Suite均是独立的文件,这样可通过svn/git进行团队协作。支持性较好。

Jmeter:一个TestPlan也是一个jmx(xml)文件,无法分割,但Jmeter有一个合并的功能,允许将多个文件合并在一起。只能每个团队成员自己建立一个TestPlan,分功能块进行测试。最后整理合并。

Postman:有团队协作的功能,需要付费。

标签:Project,Postman,TestSuite,TestCase,SoapUI,测试工具,Jmeter
From: https://www.cnblogs.com/kn-zheng/p/17447219.html

相关文章

  • 【Gatling】性能测试工具的安装与负载测试
    一、官网https://gatling.io/open-source/ 二、安装JDK资料太多了,不写了https://jingyan.baidu.com/article/48b558e3f135687f38c09a03.html 三、安装Gatling 下载完解压,配置下环境变量Path即可 四、使用简单使用可以参考第一个链接  参考链接:什么是Gatling......
  • Android monkey 健壮性测试工具
    简介Monkey是一个在模拟器或设备上运行的程序生成用户事件的伪随机流安装AndroidSDK提供了Monkey工具使用移动设备使用基本配置选项,例如设置事件数量操作约束,例如对指定的App进行测试事件类型和频率调试选项adbshellmonkey[options]常用命令adbshellm......
  • Postman请求Azure的OpenAI
    界面是: AZURE_OPENAI_ENDPOINT/openai/deployments/deployment_name/chat/completions?api-version=2023-05-15注意Body下的raw选json格式 {"messages":[{"role":"system","content":"......
  • Postman mock 接口集合
    官网介绍mocking-with-examplesmock-with-api由于postman的request都保存在collection中,所以mock的时候都需要选哪个collection去mock通过界面上example创建mockserver具体步骤在需要mock的collection里面先发送一些request并保存他们的response为examplecollection上.........
  • 【推荐】7款好用开源的自动化安全测试工具
    安全测试是一项工作量十分庞大的工作,需要相关工作人员在短时间内快速完成任务,因此为了提高效率,减少重复性工作带来的麻烦,这时就需要借助安全测试工具来完成。本文为大家汇总了几款好用开源的自动化安全测试工具,快来了解一下吧。1、NmapNmap是一款不错的自动化安全测试......
  • postman与jmeter的API测试流程
    1.postman工具使用流程:\1.先熟悉接口文档以及各个接口的业务关系。包括关联、接口地址,请求方式,鉴权方式,入参和出参等。\2.然后编写好测试用例。\3.在postman先建好url不同的环境变量。\4.根据接口用例所属的模块新建集合管理。\5.在集合中不同模块下录入测试用例......
  • 报文常用测试工具-----IPOP V4.1
    摘自:https://blog.csdn.net/weixin_40013461/article/details/126368274下载地址:http://y.downyagt.com:7658/down4/hwipgj_downyi.com.zip1.1、IPOP简介IPOP软件是一个华为IP工具的集合,最原始的功能是IP地址动态绑定,后续在此基础上不断的进行了扩充,就形成了现在的版本。IPOP是......
  • 使用Postman调用.NET Core的gRPC服务
     项目引入<PackageReferenceInclude="Grpc.AspNetCore.Server.Reflection"Version="2.51.0"/> net6.0的项目Program.cs需要添加的代码//注入服务builder.Services.AddGrpcReflection();//添加endpointapp.MapGrpcReflectionService(); 启动项目   ......
  • 网络测试工具iperf命令详解
    说明:Iperf是一个网络性能测试工具,也就是LINUX网速测试,主要应用于LINUX服务器下面。可以测试TCP和UDP带宽质量,可以测量最大TCP带宽,具有多种参数和UDP特性,可以报告带宽,延迟抖动和数据包丢失。Iperf在linux和windows平台均有二进制版本供自由使用。Iperf使用方法与参数说明: -s 以se......
  • postman上传文件显示403,body显示网页代码
     可见图片文件上传不了。 往右侧看,可得图片占用资源过多。发现有4mb。将图片压缩后成1mb后可行。   一般post上传最大为2MB,当然它可以修改。......