SoapUI - 性能测试
性能测试是 Web 服务测试中最常见的重要检查点之一。性能测试被定义为人工创建或模拟负载并测量环境如何处理它。
这意味着它不一定是系统在高负载下的表现,也可以是它在基本负载或预期负载下的表现。它甚至不必在 TestWare(如 SoapUI)中结构化、自动化或创建;只需快速反复刷新 Web 浏览器也是一种负载测试。
性能测试的类型
以下是性能测试的类型 −
基线测试 −检查系统在预期或正常负载下的表现,并创建与其他类型测试进行比较的基准。
负载测试 − 包括增加负载并查看系统在更高负载下的表现。在负载测试期间,用户可以监控响应时间、吞吐量、服务器状况等。负载测试的目标不是破坏目标环境。
浸泡测试 − 测试的目标是确保在较长时间内不会出现任何不良行为。
可扩展性测试 − 可扩展性测试与负载测试非常相似,但它不会增加请求数量,而是增加发送请求的大小或复杂性。例如,发送大型请求、大型附件或深层嵌套的请求。
Web 服务中的关键方面
Web 服务性能的独特特征中有两个方面尤为突出。
第一个方面
在服务器端,正在进行 XML/JSON 处理,包括 XML/JSON 解析和序列化。通常首先失败的是有效负载的处理。失败的原因可能是多方面的;可能是平台、应用服务器的弱点,也可能是实施问题,形式是不必要的复杂 WSDL。这也可能意味着代码正在向响应缓慢的数据库发出请求。
测试方面 − 解析 XML/JSON 有效负载的复杂性意味着需要特别关注可扩展性测试。这也意味着应该仔细检查 WSDL。如果请求和响应很复杂或很大,或者包含大型附件,则应重点强调复杂性并查看其在负载下的表现。
第二个方面
经常遇到的另一个因素是安全性。HTTPS 背后的安全站点的性能要低得多,在 Web 服务测试中,我们可以在 HTTP 安全层上添加一层 WSSecurity,从而进一步降低性能。
测试方面 − 安全问题意味着需要专注于对安全请求进行测试。如果整个 Web 服务都是安全的,则意味着负载测试更为重要,尤其是在使用 WS-Security 和令牌处理的情况下。