26 September 2007 - 1.7.6 home user-guide eclipse jbossws intellij netbeans maven 1.X/2.X PDF files forums bugs sourceforge






Projects

Any number of projects can be created in the current soapUI Workspace, either by creating new ones (see below) or importing existing ones.. A soapUI Project contains the following items in the Navigator:

  • A number of Interfaces each corresponding to a SOAP/HTTP Binding for a defined PortType
  • A number of TestSuites containing TestCases for these Interfaces' Operations
  • A number of MockServices containing Mock implementations of these Interfaces' Operations

soapUI projects are saved in a self contained xml-file upon creation (as described above). This file can be safely moved around, checked into CVS, sent by email, etc. It only has file-system references if an interface/WSDL has been imported from a local file (not recommended due to this limitation) and/or if referenced attachments / inline files are used (see Attachments). When obtaining an existing soapUI project file, this can be added to the current workspace with the "Import Project" action on the Workspace popup menu.

Internally, soapUI abstracts the actual nature of projects and their contained interfaces, tests, etc... opening the possiblity of support for other service-definitions/protocols than WSDL/SOAP (check out the com.eviware.soapui.model package). Currently though, the only implementation for these interfaces is for WSDL 1.1 and the SOAP/HTTP binding (as required by Basic Profile 1.0). Therefore, all actions and functionality described will be in regard to this implementation.

Creating Projects

Selecting the New WSDL Project option from the Workspace Menu opens this dialog which prompts for:

  • A name for the project is required
  • An optional inital WSDL to import into the project (either file or URL)
  • An option to optionaly create default requests when specifying an initial WSDL
  • An option to save the empty project to a file (unsaved projects will be prompted for a project-file on exit).

Once specified, soapUI will prompt for a filename to which the project is to be saved (defaults to <project-name>-soapui-project.xml). Put this file anywhere you want, te file is a regular XML file and can be checked into SCM systems and edited with any XML editor.

Remote Projects

soapUI 1.7.6 can handle remote project-files over http(s) in read-only mode (basic authentication is supported). When importing, the URL to the project file is saved in the workspace and can be closed/opened/reloaded as usual.

Remote projects are always closed at startup and marked with a light-blue icon in the navigator.

This opens for a number of possibilities:

  • Projects can easily be distributed to clients without the requirement to download updates, for example for testing or demonstration purposes.
  • The command-line testrunners also accept http-url project files, allowing for centralized storage of project files even if they are run in a distributed testing environment

Remote projects can be modified as normal projects, but soapUI will not prompt to save them on exit/close. If changes to a remote project need to be saved, use the "Save as" Project Menu action which prompts to save the project locally, transforming it to a regular file-based project.

Project Actions

The following actions are available from the project nodes' right-button menu:
  • Add WSDL from URL - Prompts for a WSDL URL that will be parsed and imported accordingly
  • Add WSDL from file - Prompts for a local WSDL file that will be parsed and imported accordingly
  • Launch TestRunner - Opens the dialog for launching the command-line TestRunner
  • Launch LoadTestRunner - Opens the dialog for launching the command-line LoadTestRunner
  • Generate WSDL with JBossWS - Invokes the integrated JBossWS tools for generating a WSDL from code as described under JBossWS Integration
  • New TestSuite - Prompts to create a new TestSuite in the selected project
  • New MockService - Prompts to create a new MockService in the selected project
  • Rename - Prompts to rename the selected project. The new name will be shown in the navigation tree. The filename of the project will be unaffected
  • Remove - Prompts to remove the selected project from the workspace. The project file will not be deleted and can be imported back into the workspace subsequently
  • Reload Project - Prompts to reload the project from its external source, discarding any changes
  • Close Project - Prompts to close the current project, disabling it in the workspace
  • Save Project - Saves the state of the project and all its contained items to the underlying project file
  • Save Project As - Saves the state of the project and all its contained items to a new project file
  • Online Help - Displays this page in an external browser

Project Details Tab

The "Details" tab shown in the bottom-left shows the following values when the workspace node is selected in the navigation tree
  • Name : the name of the project
  • Description : an arbitrary description of the project, displayed as a tooltip over the projects' node in the Navigator.
  • File (read-only): the selected projects project-file
  • Cache Definitions : sets if definitions should be cached for this project (see Caching Definitions). This overrides the global "Cache WSDLs" setting under the WSDL Preferences settings tab


Next: Interfaces