什么是 SoapUI?
⚡ 智能摘要
SoapUI 是领先的开源、跨平台 API 测试工具,可帮助 QA 团队通过功能测试、回归测试、安全性测试和负载测试,在现代企业环境和持续集成管道中验证 SOAP 和 REST Web 服务。

什么是 SoapUI?
SoapUI 是领先的开源、跨平台 API 测试工具,允许测试人员对不同的 Web API 执行自动化功能测试、回归测试、合规性测试和负载测试。专为面向服务的架构和 REST Web 服务而构建。 SoapUI 为技术用户和非技术用户提供一个简单的界面,用于设计、运行和报告 API 测试。
- SoapUI 是领先的开源跨平台 API 测试工具。
- SoapUI 允许测试人员对不同的 Web API 执行自动化功能测试、回归测试、合规性测试和负载测试。
- SoapUI 支持所有标准协议和技术,可用于测试各种 API。
- 此 SoapUI 界面简洁,技术用户和非技术用户都能轻松上手使用。
- 现代版本,例如 SoapUI 5.x 和商业版 ReadyAPI 该套件将测试扩展到云、容器和 CI/CD 环境。
为什么使用 SoapUI?
SoapUI 它不仅是一款功能性 API 测试工具,还允许测试人员执行非功能性测试,例如性能测试和安全测试。该平台在一个工作区内涵盖了 SOAP、REST 和 WSDL 服务,因此许多企业 QA 团队将其作为默认的 API 测试解决方案。以下是它的五个重要特性。 SoapUI 这就解释了为什么球队会选择它。
主要特点 SoapUI
SoapUI 它将多种测试功能整合到一个界面中,因此单个项目即可涵盖功能检查、安全扫描和负载运行。以下特性突出了其优势。 SoapUI 非常适合现代API测试程序。
1)功能测试
- 一个强大的工具,允许测试人员编写功能性 API 测试。 SoapUI.
- 支持拖放功能,加快脚本开发速度。
- 支持测试调试,并允许测试人员开发数据驱动型测试。
- 支持多种环境,方便在测试环境、开发环境和生产环境之间切换。
- 支持高级脚本编写,以便测试人员可以开发自定义脚本。 Groovy 适用于任何场景的代码。
2)安全测试
- 具备执行全套漏洞扫描的能力。
- 可防止 SQL 注入以保护数据库。
- 扫描由超大文件引起的堆栈溢出。
- 扫描跨站脚本攻击,这种攻击通常发生在服务参数在消息中暴露时。
- 执行模糊扫描和边界扫描以避免服务的异常行为。
3)负载测试
- 将负载测试分布到任意数量的 LoadUI 代理上。
- 轻松模拟大容量和真实世界的负载测试。
- 允许进行高级自定义报告,以捕获性能参数。
- 支持端到端系统性能监控。
4) 支持的协议和技术
SoapUI 在所有开源 API 测试工具中,它拥有最全面的协议支持,涵盖 REST、SOAP、WSDL、JMS、AMF、JDBC 和 HTTP。
5) 与其他自动化工具的集成
SoapUI 与流行的构建方式集成得非常好, CI工具这对于将 API 测试嵌入到现代交付管道中至关重要。
Maven的
Apache (阿帕奇) Maven的 Maven 是一款软件项目管理工具,可以从中央存储库管理项目的构建、报告和文档。Maven 还可以执行 SoapUI 使用简单命令在 Maven 构建中进行测试。
Jenkins (哈德森)
Jenkins最初从哈德逊分叉而来,是一个 Java基于 - 的持续集成工具,可与 CVS、Subversion、Git、Perforce、ClearCase 和 RTC 集成。 SoapUI 还与 Jenkins这有助于团队快速发现开发人员每次提交中的错误。
JUnit
JUnit 是一个意念波· 单元测试 内置框架 Java它可以控制测试流程。 SoapUI 以及。
阿帕奇蚂蚁
Apache (阿帕奇) 蚂蚁是一种 Java 一个用于辅助软件构建的库和命令行工具。 SoapUI通过命令行,团队可以在 Ant 自动化构建中执行测试。
SoapUI vs Selenium
进行比较是有帮助的。 SoapUI - Selenium 这样团队就能了解哪种工具适合哪种用途。 SoapUI 侧重于API和协议层,而 Selenium 专注于浏览器内部的用户界面行为。
| SoapUI | Selenium |
|---|---|
| SoapUI 它不用于用户界面测试,仅用于 Web API 或 Web 服务测试。 | Selenium 用于用户界面测试。 |
| 能够测试Web浏览器和Web服务器之间发送和接收的数据。可以测试REST和SOAP等协议和技术。 | Selenium 虽然不能测试协议,但可以测试用户界面行为。 |
| 能够执行功能性、负载性和 安全性测试 上述技术。 | Selenium 只能执行 功能测试. 性能测试 在某种程度上可以做到,因为执行时间可以 tracked,但无法测试多用户和多租户。 Selenium 肯定不能用于安全测试。 |
| 它取决于协议,而不是浏览器。 | Selenium 取决于浏览器的功能。 |
SoapUI vs SoapUI 专业版(ReadyAPI)
有两种口味 SoapUI开源 SoapUI 以及最初以品牌命名的商业版本 SoapUI 专业版现已打包出售 ReadyAPI以下是功能对比,解释了何时选择每种选项。
| 产品特性 | SoapUI (开源版本) | SoapUI 专业版/ ReadyAPI |
| 支持的技术 | ||
| 服务描述语言 | ||
| REST的 | ||
| JMS | ||
| AMF | ||
| 数据库连接 | ||
| HTTP | ||
| 省时提效 | ||
| 功能测试 | ||
| 负载测试 | ||
| 模拟服务 | ||
| Code 信号生成 | ||
| 命令行 | ||
| Maven的 | ||
| CI 和构建集成 | ||
| 一般特征 | ||
| 独立应用 | ||
| Groovy Code 模板 | ||
| 多环境支持 | ||
| 浮动许可证 | ||
| 功能测试功能 | ||
| WSDL 覆盖范围 | ||
| 请求/响应覆盖范围 | ||
| 消息断言 | ||
| 测试重构 | ||
| 运行多项测试 | ||
| 数据源驱动测试 | ||
| 脚本库 | ||
| 单位报告 | ||
| 手动测试步骤 | ||
| 安全测试功能 | ||
| 边界扫描 | ||
| 类型无效 | ||
| SQL注入 | ||
| XPath 注入 | ||
| XML炸弹 | ||
| 模糊扫描 | ||
| 跨站点脚本 | ||
| 可配置扫描 | ||
| 报告仪表板 | ||
| 负载测试功能 | ||
| 功能测试中的快速负载测试 | ||
| 可配置的加载策略 | ||
| 负载测试断言 | ||
| 实时统计 | ||
| 性能监控 | ||
| 统计数据导出 | ||
| 设置/拆卸使用 Groovy 脚本 | ||
| LoadUI 集成 | ||
| 报告仪表板 | ||
| 报告 | ||
| JUnit 报告 | ||
| 报表数据导出 | ||
| WSDL HTML 报告 | ||
| WSDL 覆盖范围 | ||
| 测试套件覆盖率 | ||
| 测试用例覆盖率 | ||
| 断言覆盖 | ||
| 留言记录覆盖范围 | ||
何时使用 SoapUI 专业版/ ReadyAPI 版?
专业版(现在) ReadyAPI当团队需要高级报告、多环境管理和企业级支持时,Pro 版本是正确的选择。以下几点描述了 Pro 版本相比开源版本提供额外价值的关键场景。 SoapUI 5.x 版本发布。
- 数据驱动: 专业版可以帮助测试人员处理外部数据源,例如文本文件、XML 文件等。 Groovy、Excel 和数据库。这使得测试能够扩展到通过这些来源驱动的各种输入。
- 测试范围: 专业版允许测试人员获取统计报告,该报告会显示哪些功能已得到充分测试,以及哪些方面尚未得到彻底测试。深入分析的报告甚至可以精确指出哪些内容尚未测试,哪些内容尚未验证。
- 测试调试: 测试人员可以运行测试到断点并查看当前值 SoapUI 属性。测试调试界面简化了对测试流程、变量、属性、请求和上下文的检查,从而使测试的创建和改进更加高效。
- 多环境支持: 使用开源版本处理开发、测试和预生产等多个环境可能是一项艰巨的任务,因为测试人员需要更改端点才能在不同的环境中执行测试。专业版可以帮助团队在不同环境之间无缝切换。
- 报告: 专业版提供了丰富的选项,可自定义生成项目、测试套件、测试用例或负载测试级别的详细报告。它还支持生成多种格式的报告,例如 PDF、HTML、Word 或 Excel。
- 安全测试: 以上皆是 SoapUI 这些版本具备测试安全漏洞的功能,例如 XML 炸弹、SQL 注入、模糊测试和跨站脚本攻击。但是,只有 SoapUI 专业版可以使用安全测试执行漏洞扫描。 Generator 点击鼠标。
- SQL 构建器: 对于非技术测试人员来说,编写复杂的SQL查询可能很麻烦。 SoapUI Pro SQL Builder 帮助用户通过图形界面创建 SQL 查询。此功能可加快数据驱动测试的实施速度。
- 客户支持: 作为许可协议的一部分, SoapUI 除了在线论坛支持外,Pro 还提供专属支持。
开源版本 SoapUI 本教程将用于培训目的。
SoapUI 工具 – 版本时间线
SoapUI 自 2005 年以来,该公司发布了多个主要版本,每个版本都增加了新的协议支持、安全特性或报告功能。 SoapUI 5.x 版本主要关注插件稳定性和 REST 接口覆盖范围,而商业产品线已更名为 ReadyAPI.
| 主要版本 | 发布说明 | 发布日期 |
|---|---|---|
| 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 | 大耳朵发布 | 28-03-2012 |
| v5.1 | 插入式发布 | 05-09-2014 |
| v5.2 | 主要新功能发布 | 02-07-2015 |
| v5.3 | 捆绑插件发布 | 05-12-2016 |






