什么是 SoapUI?SoapUI 测试介绍

什么是 SOAP UI?

  • SOAP UI 是一款领先的开源跨平台 API 测试 工具
  • SOAPUI 允许测试人员对不同的 Web API 执行自动化功能、回归、合规性和负载测试。
  • SOAPUI 支持所有标准协议和技术来测试各种 API。
  • SOAPUI 界面简单,使技术和非技术用户都能无缝使用。

SOAP UI

为什么使用 SOAPUI?

SOAPUI 不仅仅是一个功能性 Api 测试工具,它还允许我们执行性能和安全测试等非功能性测试。

让我们讨论 SOAPUI 的 5 个重要功能

1) 功能测试

  • 一个强大的工具,允许测试人员在 SoapUI 中编写功能性 API 测试
  • 支持拖放功能,加快脚本开发
  • 支持测试调试,并允许测试人员开发数据驱动测试。
  • 支持多环境 – 轻松切换 QA、开发和生产环境
  • 允许高级脚本编写(测试人员可以根据场景开发自己的自定义代码)

2) 安全测试

  • 能够执行全套漏洞扫描。
  • 防止 SQL 注入以保护数据库
  • 扫描由超大文档引起的堆栈溢出
  • 扫描跨站脚本,这通常发生在消息中暴露服务参数时。
  • 执行模糊测试扫描和边界扫描以避免服务出现异常行为。

3) 负载测试

  • 将负载测试分发到任意数量的 loadUI 代理上。
  • 轻松模拟高并发和真实世界的负载测试。
  • 允许高级自定义报告以捕获性能参数。
  • 允许端到端系统性能监控

4) 支持的协议/技术

SoapUI 具有最全面的协议支持

Use SOAPUI

5) SOAP-与其他自动化工具集成

SoapUI 与流行工具集成良好

1) Maven

Maven

Apache Maven 是一款软件项目管理工具,可以从中央存储库管理项目的构建、报告和文档。Maven 还可以使用简单命令在 Maven Build 中执行 SOAPUI 测试。

2) HUDSON

HUDSON

HUDSON,一个基于 Java 的持续集成工具,并与 CVS、Subversion、Git、Perforce、Clearcase 和 RTC 等工具集成。SOAPUI 也与 HUDSON 集成,这有助于我们快速发现开发人员每次提交的错误。

3) JUnit

JUnit

JUnit 是一个用 Java 构建的单元测试框架,它也可以控制 SOAPUI 的测试流程。

4) Apache – Ant

Apache - Ant

Apache Ant 是一个 Java 库,它是一个命令行工具,有助于构建软件。使用 SOAP UI 的命令行,我们可以在 ANT 自动化构建中执行测试。

SOAP UI 与 Selenium

让我们将 SoapUI 与 Selenium 进行比较

SOAP UI Selenium
SOAP UI 不用于用户界面测试。它仅用于 WebAPI 或 WebService 测试 Selenium 用于用户界面测试。
能够测试 Web 浏览器和 Web 服务器之间发送和接收的数据。可以测试 REST、SOAP 等协议/技术。 Selenium 无法测试协议,但可以测试 UI 行为。
能够对上述技术执行功能、负载和安全测试 Selenium 只能执行功能测试性能测试在一定程度上可行,因为我们可以跟踪与性能相关的执行时间,但无法测试多用户和多租户。 Selenium 当然不能用于安全测试。
它是协议依赖的,而不是浏览器依赖的。 Selenium 依赖于浏览器功能。

SOAP UI 与 SOAP UI PRO

我们知道 SOAP UI 测试有两种版本,一种是 SOAP UI(开源版本),另一种是 SOAP UI PRO。让我们了解这两种版本之间的区别,我们还将讨论何时使用哪个版本。

