基于数据库更新的 jmeter 响应时间

jmeter response times based upon database update

根据我之前的 2 个线程 - 我是 Jmeter 的新手,需要对新的 Web 应用程序进行性能测试 - 我正在取得进展,但如果可以的话,我需要一些指导。

我的环境:JMeter v2.11,JDK7,远程 Oracle 12 RDBMS

有一个系统 (A) 会将 2000 SOAP/XML 次提交(每小时)发送到接收系统 (B)。系统 B 将向数据库插入一个新行 table(对于每个新提交),处理请求并在处理 complete/submissions 是 'approved' 后用随机数值填充状态列. table 中没有 date/timestamp 列。

我有一个要求,规定这些 A 到 B 的提交需要在 60 秒内 'approved'。

我发现了另一个非常有帮助的话题,并且我从这些其他话题中得到了点点滴滴,得出了以下结论:

我希望以上内容能够让我能够确定响应时间,但是,我对如何验证响应时间有点迷茫。我在这里提交了一个关于响应时间的先前线程,但是 Dmitri T(感谢 Dmitri!)指出对于那个场景我实际上是吞吐量而不是响应时间。
我知道 while 控制器将执行直到被发现为假(因此对于我上面的示例,它将 运行 直到状态列不为空),但是如果我的示例层次结构中的上述线程对象是正确的,我不会不知道如何断言响应时间——我会使用什么监听器?我可以看到一个响应时间图,我可以看到一个持续时间断言,它指定了断言的时间限制 - 但我不知道如何将其映射到特定行的状态列何时被填充以及我如何使用插入行的开始时间以比较两者。

基本上 - 我需要证明每次 XML 提交的所有响应都在 60 秒内得到处理。

我希望我的请求简明扼要 - 非常感谢任何可以提供帮助的人!

如果添加侦听器 View Results in Table,您还应该能够看到每个请求的响应时间。

这是我用来 运行 测试的 JMX file 副本。

JMeter 提供 Assertions 能够根据通过或失败标准有条件地将结果标记为通过或失败。

为了确保响应在 60 秒内到达,您可以将 Duration Assertion 添加到您的 JDBC 采样器(作为子级或同级别),这样如果响应时间断言可能会失败采样结果超过 60 秒的阈值。

要了解有关断言的更多信息:类型、提示、技巧、放置它们的位置等,请查看 How to Use JMeter Assertions in 3 Easy Steps 指南。