ankush
6 years agoOccasional Contributor
Clone test Step to test case using java in soap ui
Hi
I am trying to clone all test steps in all test cases in a suite to a particular test case in the same project.
I am reading the entire list of test cases and their steps in a suite, saving these steps in a list.
Now i want to add or clone these steps to a specific test case .
An ideas here on how to proceed now ? nmrao any champion advice ?
WsdlProject project = new WsdlProject(path); // get a list of all test suites on the project List<TestSuite> suiteList = project.getTestSuiteList(); for (int i = 0; i < suiteList.size(); i++) { TestSuite suite = suiteList.get(i); String suiteName = suite.getName(); System.out.println("Test suite - " + suiteName + " , Enabled :" + !suite.isDisabled()); // empty List for all test steps from Test case List<com.eviware.soapui.model.testsuite.TestStep> tsToBeAdded = new ArrayList<TestStep>(); if (suiteName.equals("Sometestsuite")) { // read the test cases in each suite List<com.eviware.soapui.model.testsuite.TestCase> caseList = suite.getTestCaseList(); System.out.println("test cases in suite - " + caseList.size()); for (int k = 0; k < caseList.size(); k++) { com.eviware.soapui.model.testsuite.TestCase testCase = caseList.get(k); System.out .println("Test Case - " + testCase.getName() + " , Enabled :" + !testCase.isDisabled()); // dont pick up load test if (!testCase.getName().equals("LoadTest")) { if (!testCase.isDisabled()) { // find all test steps List<com.eviware.soapui.model.testsuite.TestStep> stepList = testCase.getTestStepList(); System.out.println("test steps in test case - " + stepList.size()); for (int j = 0; j < stepList.size(); j++) { com.eviware.soapui.model.testsuite.TestStep step = stepList.get(j); System.out.println("Test step added - " + step.getName() + " , Enabled :" + !step.isDisabled()); tsToBeAdded.add(step); } } } } // check if test step list not empty if (tsToBeAdded.size() > 0) { // add the steps to Load test test case com.eviware.soapui.model.testsuite.TestCase loadTestCase = suite.getTestCaseByName("LoadTest"); for (TestStep testStep : tsToBeAdded) { System.out.println("Test step List - " + testStep.getName());
//TODO - somehow clone or add these test steps to this test case } } } }