功能 SOAP UI(开源版本) SOAP UI PRO
支持的技术
SOAP/WSDL SOAP UI Vs SOAP UI PRO SOAP UI Vs SOAP UI PRO
REST SOAP UI Vs SOAP UI PRO SOAP UI Vs SOAP UI PRO
JMS SOAP UI Vs SOAP UI PRO SOAP UI Vs SOAP UI PRO
AMF SOAP UI Vs SOAP UI PRO SOAP UI Vs SOAP UI PRO
JDBC SOAP UI Vs SOAP UI PRO SOAP UI Vs SOAP UI PRO
HTTP SOAP UI Vs SOAP UI PRO SOAP UI Vs SOAP UI PRO
自动化
功能测试 SOAP UI Vs SOAP UI PRO SOAP UI Vs SOAP UI PRO
负载测试 SOAP UI Vs SOAP UI PRO SOAP UI Vs SOAP UI PRO
模拟服务 SOAP UI Vs SOAP UI PRO SOAP UI Vs SOAP UI PRO
代码生成 SOAP UI Vs SOAP UI PRO SOAP UI Vs SOAP UI PRO
命令行 SOAP UI Vs SOAP UI PRO SOAP UI Vs SOAP UI PRO
Maven SOAP UI Vs SOAP UI PRO SOAP UI Vs SOAP UI PRO
CI 和构建集成 SOAP UI Vs SOAP UI PRO SOAP UI Vs SOAP UI PRO
一般功能
独立应用程序 SOAP UI Vs SOAP UI PRO SOAP UI Vs SOAP UI PRO
Groovy 代码模板 SOAP UI Vs SOAP UI PRO SOAP UI Vs SOAP UI PRO
多环境支持 SOAP UI Vs SOAP UI PRO SOAP UI Vs SOAP UI PRO
浮动许可证 SOAP UI Vs SOAP UI PRO SOAP UI Vs SOAP UI PRO
功能测试特性
WSDL 覆盖率 SOAP UI Vs SOAP UI PRO SOAP UI Vs SOAP UI PRO
请求/响应覆盖率 SOAP UI Vs SOAP UI PRO SOAP UI Vs SOAP UI PRO
消息断言 SOAP UI Vs SOAP UI PRO SOAP UI Vs SOAP UI PRO
测试重构 SOAP UI Vs SOAP UI PRO SOAP UI Vs SOAP UI PRO
运行多个测试 SOAP UI Vs SOAP UI PRO SOAP UI Vs SOAP UI PRO
数据源驱动测试 SOAP UI Vs SOAP UI PRO SOAP UI Vs SOAP UI PRO
脚本库 SOAP UI Vs SOAP UI PRO SOAP UI Vs SOAP UI PRO
单元报告 SOAP UI Vs SOAP UI PRO SOAP UI Vs SOAP UI PRO
手动测试步骤 SOAP UI Vs SOAP UI PRO SOAP UI Vs SOAP UI PRO
安全测试特性
边界扫描 SOAP UI Vs SOAP UI PRO SOAP UI Vs SOAP UI PRO
无效类型 SOAP UI Vs SOAP UI PRO SOAP UI Vs SOAP UI PRO
SQL 注入 SOAP UI Vs SOAP UI PRO SOAP UI Vs SOAP UI PRO
XPath 注入 SOAP UI Vs SOAP UI PRO SOAP UI Vs SOAP UI PRO
XML 炸弹 SOAP UI Vs SOAP UI PRO SOAP UI Vs SOAP UI PRO
模糊测试扫描 SOAP UI Vs SOAP UI PRO SOAP UI Vs SOAP UI PRO
跨站脚本 SOAP UI Vs SOAP UI PRO
可配置扫描 SOAP UI Vs SOAP UI PRO SOAP UI Vs SOAP UI PRO
报表 SOAP UI Vs SOAP UI PRO SOAP UI Vs SOAP UI PRO
负载测试特性
从功能测试快速创建负载测试 SOAP UI Vs SOAP UI PRO SOAP UI Vs SOAP UI PRO
可配置的负载策略 SOAP UI Vs SOAP UI PRO SOAP UI Vs SOAP UI PRO
负载测试断言 SOAP UI Vs SOAP UI PRO SOAP UI Vs SOAP UI PRO
实时统计 SOAP UI Vs SOAP UI PRO SOAP UI Vs SOAP UI PRO
性能监控 SOAP UI Vs SOAP UI PRO SOAP UI Vs SOAP UI PRO
统计导出 SOAP UI Vs SOAP UI PRO SOAP UI Vs SOAP UI PRO
使用 Groovy 脚本进行设置/拆卸 SOAP UI Vs SOAP UI PRO SOAP UI Vs SOAP UI PRO
loadUI 集成 SOAP UI Vs SOAP UI PRO SOAP UI Vs SOAP UI PRO
报表 SOAP UI Vs SOAP UI PRO SOAP UI Vs SOAP UI PRO
报告
JUnit 报告 SOAP UI Vs SOAP UI PRO SOAP UI Vs SOAP UI PRO
报告数据导出 SOAP UI Vs SOAP UI PRO SOAP UI Vs SOAP UI PRO
WSDL HTML 报告 SOAP UI Vs SOAP UI PRO SOAP UI Vs SOAP UI PRO
WSDL 覆盖率 SOAP UI Vs SOAP UI PRO SOAP UI Vs SOAP UI PRO
测试套件覆盖率 SOAP UI Vs SOAP UI PRO SOAP UI Vs SOAP UI PRO
测试用例覆盖率 SOAP UI Vs SOAP UI PRO SOAP UI Vs SOAP UI PRO
断言覆盖率 SOAP UI Vs SOAP UI PRO SOAP UI Vs SOAP UI PRO
消息记录覆盖率 SOAP UI Vs SOAP UI PRO SOAP UI Vs SOAP UI PRO

