什么是 SoapUI?简介 SoapUI 测试与验证
什么是 SOAP UI?
- SOAP UI 是领先的开源跨平台 API 测试与验证 工具
- SOAPUI 允许测试人员对不同的 Web API 执行自动功能、回归、合规性和负载测试。
- SOAPUI 支持所有标准协议和技术来测试各种 API。
- SOAPUI 界面简单,技术用户和非技术用户都可以无缝使用。
为什么使用 SOAPUI?
SOAPUI 不仅仅是一个功能 API测试 工具还允许我们执行非功能性测试,例如性能和安全测试。
让我们讨论一下 SOAPUI 的 5 个重要特性
1)功能测试
- 一个强大的工具允许测试人员编写功能性 API 测试。 SoapUI
- 支持拖放功能,加速脚本开发
- 支持测试调试并允许测试人员开发数据驱动的测试。
- 支持多种环境——轻松在 QA、开发和生产环境之间切换
- 允许高级脚本(测试人员可以根据场景开发自定义代码)
2)安全测试
- 具有执行整套漏洞扫描的能力。
- 可防止 SQL 注入以保护数据库
- 扫描由文档过大引起的 Stack 溢出
- 扫描跨站脚本,通常发生在服务参数在消息中暴露时。
- 执行模糊扫描和边界扫描以避免服务的异常行为。
3)负载测试
- 将负载测试分布在任意数量的 loadUI 代理上。
- 轻松模拟大容量和真实世界的负载测试。
- 允许高级自定义报告来捕获性能参数。
- 实现端到端系统性能监控
4)支持的协议/技术:
SoapUI 拥有最全面的协议支持
5)SOAP 与其他自动化工具的集成:
SoapUI 与常用工具集成得非常好
1) 马文
Apache (阿帕奇) Maven的 是一款软件项目管理工具,可以从中央存储库管理项目的构建、报告和文档。Maven 还可以使用简单的命令在 Maven Build 中执行 SOAPUI 测试。
2)哈德逊
哈德森 Java 基于持续集成工具,并与 CVS、Subversion、Git、Perforce、Clearcase 和 RTC 等工具集成。SOAPUI 还与 HUDSON 集成,帮助我们快速发现开发人员每次提交的错误。
3) JUnit
JUnit 是一个意念波· 单元测试 内置框架 Java,它也可以控制来自 SOAPUI 的测试流程。
4)Apache – Ant
Apache (阿帕奇) 蚂蚁,一只 Java 这是一个用于构建软件的命令行工具库。 SOAP UI通过命令行,我们可以在 ANT 自动化构建中执行测试。
SOAP UI Vs Selenium
我们来比较吧 SoapUI - Selenium
| SOAP UI | Selenium |
|---|---|
| SOAP UI 它不用于用户界面测试,仅用于 WebAPI 或 Web 服务测试。 | Selenium 用于用户界面测试。 |
| 能够测试 Web 浏览器和 Web 服务器之间发送和接收的数据。可以测试 REST、SOAP 等协议/技术。 | Selenium 无法测试协议,但可以测试 UI 行为。 |
| 能够执行功能、负载和 安全测试 上述技术。 | Selenium 只能执行 功能测试. 性能测试 在某种程度上,因为我们可以 trac执行时间与性能有关,但无法测试多用户和多租户情况。 Selenium 肯定不能用于安全测试。 |
| 它依赖于协议,而不依赖于浏览器。 | Selenium 取决于浏览器的功能。 |
SOAP UI Vs SOAP UI PRO
我们知道有两种口味 SOAP UI 测试,其中之一是 SOAP UI (开源版本)而另一个是 SOAP UI 专业版。让我们了解一下这两种口味的区别,我们还将讨论何时使用哪种口味。
| 产品特性 | SOAP UI (开源版本) | SOAP UI PRO |
| 支持的技术 | ||
| 服务描述语言 | ||
| REST的 | ||
| JMS | ||
| AMF | ||
| 数据库连接 | ||
| HTTP | ||
| 省时提效 | ||
| 功能测试 | ||
| 负载测试 | ||
| 模拟服务 | ||
| Code 信号生成 | ||
| 命令行 | ||
| Maven的 | ||
| CI 和构建集成 | ||
| 一般特征 | ||
| 独立应用 | ||
| Groovy Code 模板 | ||
| 多环境支持 | ||
| 浮动许可证 | ||
| 功能测试功能 | ||
| WSDL 覆盖范围 | ||
| 请求/响应覆盖范围 | ||
| 消息断言 | ||
| 测试重构 | ||
| 运行多项测试 | ||
| 数据源驱动测试 | ||
| 脚本库 | ||
| 单位报告 | ||
| 手动测试步骤 | ||
| 安全测试功能 | ||
| 边界扫描 | ||
| 类型无效 | ||
| SQL注入 | ||
| XPath 注入 | ||
| XML炸弹 | ||
| 模糊扫描 | ||
| 跨站点脚本 | ||
| 可配置扫描 | ||
| 报告仪表板 | ||
| 负载测试功能 | ||
| 功能测试中的快速负载测试 | ||
| 可配置的加载策略 | ||
| 负载测试断言 | ||
| 实时统计 | ||
| 性能监控 | ||
| 统计数据导出 | ||
| 设置/拆卸使用 Groovy 脚本 | ||
| loadUI 集成 | ||
| 报告仪表板 | ||
| 报告 | ||
| JUnit 报告 | ||
| 报表数据导出 | ||
| WSDL HTML 报告 | ||
| WSDL 覆盖范围 | ||
| 测试套件覆盖率 | ||
| 测试用例覆盖率 | ||
| 断言覆盖 | ||
| 留言记录覆盖范围 | ||
使用时 SoapUI 专业版?
- 数据驱动: 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 查询。此功能有助于我们加快数据驱动测试的实施。
- 支持作为许可协议的一部分 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 |






