我试图自动化一些测试用例,并且在我的groovy脚本中,我在getProjectByName(projectname)上得到了空指针异常。 当我在SOAP UI中运行它时,它正在工作,但是在命令行中运行时,它给出了空指针异常。
我已经搜索了很多,但是找不到有效的方法。 任何帮助将不胜感激。
这是我的代码在groovy脚本中:
groovyUtils = new com.eviware.soapui.support.GroovyUtils(context)
projectname = testRunner.testCase.testSuite.project.name
workspace = testRunner.testCase.testSuite.project.workspace
project = (workspace==null) ? ProjectFactoryRegistry.getProjectFactory(WsdlProjectFactory.WSDL_TYPE).createNew(groovyUtils.projectPath +"\\"+projectname+".xml") : workspace.getProjectByName(projectname)
wsdlProject = workspace.getProjectByName(projectname)
我在以下方面遇到异常
wsdlProject = workspace.getProjectByName(projectname)
稍后,我想运行同一项目的testSuite,并且希望从命令行运行项目。
我正在使用运行的testSuite:
wsdlTestSuite = wsdlProject.getTestSuiteByName(TestSuite Name)
runner = wsdlTestSuite.run(new com.eviware.soapui.support.types.StringToObjectMap(), false)
答案 0 :(得分:0)
您需要检索项目。但是您已经在使用...
testRunner.testCase.testSuite.project.workspace
...获取工作空间,项目是该工作空间的一部分。通过项目变量本身来获取它。
您不能只将最后一行更改为
wsdlProject = testRunner.testCase.testSuite.project