什么是 SoapUI?SoapUI 测试简介
什么是 SOAP UI?
- SOAP UI 是领先的开源跨平台 API 测试 工具
- SOAPUI 允许测试人员对不同的 Web API 执行自动功能、回归、合规性和负载测试。
- SOAPUI 支持所有标准协议和技术来测试各种 API。
- SOAPUI 界面简单,技术用户和非技术用户都可以无缝使用。
为什么使用 SOAPUI?
SOAPUI 不仅仅是一个功能 API测试 工具还允许我们执行非功能性测试,例如性能和安全测试。
让我们讨论一下 SOAPUI 的 5 个重要特性
1)功能测试
- 强大的工具允许测试人员在 SoapUI 中编写功能 API 测试
- 支持拖放功能,加速脚本开发
- 支持测试调试并允许测试人员开发数据驱动的测试。
- 支持多种环境——轻松在 QA、开发和生产环境之间切换
- 允许高级脚本(测试人员可以根据场景开发自定义代码)
2)安全测试
- 具有执行整套漏洞扫描的能力。
- 可防止 SQL 注入以保护数据库
- 扫描由文档过大引起的 Stack 溢出
- 扫描跨站脚本,通常发生在服务参数在消息中暴露时。
- 执行模糊扫描和边界扫描以避免服务的异常行为。
3)负载测试
- 将负载测试分布在任意数量的 loadUI 代理上。
- 轻松模拟大容量和真实世界的负载测试。
- 允许高级自定义报告来捕获性能参数。
- 实现端到端系统性能监控
4)支持的协议/技术:
SoapUI 拥有最全面的协议支持
5)SOAP 与其他自动化工具的集成:
SoapUI 与流行工具完美集成
1) 马文
阿帕奇 Maven的 是一款软件项目管理工具,可以从中央存储库管理项目的构建、报告和文档。Maven 还可以使用简单的命令在 Maven Build 中执行 SOAPUI 测试。
2)哈德逊
哈德森 Java 基于持续集成工具,并与 CVS、Subversion、Git、Perforce、Clearcase 和 RTC 等工具集成。SOAPUI 还与 HUDSON 集成,帮助我们快速发现开发人员每次提交的错误。
3) JUnit
JUnit 是一个 单元测试 内置框架 Java,它也可以控制来自 SOAPUI 的测试流程。
4)Apache – Ant
阿帕奇 蚂蚁,一只 Java 库是一个命令行工具,可帮助构建软件。使用 SOAP UI 的命令行,我们可以在 ANT 自动构建中执行测试。
SOAP UI 对比 Selenium
让我们比较一下 SoapUI 与 Selenium
用户界面 | 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专业版 |
支持的技术 | ||
服务描述语言 | ||
REST的 | ||
JMS | ||
AMF | ||
数据库连接 | ||
HTTP | ||
省时提效 | ||
功能测试 | ||
负载测试 | ||
模拟服务 | ||
代码生成 | ||
命令行 | ||
Maven的 | ||
CI 和构建集成 | ||
一般特征 | ||
独立应用 | ||
Groovy 代码模板 | ||
多环境支持 | ||
浮动许可证 | ||
功能测试功能 | ||
WSDL 覆盖范围 | ||
请求/响应覆盖范围 | ||
消息断言 | ||
测试重构 | ||
运行多项测试 | ||
数据源驱动测试 | ||
脚本库 | ||
单位报告 | ||
手动测试步骤 | ||
安全测试功能 | ||
边界扫描 | ||
类型无效 | ||
SQL注入 | ||
XPath 注入 | ||
XML炸弹 | ||
模糊扫描 | ||
跨站点脚本 | ||
可配置扫描 | ||
报告仪表板 | ||
负载测试功能 | ||
功能测试中的快速负载测试 | ||
可配置的加载策略 | ||
负载测试断言 | ||
实时统计 | ||
性能监控 | ||
统计数据导出 | ||
设置/拆卸使用 Groovy 脚本 | ||
loadUI 集成 | ||
报告仪表板 | ||
报表 | ||
JUnit 报表 | ||
报表数据导出 | ||
WSDL HTML 报告 | ||
WSDL 覆盖范围 | ||
测试套件覆盖率 | ||
测试用例覆盖率 | ||
断言覆盖 | ||
留言记录覆盖范围 |
何时使用SoapUI PRO 版本?
- 数据驱动: PRO 版本可帮助我们使用外部数据源,如文本文件、XML、 Groovy、Excel、文件和数据库。这有助于我们利用通过上述来源驱动的一系列输入来扩展我们的测试。
- 测试范围: PRO 版本允许测试人员获得一份统计报告,其中显示经过充分测试的功能以及未经过彻底测试的区域。深入报告甚至会准确指出哪些内容尚未测试以及哪些内容尚未断言。
- 测试调试: 然后,您可以将测试运行到该断点并查看 SoapUI 属性的当前值。测试调试界面简化了以下测试流程、变量、属性、请求、上下文等,使测试创建和改进更加精简。
- 多环境支持: 使用开源版本处理 DEV、QA、Pre-PROD 环境等多个环境可能是一项艰巨的任务,因为测试人员需要更改端点以在不同的环境中执行。PRO 版本可帮助我们在环境之间无缝切换。
- 报告: PRO 版本加载了许多选项来自定义报告,这些选项可在 Project、TestSuite、TestCase 或 LoadTest 级别生成详细报告。它还可以生成各种格式的报告,例如 PDF、HTML、Word 或 Excel。
- 安全测试: 两个 SOAPUI 版本都具有测试安全漏洞(例如 XML 炸弹、SQL 注入、模糊测试、跨站点脚本)的功能。但是,只有 SOAP UI PRO 可以使用安全测试执行漏洞扫描 Generator 使用鼠标单击。
- SQL 构建器: 对于非技术测试人员来说,编写复杂的 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 | 大耳朵发布 | 28-03-2012 |
v5.1 | 插入式发布 | 05-09-2014 |
v.5.2 | 主要新功能发布 | 02-07-2015 |
v.5.3 | 捆绑插件发布 | 05-12-2016 |