我想完成使用JMeter的JMeter的循环,直到响应值变化
- 获取从URL调用的结果下面的工作流程(例如:http://somewhere.com/getResults)
- 如果响应消息中包含“someVar =成功的“JMeter测试将通过
- 否则如果响应消息包含‘someVar = FAIL’JMeter的测试将失败
- 否则,如果所述响应消息不同的是,等待x秒,并再次尝试的代码块。尝试最多重试y次的代码块。
在JMeter中是这样的可能吗?如果是这样,有没有人有一个例子?
我想完成使用JMeter的JMeter的循环,直到响应值变化
在JMeter中是这样的可能吗?如果是这样,有没有人有一个例子?
最简单的方法是使用JMeter Assertions。
其中最强大的是Beanshell Assertion。
在问候以下代码示例用例可以帮助:
if new String(data).contains("someVar=SUCCESS")
Failure = false;
else
Failure = true;
同样为FAIL
重试,你可以使用一些变量像被设置为true
continue
条件使用While Controller。根据需要重试多次,当你没问题时 - 只需将continue
变量设置为false
即可。
是的,这是很有可能的。
我没有示例,但下面是您需要的组件。 逻辑应该是直截了当:
HTTP取样
http://jmeter.apache.org/usermanual/component_reference.html#HTTP_Request
断言(这将提高用户定义的错误)
http://jmeter.apache.org/usermanual/component_reference.html#assertions
虽然控制器
http://jmeter.apache.org/usermanual/component_reference.html#While_Controller
正则表达式中JMeter(物品)
http://community.blazemeter.com/knowledgebase/articles/65150-using-regex-regular-expression-extractor-with-jm
用户定义Vaiables(文章)
http://blazemeter.com/blog/afternoon-delightuser-defined-variablesavoid-code-duplication
在链接的情况下使用WHILE循环腐蚀提供的链接详细信息。在循环外部设置用户定义的变量,在WHILE条件中使用该变量,然后使用beanshell取样器根据响应设置变量。 – ScottJShea
是。并添加错误消息以通知问题是什么以及在哪里是这样的:FailureMessage =“Thread:”+ ctx.getThreadGroup()。getName()+“someVar:”+ data; –