我正在开发一个 SoapUI 项目,我需要使用测试运行程序运行我的测试套件。我正在为环境变量使用外部 groovy 脚本。我在这里面临的问题是,每当我从测试运行器运行测试用例时,它的返回 Workspace 为 null,在 External groovy 中使用。因此,在外部 groovy 中,我将工作空间设为 null 导致错误 [getProjectByname() 无法在 null 上调用]。下面是
使用工作空间的全局脚本的构造函数
AvengerAPITestManager(String TestProject, String TestSuite, String TestCase,String TestStep)
{
TestName = "AvengerAPITests";
testProject = SoapUI.getWorkspace().getProjectByName(TestProject);
tSuite = testProject.getTestSuiteByName(TestSuite);
tCase = testProject.getTestSuiteByName(TestSuite).getTestCaseByName(TestCase);
tStepName = TestStep.toString();
tStep=testProject.getTestSuiteByName(TestSuite).getTestCaseByName(TestCase).getTestStepByName (TestStep);
}
上面我们有用户 SoapUI.getWorkspace() 在尝试从 soapUI 运行时工作正常,但是无论我试图从 testrunner SoapUI.getWorkspace 运行时都为空。我什至尝试像传递测试项目名称一样传递工作区,但它仍然没有用。
我也尝试过这样的事情
AvengerAPITestManager(Object workspace,String TestProject, String TestSuite, String TestCase, String TestStep)
{
TestName = "AvengerAPITests";
testProject = workspace.getProjectByName(TestProject);
tSuite = testProject.getTestSuiteByName(TestSuite);
tCase = testProject.getTestSuiteByName(TestSuite).getTestCaseByName(TestCase);
tStepName = TestStep.toString();
tStep = testProject.getTestSuiteByName(TestSuite).getTestCaseByName(TestCase).getTestStepByName(TestStep);
}
在上面的代码中,我尝试在传递测试用例名称时从测试用例中传递 Workspace 对象,但我仍然为工作区获取 null。请告诉我如何处理这个问题。