SOAP UI嵌套调用Groovy脚本执行测试步骤遇空指针异常的解决问询
问题解决方法
错误原因
你在Groovy Script1中调用Script2时,传递的是Script1所在TestCase的testRunner和context。当Script2执行testRunner.runTestStepByName("SUBMIT_WS_REQUEST")时,会尝试在Script1的TestCase中查找该步骤,而非Script2所属的DEVICE_LAUNCHER测试用例,因此找不到步骤导致空指针异常。
解决方案
修改Groovy Script2中的代码,明确从自身所在的测试用例中获取并运行SOAP请求步骤:
方式1:显式获取目标步骤并运行
// 获取当前脚本所属的测试用例 def targetTestCase = context.testCase // 获取SOAP请求测试步骤 def wsRequestStep = targetTestCase.getTestStepByName("SUBMIT_WS_REQUEST") // 运行该步骤 wsRequestStep.run(testRunner, context)
方式2:直接调用测试用例的runTestStepByName方法
// 直接通过当前脚本的测试用例运行目标步骤 context.testCase.runTestStepByName("SUBMIT_WS_REQUEST", testRunner, context)
额外验证
确保SUBMIT_WS_REQUEST确实存在于DEVICE_LAUNCHER测试用例中,且步骤名称的大小写完全匹配(SoapUI中步骤名称区分大小写)。
内容的提问来源于stack exchange,提问作者Armen Cholakian
相关产品推荐
相关产品推荐

