Eggplant Runner

Introduction

The Eggplant DAI Plugin for Jenkins launches DAI tests from within a Jenkins pipeline. You can use it to continuously test your application using Eggplant's model-based approach to testing. For more information about Eggplant, visit https://www.eggplantsoftware.com.

This introduction should include a screenshot of a Jenkins pipline triggering a DAI run.

Install Eggplant DAI Plugin for Jenkins

Step 1: Login to your Jenkins

Go to http://localhost:{portnumber}/ and login into your Jenkins account image

Step 2: Manage Jenkins

  • Go to Manage Jenkins > Manage Plugins image

  • Go to Available and enter Eggplant Runner in the search feature

  • Check on the Eggplant Runner and click on Install without restart image

How to use Eggplant DAI Plugin for Jenkins

Freestyle project

Step 1 : Create new project -> Freestyle project -> Click OK

image

Step 2: Add Eggplant Runner as build step

image

Step 3: Fill in Eggplant Runner parameter's value -> Click Save

image

Inputs

serverURL

Required The URL of the Eggplant DAI server, e.g. http://localhost:8000.

testConfigID

Required The ID of the Eggplant DAI test configuration that you want to run, e.g. 09c48b7d-fc5b-481d-af80-fcffad5d9587. Test configuration ID can be obtain by go to test config > look for a particular test config > test config id can be obtain from url. image

clientSecret

Required The client secret to use to authenticate with the Eggplant DAI server, e.g. e9c15662-8c1b-472e-930d-aa0b11726093.
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 ID can be obtain by go to http://kc-localhost:8000/auth > client > search for client:dai:agent:integration > credential image

clientID

Optional The client ID to use to authenticate with the Eggplant DAI server.
Default: client:dai:agent:integration

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

pollInterval

Optional The number of seconds to wait between each call to the Eggplant DAI server
Default: 5

logLevel

Optional The logging level
Default: INFO

CACertPath

Optional The path to an alternative Certificate Authority pem file

Output

Build the project to run the step image

Execution details are shown in Console Output image

Advanced Usage

Pipeline project

Step 1: Create Pipeline project

Step 2: Copy and paste below scrips into Pipiline script section

pipeline {
    agent any

    environment {
        DAI_CLIENT_SECRET = credentials('eggplant-runner-client-secret')
    }

    stages {
        stage('Eggplant Runner') {
            steps {
                eggplantRunner serverURL: 'Your DAI server URL', testConfigId: 'Your test configuration that want to execute'
            }
        }
    }
}

image

Step 3: Setup Public Credential for Client Secret -> Click Ok image

Step 4: Build the pipeline project Output are shown in Console Output image

License

This plug-in is licensed under the terms of the MIT license

Contributing

You need to install the following dependencies if you want to contribute to the Eggplant DAI Runner for Jenkins:

  1. You can download and install Java 11 from the Eclipse Temurin website.
  2. Download Maven from the Apache Maven website. Make sure to download one of the binary archives (with bin in their name).
  3. To verify that Maven is installed, run the following command: mvn -version
  4. You can use launch.json to run 'Debug (Attach)' to launch an local Jenkins instance for development.