HCL DevOps Test provides software testing tools across multiple domains: API testing, functional testing, UI testing, performance testing and service virtualization. It helps you automate and run tests earlier and more frequently to discover errors sooner - when they are less costly to fix.
This action enables the ability to run tests and compount tests from HCL DevOps Test UI projects on self hosted runners.
Configure a self hosted runner on a suitable machine
- The host machine will need a licensed copy of HCL DevOps Test UI and the UI projects containing the tests you wish to run.
- Add a self-hosted runner at an appropriate level, ensure you have configured network access.
- If you are using more than one runner assign it a suitable label and note this for later.
In the repository you want to apply the action to
- Create a folder named ".github/workflows" in the root.
- Create a .yml file with any name, inside the ".github/workflows" folder based on the following example content:
name: HCL DevOps Test UI
on: workflow_dispatch
jobs:
UI-Action:
runs-on: self-hosted
name: HCL DevOps Test UI
steps:
- name: Execute Test
uses: HCL-TECH-SOFTWARE/devops-test-ui-action@main
with:
projectDirectory: <C:\Data\MyProject>
scriptName: <MyScript>
- Update the parameterized items to refer to your project and tests (see parameter details below).
- If you have more than one runner configured, then use its label as the argument for runs-on.
- Push your updated yml file to the repository.
- Go to the Actions section in the repository and select the workflow.
- Click the Run workflow dropdown and the list of input boxes get displayed.
As an alternative to having all of the test projects pre-configured on the runner machine, users could leverage other actions within the workflow to pull down the latest copies.
- projectDirectory Fully qualified path to the HCL DevOps Test UI project directory.
- scriptName Name of the script to be executed without the extension. For eg., Script1 or TestFolder.Script1 in case Script1 is in a folder named TestFolder.
- iterationCount Number of dataset iterations to be run.
- logFormat Format of script execution logs. Choose from Default, none, json, xml, html, text, and TPTP.
- userArguments Additional playback arguments, if any. If there are multiple arguments, you must enclose each argument within double quotes and separate the arguments by providing a space between them.
- No runner available: Check that the runner still exists in GitHub, if the local agent has not connected to GitHub for a period of 14 days then it will be automatically removed.