Forum Discussion

xerces8's avatar
xerces8
Occasional Contributor
8 days ago

Project WSDL replaced from another project

I have SoapUI v5.8.0 and two projects loaded.

I noticed that if I open the Interface Viewer for first project, then the WSDL for the second project gets overwritten by the WSDL of the first project.

In steps:

 - close SoapUI
 - open SoapUI
 - in the project list on the left (the Navigator), expand the first project and double click the first (and only) interface (the icon with two green arrows, pointing left and right)
 - the Interface Viewer appears with correct data, including the third tab named "WSDL Content", which shows the correct WSDL
 - now expand the second project and double click the first (and only) interface there
 - the Interface Viewer appears with correct data in the first tab (named "Overview"), but the third tab named "WSDL Content", shows the WSDL from the first project!

Most things work, but if a TestCase in second project has a "Schema Compliance" assertion, it will fail, as the schema in the wrong WSDL is used and it does not match the actual test case result for a web service response.

It is similar, if I first open the Interface Viewer for the second project, ie:

 - close SoapUI
 - open SoapUI
 - expand the second project and double click the interface
 - the Interface Viewer appears with correct data, including the third tab named "WSDL Content", which shows the correct WSDL
 - now expand the first project and double click the interface there
 - the Interface Viewer appears with correct data in the first tab (named "Overview"), but the third tab named "WSDL Content", shows the WSDL from the second project!

After exiting SoapUI, the wrong WSDL is not saved.

Also, if I don't open the Interface Viewer after starting SoapUI but just run the test suites, a similar thing happens: if I first run the test suites from first project, and then the tests from second project, the second project tests will fail with "Schema Compliance" assertions, as again, the second WSDL is "overwritten" with the first.

The problem appears also when running testcases from java (using class com.eviware.soapui.SoapUI from soapui.jar):

if first project test suites are run and then second project test suites, the second project tests will have an assertion error as they will compare to the wrong WSDL schema (the one from the first project).

 

Important detail: for both projects the WSDL URL (as shown in the first tab of Interface Viewer) is same.
This is because both the projects (the servers, not the SoapUI projects) were developed, well on my PC and they were created at different times, when running in my IDE. So both URLs are like: https://localhost:8443/foo/bar?wsdl

I guess this may be related to the problem and will try a workaround by editing the SoapUI project XML file to make the URLs different. Unless a better approach is suggested...