Forum Discussion

Madhav's avatar
Madhav
Occasional Contributor
6 years ago
Solved

Unable to Call Test Step in another test case by using Groovy scripts

project = testRunner.testCase.testSuite.project;
tcase = project.testSuites {"TestSuite"}.testCase{"TestCaseName"}
hello = tcase.getTestStepByName("Hello");
testStep.run(testRunner,context)

context.Hello.sayHello("Anil")

 

 

And getting  error:- groovy.lang.MissingMethodException: No signature of method: com.eviware.soapui.impl.wsdl.WsdlProject.testSuites() is applicable for argument types: (Script14$_run_closure1) values: [Script14$_run_closure1@a8cd35] Possible solutions: getTestSuites() error at line: 2

 

  • Hi,

     

    tcase = project.testSuites {"TestSuite"}.testCase{"TestCaseName"}

    These curly brackets should be square brackets:

    tcase = project.testSuites ["TestSuite"].testCase["TestCaseName"]

     

  • Error is :- Missing PropertyException:No such property:testStep for class:Script27 error lat ine:4

8 Replies

  • JHunt's avatar
    JHunt
    Community Hero

    Hi,

     

    tcase = project.testSuites {"TestSuite"}.testCase{"TestCaseName"}

    These curly brackets should be square brackets:

    tcase = project.testSuites ["TestSuite"].testCase["TestCaseName"]

     

    • Madhav's avatar
      Madhav
      Occasional Contributor

      Thanks for your reply

      But still i am getting exceptional error .

      project = testRunner.testCase.testSuite.project;
      tcase = project.testSuites ["TestSuite3"].testCases["TestCase2"];
      hello = tcase.getTestStepByName("Hello");
      testStep.run(testRunner,context)

      context.Hello.sayHello("Anil")

       

      • Madhav's avatar
        Madhav
        Occasional Contributor

        Error is :- Missing PropertyException:No such property:testStep for class:Script27 error lat ine:4

  • kondasamy's avatar
    kondasamy
    Regular Contributor

    Replace Flower braces({}) with Square braces ([]) while accessing testSuites/ testCases/ testSteps,

     

    project = testRunner.testCase.testSuite.project;
    tcase = project.testSuites["TestSuite"].testCases["TestCaseName"]
    hello = tcase.getTestStepByName("Hello");
    testStep.run(testRunner,context)
    context.Hello.sayHello("Anil")

    This can be replaced by,

    hello = testRunner.testCase.testSuite.project.getTestSuiteByName('TestSuite').getTestCaseByName('TestCaseName').getTestStepByName('Hello')