如何设置soapui中一个测试步骤的超时?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何设置soapui中一个测试步骤的超时?相关的知识,希望对你有一定的参考价值。

我在soapui中创建了一个测试步骤。我需要设置一个长达5分钟的延迟时间。我的意思是测试步骤之间没有延迟,我只需等待一步的响应。我该怎么做?

答案

将套接字超时设置为300000毫秒。 SoapUI Documentation

另一答案

TestCase Options具有该测试的套接字超时设置。您不能仅将此设置为一步。

另一答案

正如其他答案所说,不可能为TestStep设置套接字超时,但是你可以使用TestStepgroovy TestStep来实现。您可以执行以下步骤:

  1. 在你的TestStep中创建TestCase并禁用它,因为你将从groovy运行它。
  2. 创建一个Groovy testStep,它将在运行testStep之前更改全局套接字超时,并在使用com.eviware.soapui.SoapUI class执行后再次设置默认值。

您可以使用的qazxsw poi代码如下所示:

groovy

您的testCase将如下所示:

请注意,如果要检查通过import com.eviware.soapui.SoapUI import com.eviware.soapui.settings.HttpSettings import com.eviware.soapui.model.testsuite.TestStepResult.TestStepStatus // get the settings def settings = SoapUI.getSettings(); // save the possible previous timeout def bk_timeout = settings.getString(HttpSettings.SOCKET_TIMEOUT,""); // set the new timeout... in your case 5 minutes in miliseconds settings.setString(HttpSettings.SOCKET_TIMEOUT,"300000"); // save the new settings SoapUI.saveSettings(); // get the testStep by name def testStep = testRunner.testCase.getTestStepByName('Test Request') // run it def result = testStep.run( testRunner, context ) if( result.status == TestStepStatus.OK ) { // ... if all ok } // when finish set the timeout to default value again settings.setString(HttpSettings.SOCKET_TIMEOUT, bk_timeout) SoapUI.saveSettings() 更改设置是否按预期工作,可以尝试修改属性并检查groovy中的首选项SOAPUI文件是否更改(显然测试它不会再次备份原始值,如示例$USER_HOME\soapui-settings.xml) 。

另一答案

我找到了一种设置testCase套接字超时的方法。

在testCase的安装脚本中,使用以下代码:

:)

testCase中的所有步骤都将受此值的影响。

全局SOCKET_TIMEOUT值不受此影响。

以上是关于如何设置soapui中一个测试步骤的超时?的主要内容,如果未能解决你的问题,请参考以下文章

如何在soapUI免费版中从REST资源请求更新测试步骤标头?

soapui接口性能测试---- 验证性能

如何使用soapUI模拟webservice客户端发送请求

SoapUI进行性能测试

需要在SoapUI中的下一个请求中使用的修剪响应值

SOAPUI用测试步骤进行断言