首页 > 代码库 > soapui接口性能测试(三)---- 验证性能

soapui接口性能测试(三)---- 验证性能

背景:如何表现性能?

在SoapUI中,断言性能和底层功能(通过步骤状态断言)的可能性很多。找到正确的组合并不容易,因为LoadTest结果非常依赖于外部因素(特别是在高负载时); 网络,磁盘活动,数据库备份等。因此,我们建议您为LoadTest创建一个“safety net”的断言,以检测某些事情真的错误,而不是在所有情况下都期待相同的吞吐量。例如,如果您有一个步骤通常需要大约300ms,并且您想要自动执行LoadTest,则可以在大约900ms处创建一个“TestStep Average”断言,这给出了大量的间隔空间。

现在我们来吧!

2.访问断言

从LoadTest窗口底部的“断言”选项卡中访问您的LoadTest的断言:

技术分享

在这里,您可以使用工具栏按钮添加和配置任意多个断言,也可以通过在要声明的步骤的统计信息表中右键单击并选择所需的断言来添加断言:

技术分享

双击断言打开相应的配置面板,允许您根据需要设置其配置。

3.可用断言

从上图可以看出,SoapUI提供了5个断言来验证您服务的持续性能。这些都具有以下配置设置:

  • 名称 - LoadTest声明的名称。
  • Minumum请求 - 这是在应用断言之前必须执行的目标testStep或testCase的最小数量。用法是在测量之前让步骤或TestCase运行多次以“热身”。
  • 最大错误(不适用于最大错误声明) - 这是在LoadTest发生故障之前允许的最大故障数。用法是在确定LoadTest失败之前允许一定数量的断言失败。将此值设置为“-1”将永远不会失败,允许您在LoadTest日志中记录错误以供以后分析。
  • TestStep - 目标TestStep,ANY代表应用于所有TestSteps。

然后可用的断言具有如下特定的配置选项:

  1. Step Average - 断言TestStep或整个TestCase的平均值不超过指定的限制。“最大平均”设置并不奇怪,允许目标项目的最大平均值。“Sample Interval”指定断言的应用频率; 这样做的理由是,平均值通常是一个“缓慢移动的”统计量,其价值应该随着时间的推移而不是一个接一个地被断言。
  2. Step TPS
    声明对应的TestStep或TestCase的TPS(每秒事务数)值。这里“最小TPS”值指定了我们想要断言的所需TPS,如果目标TestStep或TestCase未达到所需的吞吐量,则失败。
  3. Step Maximum
     - 断言相应TestStep或TestCase的最大值,超过指定的“最大时间”限制将失败。
  4. Step Status
     - 检查TestStep或TestCase的本身断言执行状态是否成功,否则断言失败。
  5. Max Errors
     - 检查相应TestStep或TestCase的故障数量是否超出配置的“Max Absolute Errors”和/或“Max Relative Errors”值。计算的错误是由之前发生的LoadTest断言失败所产生的错误,例如,您可能为TestStep配置了Average,TPS和Maximum断言,并希望它们总共不会失败超过100次,即所有执行的1%。在这种情况下,将绝对值设置为100或相对值0.01。这通常与将其他断言“Max Errors”值设置为-1组合,将LoadTest的实际失败委托给此断言而不是它们。

4.查看断言错误

在运行LoadTest时,LoadTest Log会显示断言失败:

技术分享

工具栏具有组合框,用于过滤要显示的消息(如果有丰富的错误),并且还包含用于将日志导出为逗号分隔文件的按钮。

双击一个条目将打开底层TestStep的相应结果,例如双击上述日志中的第一个错误。

技术分享

soapui接口性能测试(三)---- 验证性能