在SOAPUI中使用Groovy执行JDBC测试步骤

时间:2017-03-31 10:41:03

标签: jdbc groovy soapui

我正在尝试使用SOAPUI中的Groovy执行JDBC测试步骤

def Proj = null
def workspace = testRunner.testCase.testSuite.project.getWorkspace();
Proj= workspace.getProjectByName("<ProjectName>")   
def ProjTestCase = Proj.testSuites["["<TestSuiteName>"].testCases["
<TestCaseName>"]
def DBTestStep = ProjTestCase.getTestStepByName("Get_10_DBValues")
def runner = null
runner = DBTestStep.run(testRunner, context)
log.info(DBTestStep)
runner = null

我给了我以下输出     INFO:com.eviware.soapui.impl.wsdl.teststeps.JdbcRequestTestStep@7f34840b

3 个答案:

答案 0 :(得分:0)

请参阅以下行,使用cmd运行soap UI项目或存储到批处理文件并运行批处理文件

cd C:\Users\%username%\SmartBear\SoapUI-Pro-5.1.2\bin\

cmd.exe /C testrunner.bat -a -j -f"<localPathForReportStoring>" -R"JUnit-Style HTML Report" -EDefault "<LocalPath>\ProjectName.xml"

答案 1 :(得分:0)

参考你的评论, 由于您的groovy脚本位于项目&gt; testsuite&gt; testCase中,因此无法在外部单独触发groovy脚本。 但是,您只能启用groovy脚本并禁用所有其他测试步骤。 当您运行项目/测试用例时,您的groovy将执行并显式调用其他步骤。 SOAPUI不会自行运行禁用的步骤。

答案 2 :(得分:0)

import com.eviware.soapui.impl.wsdl.testcase.WsdlTestRunContext
def DBTestStep = ProjTestCase.getTestStepByName("Get_10_DBValues")
def runner =  new WsdlTestRunContext(DBTestStep)
DBTestStep.run(testRunner, runner )