SoapUI - 性能测试


性能测试是 Web 服务测试中最常见的重要检查点之一。性能测试被定义​​为人工创建或模拟负载并测量环境如何处理它。

这意味着不一定是系统在高负载下的执行方式,也可以是系统在基本负载或预期负载下的执行方式。它甚至不必在 TestWare(例如 SoapUI)中进行结构化、自动化或创建;简单地一遍又一遍地快速刷新网络浏览器也是一种负载测试。

性能测试的类型

以下是性能测试的类型 -

  • 基线测试- 检查系统在预期或正常负载下的性能,并创建可以与其他类型的测试进行比较的基线。

  • 负载测试- 包括增加负载并查看系统在较高负载下的Behave方式。在负载测试期间,用户可以监控响应时间、吞吐量、服务器状况等等。负载测试的目标不是破坏目标环境。

  • 浸泡测试- 测试的目标是确保在较长时间内不会出现不需要的Behave。

  • 可扩展性测试- 可扩展性测试非常类似于负载测试,但是它不是增加请求数量,而是增加发送请求的大小或复杂性。例如,发送大型请求、大型附件或深度嵌套的请求。

Web 服务的关键方面

Web Service 性能的独特特征有两个方面突出。

第一方面

在服务器端,正在进行 XML/JSON 处理,包括 XML/JSON 解析和序列化。通常首先失败的是有效负载的处理。失败的原因可能是多方面的;它可能是平台、应用程序服务器的弱点,也可能是不必要的复杂 WSDL 形式的实现问题。这也可能意味着代码正在向响应缓慢的数据库发出请求。

测试方面- 解析 XML/JSON 有效负载的复杂性意味着需要额外关注可扩展性测试。这也意味着应该仔细检查 WSDL。如果请求和响应很复杂或较大,或者包含大型附件,则应重点强调复杂性并查看其在负载下的Behave。

第二个方面

另一个经常遇到的因素是安全性。HTTPS 背后的安全站点的性能要低得多,在 Web 服务测试中,我们可以在 HTTP 安全层上添加一层 WSSecurity,从而进一步降低性能。

测试方面- 安全问题意味着需要专注于对安全请求进行测试。如果整个 Web 服务都是安全的,则意味着负载测试更加重要,特别是在使用 WS-Security 和令牌处理的情况下。