2015-10-08 15 views
0

为运行时间不确定的进程编写Web性能测试,并且必须在运行一段时间后才运行刷新命令,直到进程状态指示完成为止。
刷新命令消耗约3秒钟。所以不要让它在循环中不断运行。所以,我试图找到一个睡眠/等待函数来停止循环之间的执行。
我发现的唯一参考是Thread.Sleep这似乎是做这项工作。
但是,这种方法似乎也停止了测试的定时器。因此,无论循环运行多少次,无论进程使用的实际时间如何,测试报告都只会显示刷新语句的累积时间。如何在Web性能测试循环中添加WAIT?

是否有另一种方法不会停止测试的定时器?

回答

1

如果刷新处于Web性能测试的循环中,请在请求中设置合适的“思考时间”。这会在接收到响应后暂停测试。 (思考时间通常用来模拟一个人花一边阅读网页,并发出下一个请求之前在形式等填充时间。)

思考时间通过请求的属性进行设置。思考测试中所有请求的时间(也包括报告名称)可以使用在eth web测试编辑器中使用(最右边)命令图标访问的“设置请求详细信息”命令来查看和修改。

思考时间也可以在WebTestRequest插件的PreRequest方法中设置或调整。

+0

确实强制循环暂停指定的任何时间。 但是,这仍然存在相同的问题,即“思考时间”没有包含在交易或测试的整个时间中。而我的测试结果是没用的。 –

+1

@muntT Think time **包含在测试时间和交易时间中,它们被排除在页面和请求时间之外。 (“交易”在Visual Studio Web性能测试中具有确切的含义。)如果思考时间对您的结果很重要,请编辑您的问题以完全解释您想要的内容。 – AdrianHHH

+0

nop。抱歉。你是对的。错误地阅读了交易时间。看着回应而不是流逝的时间。 你的解决方案是我需要的。谢谢 –