Test case management

Helix ALM helps you efficiently manage your automated and manual testing efforts. You can create, organize, and run tests, track testing progress, and report on test results in one place, which you can rely on as a single source of truth.

Test cases

Test cases are the foundation of managing your testing effort in Helix ALM, whether it is automated or manual.

Test cases include all information a tester needs to successfully perform a test, including a description, conditions, detailed steps, expected results, and other test data. This information is used to determine if a product component works correctly and meets the specified requirements.

Test cases are reused for future testing efforts. They generally remain static unless they need to be modified because of an application change or incorrect information.

See Adding test cases for information about how to add test cases to support automated and manual tests.

Automated testing

Helix ALM builds a bridge to your continuous integration/continuous delivery (CI/CD) pipeline. Regardless of your automated testing tool, you can automatically upload build and test results to Helix ALM and associate the results with test cases for complete traceability.

In Helix ALM, automated testing support is based on automation suites. Automation suites define a group of related tests that run together. You can add suites based on functional area, specific testing type, or any logical organization that supports your testing needs. An automation suite contains:

  • Details about the group of automated tests.
  • Test cases related to the automated tests.
  • Builds and automated test results.
  • Other data, such as run configurations, which are used to run builds in Jenkins from Helix ALM.

To get meaningful data into Helix ALM, the build and test results need to be submitted to the automation suite in Helix ALM, which you can do the following ways.

  • If you use Jenkins, we recommend using the Helix ALM Test Management plugin for Jenkins to submit build and test results to Helix ALM. See Using the Helix ALM Test Management Jenkins plugin
  • If your automated tests produce a report format that is not supported by the Helix ALM Test Management plugin, or you are not using Jenkins, you can use the Helix ALM REST API to work with automation suites and submit build and test results to Helix ALM.

If you use both Jenkins and other tools for testing, you can use the Jenkins plugin and REST API in parallel.

After build and test result data is in Helix ALM, you can view it in a variety of ways to identify failures, test coverage gaps, and more. If an automated test fails, you can add a related issue from the test result to report the failure so it can be investigated and fixed. After adding the issue, you can trace back to see the test result it was created from, the test case, and the requirement, if linked.

Some automated testing features, such as working with automation suites and viewing test results, are only available in the web client. See theHelix ALM Web Client User Guide for more information.

See Managing automated tests for more information.

Manual testing

For your manual testing effort, you will work with test cases and manual test runs in Helix ALM.

Manual test runs are instances of test cases used to perform a test and document the results. Manual test runs are generated at milestones in the test cycle, such as when the development team provides a new build. They contain all information from the related test case and results for the specific instance of the test. A single test case can have one or more related manual test runs, which are performed against different builds or configurations.

The differences between test cases and manual test runs are:

  • Test cases generally do not change unless they include incorrect information or the tested application changes. They remain open and are reused for subsequent builds and releases. Test cases are not used to perform tests and do not include actual results.
  • Manual test runs are only used once to perform a specific test during a testing cycle. They include test results and are closed after the specific test is performed.

See Managing manual tests for more information.