SmartestQADocs
INTEGRATIONS

Integrations

Integrate SmartestQA with your existing tools. Jira, Slack, Teams, CI/CD pipelines and more.

Overview

SmartestQA integrates with popular tools to automate your testing processes and enhance team communication.

Issue Tracking

Jira, Azure Boards

Notifications

Slack, Teams, Email

CI/CD

Jenkins, GitLab, GitHub

API

REST API, Webhooks

Jira

Integrate with Jira to automatically link test results to issues and create bug tickets.

Features

  • Automatic bug ticket creation when test fails
  • Import Jira issues as requirements
  • Automatically add test execution link to issue
  • Add screenshots and videos as attachments
  • Two-way sync - Changes in Jira reflect in SmartestQA

Setup

  1. 1 Project Settings → Integrations → Jira
  2. 2 Enter your Jira URL (e.g., company.atlassian.net)
  3. 3 Create an API Token and paste it
  4. 4 Configure project and issue type mapping

Automatic Bug Ticket Example

[SmartestQA] TC-101: Login Test - FAILED

Environment: Staging

Browser: Chrome 120

Error: Element not found: #login-button

Execution Link: https://app.smartestqa.ai/exec/12345

Attachments: screenshot.png, video.mp4

Slack

Automatically send test results to your Slack channels. Keep your team instantly informed.

Notification Types

Slack #qa-alerts
SQ

SmartestQA 12:34 PM

Daily Regression - FAILED

45/50 passed - 5 failed - 2m 34s

View Report

Setup: Project Settings → Integrations → Slack → Click "Add to Slack" button and select your channel.

Microsoft Teams

Send test results to your Teams channels. Easy integration with webhooks.

Setup Steps

  1. 1 Go to the target channel in Teams
  2. 2 Add Connectors → Incoming Webhook
  3. 3 Copy the Webhook URL
  4. 4 Paste in SmartestQA → Integrations → Teams

Webhook URL

Jenkins

Integrate SmartestQA tests into your Jenkins pipeline. Run automated tests with every build.

Jenkinsfile Example

pipeline {
    agent any

    environment {
        SMARTEST_API_KEY = credentials('smartestqa-api-key')
    }

    stages {
        stage('Build') {
            steps {
                sh 'npm run build'
            }
        }

        stage('Deploy to Staging') {
            steps {
                sh 'npm run deploy:staging'
            }
        }

        stage('Run SmartestQA Tests') {
            steps {
                sh '''
                    curl -X POST "https://api.smartestqa.ai/v1/schedules/12345/run" \
                        -H "Authorization: Bearer ${SMARTEST_API_KEY}" \
                        -H "Content-Type: application/json" \
                        -d '{"environment": "staging", "wait": true}'
                '''
            }
        }
    }

    post {
        failure {
            slackSend(message: "Build failed! Check SmartestQA report.")
        }
    }
}
wait: true

Waits until tests complete. Build fails if tests fail.

wait: false

Triggers tests and continues. Runs asynchronously.

GitLab CI

Add SmartestQA tests to your GitLab CI/CD pipeline.

.gitlab-ci.yml

stages:
  - build
  - deploy
  - test

variables:
  SMARTEST_API_KEY: $SMARTEST_API_KEY

build:
  stage: build
  script:
    - npm run build

deploy_staging:
  stage: deploy
  script:
    - npm run deploy:staging

smartestqa_tests:
  stage: test
  script:
    - |
      RESPONSE=$(curl -s -X POST "https://api.smartestqa.ai/v1/schedules/12345/run" \
        -H "Authorization: Bearer $SMARTEST_API_KEY" \
        -H "Content-Type: application/json" \
        -d '{"environment": "staging", "wait": true}')

      STATUS=$(echo $RESPONSE | jq -r '.status')
      if [ "$STATUS" != "PASSED" ]; then
        echo "Tests failed!"
        exit 1
      fi
  only:
    - main
    - develop

GitHub Actions

Integrate SmartestQA tests into your GitHub Actions workflow.

.github/workflows/test.yml

name: CI/CD with SmartestQA

on:
  push:
    branches: [main, develop]
  pull_request:
    branches: [main]

jobs:
  build-and-test:
    runs-on: ubuntu-latest

    steps:
      - uses: actions/checkout@v3

      - name: Build
        run: npm run build

      - name: Deploy to Staging
        run: npm run deploy:staging

      - name: Run SmartestQA Tests
        env:
          SMARTEST_API_KEY: ${{ secrets.SMARTEST_API_KEY }}
        run: |
          RESPONSE=$(curl -s -X POST "https://api.smartestqa.ai/v1/schedules/12345/run" \
            -H "Authorization: Bearer $SMARTEST_API_KEY" \
            -H "Content-Type: application/json" \
            -d '{"environment": "staging", "wait": true}')

          echo "Response: $RESPONSE"
          STATUS=$(echo $RESPONSE | jq -r '.status')

          if [ "$STATUS" != "PASSED" ]; then
            echo "::error::SmartestQA tests failed!"
            exit 1
          fi

      - name: Upload Test Report
        if: always()
        uses: actions/upload-artifact@v3
        with:
          name: smartestqa-report
          path: test-results/

Azure DevOps

SmartestQA integration with Azure Pipelines.

azure-pipelines.yml

trigger:
  - main
  - develop

pool:
  vmImage: 'ubuntu-latest'

variables:
  - group: smartestqa-credentials

stages:
  - stage: Build
    jobs:
      - job: BuildJob
        steps:
          - script: npm run build
            displayName: 'Build Application'

  - stage: Test
    dependsOn: Build
    jobs:
      - job: SmartestQATests
        steps:
          - script: |
              curl -X POST "https://api.smartestqa.ai/v1/schedules/12345/run" \
                -H "Authorization: Bearer $(SMARTEST_API_KEY)" \
                -H "Content-Type: application/json" \
                -d '{"environment": "staging", "wait": true}'
            displayName: 'Run SmartestQA Tests'

Webhooks

Send test results to your own systems via webhooks.

Webhook Settings

Webhook Payload

{
  "event": "execution.completed",
  "timestamp": "2025-01-09T14:32:00Z",
  "execution": {
    "id": "exec-12345",
    "testcase": "Login Happy Path",
    "status": "PASSED",
    "duration": 12400,
    "environment": "staging",
    "report_url": "https://app.smartestqa.ai/..."
  },
  "schedule": {
    "id": "sched-001",
    "name": "Daily Regression"
  }
}

REST API

Manage your tests programmatically with the SmartestQA REST API.

API Endpoints

GET /v1/testcases List test cases
POST /v1/schedules/{id}/run Run schedule
GET /v1/executions/{id} Execution details
GET /v1/reports/{id} Get report

Authentication

curl -X GET "https://api.smartestqa.ai/v1/testcases" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json"

API Documentation: For detailed API reference, visit api.smartestqa.ai/docs.