18 November 2008 - 2.5 user guide blog eclipse intellij netbeans maven PDF files forums bugs sourceforge eviware.com


Eviware Logo

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 a 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)

Creating a new Web Service test project from WSDL in soapUI

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.

A remote project in soapUI

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).

Project View

When double clicking a project you will get the Project View. The purpose of the project view is giving you a work area for project related functionality.

The Project view consist of a number of tabs available at the top and a number of inspectors available at the bottom of the project view. The inspectors are context sensitive and will change based on which tab you choose.

The Tabs are as follows:

  • Overview Tab The overview tab gives you an quick overview of your project as well as general project metrics such as the number of TestSteps the project contains.Read More
  • Project Coverage Tab (Pro Only) Project Coverage allows you to see how much of the interfaces contained in the project that is being covered by tests. This functionality will make you development process more efficient and will increase Test Quality considerably.Read More
  • Project Requirements Tab (Pro Only) The Project Requirements tab is an easy way of managing test requirements in soapUI.Read More
  • WS-Security Configuration Tab The WS-Security Configuration Tab is the working area for creating WS-Security configurations to be used in Tests, SOAP Monitor or MockServices.Read More

An example of a Web Service Test Project


Next: Project Overview