SmartBear Connect 2018
Join us at SmartBear Connect 2018 on October 29th & 30th in Boston, MA.
Apply to speak and share your experience with the greater SmartBear Community
Reply
Staff

Announcement: Java 7 required for SoapUI Open Source 5.2 (coming soon)

Hi,

 

Dear SoapUI users,

 

We think the time is ripe to drop support for Java 6 in SoapUI Open Source. Sticking to an old an unsupported version of Java is holding us back.

 

As of version 5.2, you will need Java 7 if you want to run SoapUI with your own JRE, e.g. on a Continuous Integration server. We hope this will not cause you any inconvenience.

 

If you're running the installer version of SoapUI, this will not affect you in any way, because we bundle Java 7 in the installation.

 

 

As always, comments are welcome!

 

Best regards,

Matti

Product Owner SoapUI/LoadUI
Posts: 5,217
Registered: ‎05-17-2013

Re: Announcement: Java 7 required for SoapUI Open Source 5.2 (coming soon)

That's absolutely make sense as most of the customers on jdk7 or even move ahead. In fact, I use jdk7 along with soapui from long time without any issues. Even jdk 7 reaches to a stage where oracle stopped updates.
Occasional Contributor

Re: Announcement: Java 7 required for SoapUI Open Source 5.2 (coming soon)

Good !

 

We have also used jdk 7 for a while with Soap Ui 5.0 and it has been working fine.

Occasional Contributor

Re: Announcement: Java 7 required for SoapUI Open Source 5.2 (coming soon)

Hi Matt,

 

 

 

Thanks for the update.

 

I am unable to extract the assertion error messages of a test step while executing from Java.I am also able to get the result for Test suite, test case and step wise. Here the challenge is to get the assertion(s) and their results. The message we are extracting from step result is not even meaningful. need to implement to capture stacktrace or a meaningful error.

 

 

Does it any way related to Java version. Currently I am using Java 8. Please suggest if you understood.

 

 

Occasional Contributor

Re: Announcement: Java 7 required for SoapUI Open Source 5.2 (coming soon)

Hi,

Got the failed assertions from the SoapUI test steps along with detailed message, exception and titles. Hope it will be useful to all those people who want to create reporting for open source version

 

/**
* to execute SoapUI test cases from a SoapUI project using Java
*/
public static void runSoapUITest(){

String suiteName = "";
String reportStr = "";

//instantiate lists for storing soapui test suites and test cases
List<TestSuite> suiteList = new ArrayList<TestSuite>();
List<TestCase> caseList = new ArrayList<TestCase>();

//Set the SoapUI stand alone server as test engine
SoapUI.setSoapUICore(new StandaloneSoapUICore(true));

// specified soapUI project
WsdlProject project = null;

try {
//@Todo: Make relative path in enhancements
//the file path need to be in a configuration file
String soapUIProjectFilePath="C:\\SoapUI\\NDC 3-soapui-project.xml";

//Path of the project location
project = new WsdlProject(soapUIProjectFilePath);

} catch (XmlException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
} catch (SoapUIException e) {
e.printStackTrace();
}

// get a list of all test suites on the project
suiteList = project.getTestSuiteList();

// iterating through each suite
for(int i = 0; i < suiteList.size(); i++){

//Neglect if suite is disabled/inactive
if(suiteList.get(i).isDisabled()){
continue;
}

// get the test suite name000
suiteName = suiteList.get(i).getName();

System.out.println("Test Suite Is :" + suiteName );
reportStr = reportStr + "\nTest Suite: " + suiteName;

// get a list of all test cases from the test suite
caseList = suiteList.get(i).getTestCaseList();

WsdlTestCaseRunner runner;

// iterating through each test case
for(TestCase testcase : caseList){
//neglect the disabled/inactive test case
if (testcase.isDisabled())
{
continue;
}

//Getting the WsdlTestCaseRunner
runner = new WsdlTestCaseRunner((WsdlTestCase) testcase, new StringToObjectMap(testcase.getProperties()) );

//Running the Test Case
runner.run();

//Getting the result of each step
List<TestStepResult> results = runner.getResults();

System.out.println("Test Case : " + testcase.getName());

//iterating through the results of the test steps executed in the test case
for(TestStepResult result : results ){
TestStepStatus stepStatus = result.getStatus();
//printing the status , we can have a check here for OK , FAILED or UNKNOWN test cases
System.out.println("Test Step Is : "+ result.getTestStep().getName() + " Test Step Status Is : " + stepStatus.toString());

if (result instanceof WsdlTestRequestStepResult){
if(result.getMessages().length>0){
//Getting the error messages
String[] errStr = result.getMessages();
StringBuilder sb= new StringBuilder();

//iterating through the error messages
for(int ii=0;ii<errStr.length;ii++){
String asserWithExcptn=errStr[ii];
String assertName= asserWithExcptn.substring(0,asserWithExcptn.indexOf("]")+1);
String assertResult= asserWithExcptn.substring(asserWithExcptn.indexOf("]")+1, asserWithExcptn.length());
sb.append("The failed assertion #"+(ii+1)+" as follows.. \n");
sb.append("The assertion is: "+assertName+"\n");
sb.append("The message is:"+assertResult);
sb.append("\n");
}
System.out.println(sb.toString());
}
}
}
reportStr = reportStr + "\n\tTestCase: " + testcase.getName() + "\tStatus: " + runner.getStatus() + "\tReason: " + runner.getReason();
}
}
//'reportStr' has the status of all the test cases
System.out.println("The Execution Status as follows: \n"+reportStr);
}

New Contributor

Re: Announcement: Java 7 required for SoapUI Open Source 5.2 (coming soon)

Hello,

 

If someone is planning to use the last JDBC drive from Microsoft, you would need to use Java 8 instead of Java 7 otherwise it will not work.

 

Miguel

Community Expert

Re: Announcement: Java 7 required for SoapUI Open Source 5.2 (coming soon)

[ Edited ]

Java 7 was EOL April, 2015 ... over 2 years ago. Why not ship with Java 8?

Occasional Contributor

Re: Announcement: Java 7 required for SoapUI Open Source 5.2 (coming soon)

It totally make sense, for security reasons people have to move to java 7 or 8.