何时使用 SoapUI PRO 版本?

  • 数据驱动:PRO 版本,帮助我们使用外部数据源,如文本文件、XML、Groovy、Excel 文件和数据库。这有助于我们通过上述来源驱动的各种输入来扩展我们的测试。
  • 测试覆盖率:PRO 版本允许测试人员获取统计报告,显示哪些功能得到了充分测试,以及哪些区域未得到彻底测试。详细报告甚至能精确指出哪些部分未测试以及哪些部分未断言。
  • 测试调试:您可以运行测试到该断点并查看 SoapUI 属性的当前值。测试调试界面简化了测试流程、变量、属性、请求、上下文等方面的跟踪,使测试创建和改进更加流畅。
  • 多环境支持:使用开发、质量保证、预生产环境等多个环境,对于开源版本来说可能是一项艰巨的任务,因为测试人员需要更改端点才能在不同环境中执行。PRO 版本帮助我们无缝切换环境。
  • 报告:PRO 版本加载了许多自定义报告的选项,可以生成项目、测试套件、测试用例或负载测试级别的详细报告。它还可以生成各种格式的报告,如 PDF、HTML、Word 或 Excel。
  • 安全测试:SOAPUI 的两个版本都具备测试 XML 炸弹、SQL 注入、模糊测试、跨站脚本等安全漏洞的能力。然而,只有 SOAP UI PRO 能够通过安全测试生成器,只需点击鼠标即可执行漏洞扫描。
  • SQL Builder:对于非技术测试人员来说,编写复杂的 SQL 查询可能很麻烦。SOAP UI PRO 的 SQL Builder 可以帮助他们使用 SQL Builder 的图形界面创建 SQL 查询。此功能有助于我们加快数据驱动测试的实施。
  • 支持:作为许可协议的一部分,SOAP UI Pro 除了在线论坛支持外,还提供独家支持。

我们将使用 SoapUI 的开源版本进行培训。

SOAP UI 工具 – 版本时间线

主要版本 发布说明 发布日期
V1.0 初始版本 16-10-2005
v1.5 负载测试版本 06-04-2006
v1.6 工具版本 12-11-2006
V1.7 专业版发布 10-04-2007
v2.0 覆盖率发布 12-12-2007
v2.5 REST 发布 18-11-2008
v3.0 报告发布 09-07-2009
v3.5 协议发布 01-03-2010
v3.6 LoadUI 发布 14-09-2010
v4.0 安全发布 14-06-2011
v4.5 Big Ears 发布 28-03-2012
v5.1 插入式版本 05-09-2014
v.5.2 主要新功能发布 02-07-2015
v.5.3 捆绑插件发布 05-12-2016