When you are working on a complex API, you need to involve several QA engineers in the process. Each team member is responsible for a separate aspect of the project: a particular test suite, test case, load test, virtual service and so on. In this case, all the team members should be able to work on the project at the same time and make changes independently.
To achieve this in ReadyAPI:
By default, ReadyAPI stores a project in a single file. It makes it easy to manage projects when you are working alone, but it may cause issues if several people start working on the same project at the same time.
If you use a Composite project, ReadyAPI splits your project into several files, so each team member can work on this project at the same time.
|If your file system has a path character limit (for example, 255 characters), you may need to rename your resources to make sure that the full path is shorter than the limit.|
To create a composite project:
In the project editor, click the Enable integration with Git button:
|Note:||In this case, ReadyAPI creates a composite project and initializes a Git repository in the project folder, which allows you to use Git integration.|
– or –
Set the Composite project property of a project to
|Note:||To initialize a Git repository in the project folder and thus enable Git integration, you need to click the Enable integration with Git button, or run the
(Optional) If necessary, change the composite project version.
Save the project.
There are two versions of composite projects – 1.2 and 1.3. Use the
Composite Project Format project property to change the composite project version.
In composite projects version 1.3, ReadyAPI saves security tests as individual files in the project root folder.
|Before using version 1.3 of composite projects, make sure all the team members have ReadyAPI 1.3 or later. You can use version 1.2 in any ReadyAPI version.|
In composite projects version 1.2, ReadyAPI saves security tests in the test case file.
|Note:||When you open a project in in the 1.2 version format, ReadyAPI offers you to save it in the 1.3 version format.|
Composite projects from older versions of SoapUI (5.0 or earlier) are automatically converted to the ReadyAPI format. ReadyAPI adds a unique identifier to each resource to ensure that all the resources and files have unique identities, and that resources and settings are not overwritten by accident.
|ReadyAPI creates a new folder for the converted project and does not make any changes to the old project. To keep working with the old project, do not upgrade to SoapUI 5.1 or later.|
Composite projects created in ReadyAPI version 2.4 or later must not be edited in ReadyAPI version 2.3 or earlier. The changes made in the earlier versions will not show up in the later versions, since the project structure is different.
If several team members are working on a project concurrently, it is crucial to store the project in a remote repository. This allows your team to synchronize their changes.
Also, you can use the continuous integrations system to obtain the most recent version of the project from the repository and run ReadyAPI tests as a part of your build process.
ReadyAPI supports Git, so you can work with your Git repositories directly in ReadyAPI. You can work with Git repositories stored either in GitHub or on a machine in your network. If you use some other VCS, you need to use external clients.
To add your project to a remote Git repository, perform the following steps:
Click the Enable integration with Git button in the project editor.
Do initial commit.
Push the changes to a remote repository. To do this, you need to specify a Git repository.
Right-click the project in the Navigator panel and select Git > Push. Click Yes in the subsequent confirmation dialog:
ReadyAPI will show the Share project dialog:
Specify the SSH or HTTPS URL of the repository to which the project will be saved.
If you use the HTTPS protocol, specify the username and password to access the repository.
|If you use two-factor authentication on GitHub, specify a personal access token in the Password field.
For instructions on how to generate a personal access token, see https://help.github.com/en/articles/creating-a-personal-access-token-for-the-command-line.
If you use the SSH protocol, specify the path to your private key and the passphrase you use when generating it.
When pulling changes from the remote repository, you may need to merge the changes. If you use Git integration, ReadyAPI can merge the changes automatically. Otherwise, you should use an external merging tool.
Below are some tips that will help you avoid some merging conflicts:
Enable the Pretty-print option.
If this option is disabled ReadyAPI saves the data of XML project files as a single line. In this case, automatic Git merging will fail and you will have to resolve conflicts manually.
Go to the WSDL section and enable the Pretty print project files option.
Save the project.
Enable the Normalize line breaks option.
Different operating systems use different line break symbols. If this option is enabled, ReadyAPI uses standard line break symbols, which reduces the number of merging conflicts.
Go to the UI section and enable Normalize line-break.
Save the project.