documentation
  • Introduction
    • Overview
      • Scandium Features & Concepts
  • Setting up your account
  • Create a test case
  • Supported Actions
  • File uploads
  • Assertions
  • Groups
  • Step settings
  • Variables
  • System Functions
  • Email Testing
  • Data-driven Testing
  • Test Suites
  • Results
    • Test results
    • Suite results
  • Why did my test fail?
  • API Testing
    • Getting Started
    • API Suites
    • Scheduling and Monitoring
  • Mobile Application Testing
    • Create a mobile project
    • Uploading Apps
      • Android
      • iOS
    • Testing mobile app
  • Common Testing Scenarios
  • Test Management
    • Tests and Folders
    • Tags
  • INTEGRATIONS
    • Continuous Integration (CI/CD)
    • Azure Devops
    • Bamboo CI
    • Bitbucket Pipelines
    • Circle CI
    • Github Actions
  • GitLab CI
  • Jenkins
  • Travis CI
Powered by GitBook
On this page
  • What You’ll Achieve
  • Prerequisites
  • Step 1: Configure Environment Variables in Jenkins
  • Step 2: Add Build Steps in Jenkins Pipeline
  • Step 3: Run Your Jenkins Job
  • Troubleshooting Tips

Jenkins

This guide will help you integrate Scandium into your Jenkins pipeline. With just a few steps, you’ll be able to run automated tests from your Scandium test suite as part of your CI/CD process.

PreviousGitLab CINextTravis CI

Last updated 23 days ago

What You’ll Achieve

By the end of this guide, your Jenkins job will:

  • Automatically run tests from a Scandium suite during the build process.

  • Display test results directly in Jenkins console output.


Prerequisites

Before you begin, make sure you have:

  • A account with:

    • Your API_TOKEN

    • A PROJECT_ID and SUITE_ID

  • Jenkins installed and running

  • curl and jq installed on the Jenkins build agent

  • A Freestyle project or Pipeline job configured in Jenkins


Step 1: Configure Environment Variables in Jenkins

You can set environment variables in two ways:

Option A: Global Jenkins Environment Variables

  1. Navigate to Manage Jenkins > Configure System.

  2. Under Global properties, check Environment variables.

  3. Add the following variables:

Variable Name

Description

API_TOKEN

Your Scandium API token

PROJECT_ID

Your Scandium project ID

SUITE_ID

Your Scandium test suite ID

HUB_URL

(Optional) Selenium Grid URL, if running on your infrastructure

STARTING_URL

(Optional) The URL your tests should start from. This will override all tests within the suite you are executing.


Step 2: Add Build Steps in Jenkins Pipeline

If using a Pipeline Job, your Jenkinsfile should look like this:

pipeline {
  agent any

  environment {
    BROWSER = 'chrome'
    SCREENSHOT = 'true'
    VARIABLES = '{}'
    RETRY = '0'
    MAX_ATTEMPTS = '30'
    WAIT_PERIOD = '120'
  }

  stages {
    stage('Checkout Code') {
      steps {
        checkout scm
      }
    }

    stage('Install Dependencies') {
      steps {
        sh 'sudo apt-get update && sudo apt-get install -y curl jq'
      }
    }

    stage('Download Scandium Script') {
      steps {
        sh '''
          SCRIPT_URL="https://raw.githubusercontent.com/GetScandium/files/refs/heads/main/scandium_script.sh"
          curl -o scandium_script.sh $SCRIPT_URL
          chmod +x scandium_script.sh
        '''
      }
    }

    stage('Run Scandium Test') {
      steps {
        sh './scandium_script.sh'
      }
    }
  }
}


Step 3: Run Your Jenkins Job

Trigger your Jenkins job manually or on a git push event. Your Scandium test suite will execute as part of the build process.


Troubleshooting Tips

Problem

Solution

❌ Missing required variable

Ensure API_TOKEN, PROJECT_ID, and SUITE_ID are set in Jenkins env vars

❌ Script not found or not executable

Double-check the script URL and ensure it has execution permissions (chmod +x)

🕒 Stuck waiting

Adjust WAIT_PERIOD and MAX_ATTEMPTS in the Jenkinsfile


Scandium