如何设置soapui中一个测试步骤的超时?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何设置soapui中一个测试步骤的超时?相关的知识,希望对你有一定的参考价值。
我在soapui中创建了一个测试步骤。我需要设置一个长达5分钟的延迟时间。我的意思是测试步骤之间没有延迟,我只需等待一步的响应。我该怎么做?
将套接字超时设置为300000毫秒。 SoapUI Documentation
TestCase Options具有该测试的套接字超时设置。您不能仅将此设置为一步。
正如其他答案所说,不可能为TestStep
设置套接字超时,但是你可以使用TestStep
和groovy TestStep
来实现。您可以执行以下步骤:
- 在你的
TestStep
中创建TestCase
并禁用它,因为你将从groovy运行它。 - 创建一个
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中一个测试步骤的超时?的主要内容,如果未能解决你的问题,请参考以下文章