Integrations
Testspace works with any test automation: Standalone Projects need no other service. Connecting your Organization to a repository host adds Connected Projects; Jira adds issues, and AWS adds Lambda fixtures for Manual testing.
Services
The owner connects services on the Account tab, under Services. Each service your Testspace instance supports is listed (GitHub, Bitbucket, GitLab, AWS and Jira), with Connect or, once connected, connected as the account used and the Reconnect and Disconnect buttons.
| Service | A connection gives you |
|---|---|
| GitHub, GitLab, Bitbucket | Connected Projects, Spaces for branches and pull requests, a check on each commit, issues, and finding users to invite |
| Jira | Jira projects as an issues provider |
| AWS | Lambda functions as Manual test fixtures |
Signing in and connecting are separate: the account you sign in with doesn't have to be the one used for a service connection. You can sign in with Bitbucket, say, while the Organization is connected to GitHub.
GitHub
A GitHub connection gives you:
- Connected Projects: admins create a Project from a repository with New Project (Connected Projects).
- Spaces from the repository: Testspace creates a Space for each branch and pull request.
- A commit check: each Result published with a commit ID posts a check on that commit, following the Result's Health (CI Build Status and the CI Check).
- Issues: a Connected Project creates and tracks issues in its repository, and a Standalone Project can choose a GitHub repository as its issues provider (Issue Providers).
- Users: members of the connected GitHub organizations are listed in the Invite dialog, and a member who signs in with GitHub joins the Organization automatically, with access to the Projects of the repositories they can access.
Connect
Click Connect and authorize Testspace on GitHub. The GitHub section then lists the GitHub organizations where the Testspace App is installed and you are a member, and your personal account if the App is installed there. Check an organization to allow Testspace to use it; its repositories become available for new Projects. To install the App on another organization, use the click here link above the list.
If you aren't an owner of the GitHub organization, installing the App sends a request to its owners, and the organization is listed as pending approval until one of them accepts (Members).
Reconnect
Reconnect obtains a new GitHub token. Use it when the section shows The OAuth access token for GitHub has been invalidated, or to connect with a different GitHub account. Admins creating a Project see There was a problem with the GitHub service connection. Please contact account owner when no GitHub organization is checked, most often because the owner hasn't checked one yet.
Disconnect
Disconnect removes the GitHub connection from the Organization. Unchecking one organization does the same for that organization only. Either way, the affected Projects stay Connected (nothing is converted to Standalone), are marked disconnected, stop syncing with their repositories, and their branch Spaces, except the default branch's, are hidden; their Results are kept: see Disconnection. Issue creation for their repositories stops too.
Checking the organization again reconnects its Projects.
GitLab
A GitLab connection gives you the same as GitHub for GitLab repositories: Connected Projects, Spaces for branches and merge requests, the commit check, issues in the repository of a Connected Project, and users to invite. A Standalone Project can't choose a GitLab repository as its issues provider (Issue Providers).
Click Connect and authorize Testspace on GitLab. The GitLab section lists your GitLab groups where you are a Maintainer or Owner, and your personal namespace; check one to use it. Reconnect obtains a new token and recreates the webhooks. Disconnecting, or unchecking a group, marks its Projects disconnected, as for GitHub.
Bitbucket
A Bitbucket connection gives you the same as GitHub for Bitbucket repositories: Connected Projects, Spaces for branches and pull requests, the commit check, issues in the repository of a Connected Project, and users to invite. A Standalone Project can't choose a Bitbucket repository as its issues provider (Issue Providers).
Click Connect and grant Testspace access on Bitbucket. The Bitbucket section lists the workspaces you own; check one to use it. Reconnect obtains a new token and recreates the webhooks. Disconnecting, or unchecking a workspace, marks its Projects disconnected, as for GitHub.
Jira
A Jira connection makes Jira projects available as issues providers: a Standalone Project can choose one, and a Connected Project can name one in its .testspace.yml (Issue Providers). Testspace creates issues there, comments on them, and follows their status.
Click Connect and authorize Testspace with Atlassian. The Jira section lists your Jira sites; check a site to use its projects.
Reconnect obtains a new token and recreates the webhooks. Unchecking a site, or Disconnect, stops the Testspace Projects whose issues provider is in that site from creating issues and following their status; checking the site again restores them.
AWS
An AWS connection lets Manual test specs run AWS Lambda fixtures before and after a spec.
Click Connect and enter an AWS access key:
- Access key ID
- Secret access key
The key's user needs permission to invoke Lambda functions, such as the AWSLambdaRole policy; without it, Testspace shows The user does not contain necessary "AWSLambdaRole" permission policy. See AWS access keys for creating one. For the Lambda functions themselves, an execution role that can write to Amazon CloudWatch Logs (such as lambda_basic_execution) is recommended.
Reconnect asks for the key again; Disconnect removes it.
CI Systems
Testspace publishes from any CI system with the Testspace client. CI/CD Support has the setup for each supported system.
Code Coverage Services
Testspace can link a Project to Codecov or Coveralls with the client's --link option, and graphs their coverage: see Third Party.
Issue Providers
Where a Project creates and references issues, and what each provider supports, is on Issue Providers.