Skip to content
| Marketplace
Sign in
Azure DevOps>Azure Pipelines>Eggplant Runner
Eggplant Runner

Eggplant Runner

Eggplant

|
222 installs
| (0) | Free
Eggplant DAI Runner enable integration of DAI test configuration execution in pipeline
Get it free

Eggplant DAI Runner

Introduction

The Eggplant Runner extension for Azure DevOps is an Eggplant DAI integration tool that enables you to launch DAI tests from within an Azure DevOps workflow pipeline. With this extension, you can continuously test your applications with DAI’s model-based approach to testing. For more information about testing software with Eggplant, visit: https://www.eggplantsoftware.com.

Specifically, the Eggplant Runner integrates with DAI by communicating with DAI-provided API services to run test configurations.

Using Eggplant DAI Runner in your workflow

Step 1: Navigate to the Azure DevOps tab on the Visual Studio Marketplace site, search for Eggplant Runner, and click it when it appears in the list of suggested results.

image

Step 2: Click Get it free to display the Azure DevOps Organization and Download page.

image

Step 3: Select the Azure DevOps organization that you want to install the extension for and click Download.

Step 4: Click Proceed to organization.

image

Step 5: Create pipeline .yml in the project and click Edit at the pipeline.

image

Step 6: At the Tasks search bar, enter Eggplant Runner and click it when it appears in the list of suggestions.

image

Step 7: Fill in the Eggplant Runner input values: the DAI version, your DAI Server URL, how you want to run your test config, and your DAI client ID and secret, and click Add.

image

Step 8: Review the add information in the azure-pipelines.yml file.

image

Step 9 (Optionally): Configure your pipeline to access the DAI client secret from a variable as follows:

  1. Navigate to Library and create a property group
    Add the Client Secret as a variable
    image

  2. Click Pipeline permission and select the pipeline. image

  3. Update the azure-pipelines.yml file to add a variables section and specify your secret variable as a group variable as shown below: image

Inputs

daiVersion

[Required] Version of the DAI application, e.g. 7.0.0-3, 25.1.0+3.

serverURL

[Required] The URL of the Eggplant DAI server, http(s)://dai_server_hostname:portnumber.

testConfig

[Optional] Not required for execution, auto-generated input from DAI Test Config dropdown selection using task assistant, preview as below:

Selection Value
By Test Config IdById
By Test Config Name & Model NameModelBased
By Test Config Name & Suite NameScriptBased

testConfigID

[Required if testConfigName is not given] The ID of the Eggplant DAI test configuration that you want to run, e.g. 389fee3e-9d6b-43e6-b31e-f1d379f27cdf.
Test configuration ID can be obtained by go to Test Config > Look for a particular test config > Test config id can be obtain from url. image
Alternatively, use testConfigName and remove this input.

testConfigName

[Required if testConfigID is not given] The name of the Eggplant DAI test configuration that you want to run.
Must provide one of the following supporting arguments:

  • modelName

DAI model name for the specified test configuration. (Use this argument if only testConfigName is provided)

  • suiteName

DAI suite name for the specified test configuration. (Use this argument if only testConfigName is provided)

clientID

[Required] The client ID to use to authenticate with the Eggplant DAI server.

clientSecret

[Required] The client secret to use to authenticate with the Eggplant DAI server.
Alternatively, you could set a repo secret in Repo Settings > Secrets > Actions and refer to it like below:
clientSecret: "${{ secrets.DAI_CLIENT_SECRET }}".

The DAI Client Secret can be obtain by go to http(s):/dai_server_hostname:portnumber/ > System > API Access > "Add New". (for new API access creation)

image

requestTimeout

[Optional] The timeout in seconds for each HTTP request to the Eggplant DAI server.
Default: 30

requestRetries

[Optional] The number of times to attempt each HTTP request to the Eggplant DAI server.
Default: 5

backoffFactor

[Optional] The exponential backoff factor between each HTTP request.
Default: 0.5

logLevel

[Optional] The logging level.
Default: INFO

CACertPath

[Optional] The path to an alternative Certificate Authority pem file.

testResultPath

[Optional] The path to a file where the test results will be stored in JUnit XML format.
Example C:\results\result.xml

eggplantRunnerPath

[Optional] The path to Eggplant runner CLI executable.

parameters

[Optional] The global parameter(s) to override in the format parameter_name=parameter_value.
Example username=Lily
You can override multiple parameters by separating them with a delimiter of two semi-colons (;;).
Example username=Lily;;city=Paris;;hobby=Jogging

parametersFilePath

[Optional] The path to a user-created JSON file that contains the global parameters you want to override.
Example of a parameter JSON file:

{
  "MyEnvironment": "Production",
  "username": "Eggy@eggplant.com"
}

filterBy

[Optional] The filters to execute specific steps within a test configuration in the form of filter_name=filter_value.
Example step_status_include=Failed,Error
You can enter multiple filters by separating them with a delimiter of two semi-colons (;;).
Example step_status_include=Failed,Error;;test_case_name_exclude=login_user
Filter available: step_status_include, step_status_exclude, test_case_tag_include, test_case_tag_exclude, test_case_name_include, test_case_name_exclude, scenario_tag

filterByJson

[Optional] The path to a user-created JSON file that contains all the filters to execute specific steps within a test configuration.
Example of a test configuration's step execution filter JSON file:

{
  "step_status": {
    "include": "Passed,Failed",
    "exclude": "Error,Cancelled,Untested"
  },
  "test_case_tag": {
    "include": "admin, tc_tag1",
    "exclude": "logic module, critical"
  },
  "test_case_name": {
    "include": "tc_001",
    "exclude": "login_user"
  },
  "scenario_tag": "@scea,@input_tag ~@order_page"
}

previousTaskInstanceID

[Optional] The UUID of a previously executed test configuration definition to be used in the current test configuration run. Defaults to the last ran execution of the given test configuration.

Output

Pipeline triggered

Based on the pipeline .yml configuration, when there is commits or pull request action performed. The pipeline will be triggered and Eggplant DAI Runner will be executed.

image

Console Output

image

Notes

  1. Eggplant DAI Runner supports 3 type of operating system:
  • Linux
  • Windows
  • MacOS
  1. If the input for your parameters/filterBy in yml contains the single quote (') special characters, you must replace it with two single quote characters ('').
    This is because single quote characters that are not escaped are used to wrap all the parameter input.
    Example parameters: 'value="one'' quote"'

  2. Release version 2.0.16 now allows passes after re-run.

  • Contact us
  • Jobs
  • Privacy
  • Manage cookies
  • Terms of use
  • Trademarks
© 2025 Microsoft