SOA 测试综述
1. 扰动测试与故障注入
在服务测试中,扰动测试是一种有用的方法。例如,它可以检查在存在重复记录的情况下,服务所表现出的不同行为是否能从响应消息中观察到。像“true”或“false”这样仅表明插入是否成功的响应,不足以了解插入了多少条记录。
Looker 等人提出通过故障注入技术来评估服务的可靠性,他们开发了名为 WS - FIT(Web Service Fault Injection Technology)的工具和方法,该方法受网络故障注入的启发。具体操作步骤如下:
1. 基于 SOAP 对网络消息进行解码。
2. 向这些消息中注入错误。
他们定义了一个针对 Web 服务的故障模型,考虑了不同类型的故障:
- 物理故障
- 软件故障(编程或设计错误)
- 资源管理故障(如内存泄漏)
- 通信故障
在通信方面,他们还详细考虑了消息重复、消息遗漏、额外(攻击)消息的存在、消息顺序的改变或消息延迟等情况。
当注入故障时,服务可能会有不同的反应:
- 服务崩溃
- Web 服务器崩溃
- 服务挂起
- 服务产生损坏的数据
- 响应出现消息遗漏、重复或延迟
故障注入的目的是确定服务在面对输入消息中的故障时,能够在多大程度上通过适当的异常处理和恢复操作做出正确反应,而不出现上述故障。
2. 服务测试方法总结
以下是不同测试级别的服务测试方法总结:
| 测试级别 | 参考 | 描述 |
| — | — | — |
| 功能测试 | Berto