getProjectByName (projectname) выбрасывает исключение нулевого указателя в groovy при запуске через командную строку - PullRequest
0 голосов
/ 13 декабря 2018

Я пытаюсь автоматизировать некоторые тестовые случаи, и в моем скрипте groovy я получаю исключение нулевого указателя на getProjectByName (имя проекта).Когда я запускаю его в интерфейсе SOAP, он работает, но при запуске через командную строку выдает исключение нулевого указателя.

Я много искал, но не смог найти что-то работающее.Любая помощь будет очень благодарна.

Вот мой код, который в 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)

Позже я хочудля запуска testSuites того же проекта, и я хочу запустить проект из командной строки.

Для запуска testSuites я использую:

wsdlTestSuite = wsdlProject.getTestSuiteByName(TestSuite Name)
runner = wsdlTestSuite.run(new com.eviware.soapui.support.types.StringToObjectMap(), false)

1 Ответ

0 голосов
/ 13 декабря 2018

Вам нужно получить проект.Но вы уже используете ...

testRunner.testCase.testSuite.project.workspace

..., чтобы получить рабочее пространство, частью которого является проект.Проходя через саму переменную проекта, чтобы получить его.

Не могли бы вы просто изменить последнюю строку на

wsdlProject = testRunner.testCase.testSuite.project
...