Web Service Testing 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 WSDL Interfaces corresponding to a SOAP/HTTP Binding for a defined PortType
- A number of REST Services optionally corresponding to a defined WADL
- 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. There are a number of file-system
references possible in a project which will be resolved relatively to the current working
directory or the Resource Root (see below) unless they are specified as absolute paths.
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.
soapUI 2.5 introduces a "Resource Root" project
level property that can be used to specify the root folder for referenced files (attachments, properties,
DataSink/DataSources, etc..). When specified, all paths will be relativized to this folder and displayed
as such.
Internally, soapUI abstracts the actual nature of projects and their contained interfaces, tests, etc...
opening the possiblity of support for other service definitions or 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 SoapUI Projects
Selecting the New SoapUI Project option from the Workspace Menu opens this dialog which prompts for:
- A name for the project is required
- An optional initial WSDL/WADL to import into the project (either file or URL)
- An option to create default requests when specifying an initial WSDL
- An option to generate a skeleton TestSuite for the specified WSDL or WADL
- An option to create Web Service Simulation of the imported WSDL
- An option to open a dialog to define a REST service without a WADL
- An option to store all file paths in project relatively to project file (will prompt to save project after closing dialog)

Remote Test Projects
soapUI 1.7.6 and following 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, or 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 or 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.
Test Project Actions
The following actions are available from the project nodes' right-button menu:
- Show Project View - Opens the Project View Window
- Add WSDL - Prompts for a WSDL (either URL or file path) that will be parsed and imported accordingly
- Add WADL - Prompts for a WADL (either URL or file path) that will be parsed and imported accordingly
- New REST Service - Opens a dialog for adding a new REST Service to this project
- Launch TestRunner - Opens the dialog for launching the
Command Line TestRunner
- Launch LoadTestRunner - Opens the dialog for launching the
Command Line LoadTestRunner
- Launch SOAP Monitor - Opens the dialog for launching the
SOAP Monitor
- 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
- Resolve Project - Resolves missing links between project elements
- 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
- Import Test Suite - Imports a previously exported TestSuite
- 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
- Resource Root : sets if folder to use as base for all referenced files
- 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
- Project Password - Sets the password to use for encrypting the project file when saving, see
Encryption for details.
- Composite Project - Sets this project to be saved as a composite project
(Read More).
- Script Language - Selects the script language to use for all scripts in the project. Changing this value
might require reloading of the project, depending on if existing script in the project have been edited/executed.
Read more at Scripting.
Next:
Project View