Skip to main content

Overview

The Testspace workflow is based on the following GitHub's features:

  • branches
  • pull requests
  • issues
  • project boards

When a Testspace project is created, it is connected to a GitHub repository. Each space under the project maps to a corresponding branch in the repository. Spaces are automatically created and deleted based on the repository activity. Depending on your Branch flow, a branch contains the test specifications and the corresponding space represents the testing status for a release of the system under test.

Each branch in the respository maps to a corresponding space in the Testspace project.

Following the same process for code development, a branch should be used to isolate new test development without affecting other branches in the repository. Using a pull request enables others to discuss and review potential changes, follow-up with additional commits, all before your changes are merged into the base branch. Testspace visually indicates the state of a pull request on the space associated with the branch.

A pull request enables others to review "test" changes, using the same process as code development.

Issues can be leveraged in several capacities using the Testspace workflow. When executing tests, GitHub issues can be created by simply selecting a checkbox. The auto-generated issue will insert the test case status in the title [Failed], along with the spec name and test case name. Comments from the test case execution session will be added to the issue automatically as well. All of this information is used to support the triage process with the development team.

Issues can also be used to capture test requirements and referenced within a test specification header using a standard markdown link (i.e. refs: [#1](URL)).

Issues are also used when test execution planning is required. A Testspace cycle is defined with a GitHub issue. A cycle captures a set of test suites, focusing the testing on specific objectives.

Issues can be leveraged in several capacities using the Testspace workflow.

A GitHub project board, named Testspace, can be used to track the execution of one or more testing cycles and their ongoing status along with issues (aka bugs) that have been generated by the testing of the release.

A Project Board presents the status of defined test cycles and product issues generated from testing.