Managing automated tests
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.
How to upload builds and test results to Helix ALM
To get meaningful data into Helix ALM, build and test results need to be submitted to the automation suite in Helix ALM, which you can do in the following ways.
- If you use Jenkins, we recommend using the Helix ALM Test Management plugin for Jenkins. 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.
Key Helix ALM components
Using Helix ALM's automated testing features relies on test cases and automation suites.
Test cases
Test cases can be used for both manual and automated testing. Test cases include information a tester needs to successfully perform a test, including a description, conditions, steps, expected results, and other test data. Each test case should focus on only one component or requirement.
Associating automated test results with test cases is essential for viewing traceability between requirements, test cases, test results, and any related issues in Helix ALM.
Automation suites
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.
After build and test result data is in Helix ALM, you can view it in a variety of ways to identify failures, find 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.
Common tasks
Following are common tasks you may perform when working with test cases and automation suites depending on your role and security permissions.
Add test cases
Add new test cases to capture test details and track all information throughout a test case's lifecycle, including steps and expected results, associated automated test results, related email, workflow, links to other Helix ALM items, and history. See Adding test cases.
When a test case is complete and ready to use for testing, move it to the appropriate workflow state that it is ready to be used for testing. See Adding workflow events to items.
Add automation suites
Add automation suites to group related test cases, builds, and automated test results.
Run automation suites
You can run an automation suite to build the Jenkins project selected for an automation suite from Helix ALM. If you use the Jenkins plugin, the build results are submitted to Helix ALM. Although you may have builds automatically scheduled to run in Jenkins, you may want to run an automation suite from Helix ALM to test the configuration with Jenkins to make sure it works as expected or rerun a single failed build to troubleshoot.
View automation suites
View an automation suite to see a summary view of automated test results for the suite, build information, and details about the suite.
Associate automated test results with test cases
You can automatically or manually associate automated test results with test cases. When possible, we recommend using automatic association, although it requires creating test cases and updating your automated test scripts before running tests and submitting results to Helix ALM.
View builds
A build represents a group of automated tests run in an automated testing tool. Builds are submitted to Helix ALM when they finish running in Jenkins if you use the Helix ALM Test Management plugin for Jenkins or via the Helix ALM REST API.
Generate test cases from automated test results
You can generate test cases from automated test results. For example, you may want to do this if you already use a large number of automated tests, but do not have related test cases in Helix ALM for them.
When you create a test case from a test result, the result is associated with the new test case. Associating automated test results with test cases is essential for viewing traceability between requirements, test cases, test results, and any related issues in Helix ALM.
Add related issues from automated test results
If you work with issues in Helix ALM, you can create issues from automated test results to report problems found during a test. For full traceability, the result needs to be associated with the test case.