DoesQA
WebsiteLogin
  • Welcome to DoesQA
  • Getting Started
    • Terminology
    • Creating your first test
    • Running your first test
  • Guides
    • Working with Node Groups
    • Test Tagging
    • Interacting With Emails
    • Avoiding Login Rate Limits
    • Codeless vs Code
    • DoesQA Compared
  • Test Steps
    • Starter
      • Open
    • Browser
      • Go To Absolute URL
      • Go To Relative Path
      • Reload
      • Back
      • Forward
      • Open File
      • Run Browser Script
      • Next Tab
      • Previous Tab
      • Close Current Tab
    • Action
      • Touch
      • Double Tap
      • Drag and Drop
      • Clear
      • File
      • Select Option
      • Send Keys
      • Set MFA
      • Open Plugin
      • Scroll Into View
      • Scroll To Edge
      • Hover
      • Touch and Hold
      • Touch Release
      • Set Value
    • Check
      • Check Displayed
      • Check Not Displayed
      • Check Visible
      • Check Not Visible
      • Check Exists
      • Check Does Not Exist
      • Check Enabled
      • Check Disabled
      • Check Clickable
      • Check Not Clickable
      • Check Focused
      • Check Not Focused
      • Check Selected
      • Check Not Selected
      • Check Text
      • Check Value
      • Check Value Store
      • Check Attribute
      • Check Computed Label
      • Check Computed Role
      • Check Computed Style
      • Check Count
      • Check Title
      • Check Address
      • Check Cookie
      • Check LocalStorage
      • Check SessionStorage
      • Check Links
      • Check SFTP File Exists
      • Check SFTP File Does Not Exist
      • Check SFTP File Count
      • Check GTM Event
      • Check JSON Value
      • Check JSON Schema
    • Runner
      • Pause
      • Wait For Element To Be Displayed
      • Wait For Element To Not Be Displayed
      • Wait For Element To Be Visible
      • Wait For Element To Not Be Visible
      • Wait For Element To Exist
      • Wait For Element To Not Exist
      • Wait For Element To Be Enabled
      • Wait For Element To Be Disabled
      • Wait For Element To Be Clickable
      • Wait For Element To Not Be Clickable
      • Wait For Element Text
      • Switch Window
      • Switch Frame
      • Switch To Parent Frame
      • Add Header
      • Set Header
      • Remove All Headers
      • Stop When Element Is Displayed
      • Stop When Element Not Displayed
      • Stop When Value
      • Generate File
      • Generate Image
      • Condition
    • Change
      • Element Snapshot
      • Element Position
    • Mail
      • Open Inbox
      • Close Inbox
      • Select Email
      • Open Email
      • Wait For Email
    • Validator
      • Accessibility
      • Performance
      • Best Practices
      • SEO
      • PWA
      • Pa11y
      • Axe
    • Data
      • Alias Value
      • Set Value
      • Store Element Text
      • Store Element HTML
      • Store Element Value
      • Store Element Count
      • Store Element Attribute
      • Set Cookie
      • Store Cookie
      • Delete Cookie
      • Delete Cookies
      • Set LocalStorage
      • Store LocalStorage
      • Delete LocalStorage
      • Delete All LocalStorage
      • Set SessionStorage
      • Store SessionStorage
      • Delete SessionStorage
      • Delete All SessionStorage
      • Calculate Value
      • Replace Value
    • Express
      • DoesQA Run
      • Adyen Widget
      • Adyen PayPal
    • Integration
      • SFTP List
      • GET
      • PUT
      • POST
      • DELETE
      • Slack Send
      • SFTP Upload
    • Utility
      • Flow Comment
      • Test Comment
      • Name Test
      • Debug Value
      • Debug Element
      • Replace Text
      • Screenshot
      • Tag Test
      • Start HAR Recording
      • End HAR Recording
      • Start Console Recording
      • End Console Recording
    • Node Group
  • Node Configuration
    • Comparison Type
    • Value Standardization
    • Failed Status
    • Timeout Override
  • Elements
    • Creating Elements
    • Selector Types
      • CSS
      • XPath
      • Visible Text
      • Test ID
  • Values
    • Values (Value Store)
    • Creating Values
    • Dynamic Values
  • Configuration
    • Whitelisting IPs
    • Max Concurrency
    • CI / CD
    • Schedules
    • Block Hostnames
    • Notifications
      • Webhook
      • Email
      • Slack
    • MFA
    • Recipes
Powered by GitBook
On this page
  • Creating a new key
  • Crafting a webhook call
  • Preview tests before integrating the hook into your pipelines
  • Trigger DoesQA tests externally from the UI
  1. Configuration

CI / CD

How to set up and run DoesQA in a CI/CD pipeline, and the configuration options available

In order to get started, you will need to sign into your DoesQA account. Once in the app, head to Settings ( bottom of the menu ) and into Webhooks.

From here, you are able to Create and Delete webhook keys.

Creating a new key

To create a new key, from the settings menu click on the + icon at the top.

A modal will appear and give you the following:

Name

Use this field to identify the token, this will be visible instead of the user that triggered the run. An example would be "CI - Staging"

Slack Channel

If you have installed our Slack integration, then from here you will be able to pick a channel for the test reports to go to. This is handy if you have a different channel for different environments. By default, these will go to the original channel that you picked when you integrated slack

Webhook Key

This is your secret key, only displayed once - so please store this in a safe place. You will need this key in order to authenticate requests coming into our APIs.

Crafting a webhook call

To trigger test runs remotely, you need to POST to our API. Your ACCOUNT_ID is located on the settings page. Alternatively, you can also do a GET, see the API options below.

Preview tests before integrating the hook into your pipelines

GET https://app.does.qa/api/hook/ACCOUNT_ID

Preview a webhook trigger, this can be used for making sure the correct amount of flows are going to trigger and that you have configured any replacement values correctly

Query Parameters

Name
Type
Description

key*

String

label

String

Customise the run label, helpful for differentiating runs ( Staging - Build 1234 )

ids

String

A comma-separated set of Flow IDs

withAll

String

A comma-separated set of tags ( "pipeline,staging" )

withoutAny

String

A comma-separated set of tags to exclude ( "wip,dev" )

values

String

{
    "triggerLabel": "",
    "ids": number[],
    "withAll": string[],
    "withoutAny": string[],
    "hookValues": { [key: string]: string },
    "previews": boolean,
    "triggerName": string,
    "slackChannelId": string,
    "hasUsageAvailable": string,
    "topicType": string,
    "foundFlowsCount": number,
    "preview": boolean
}

You should be presented with an error code. Reach out to support and we would be happy to assist.

Trigger DoesQA tests externally from the UI

POST https://app.does.qa/api/hook/ACCOUNT_ID

Trigger a webhook, this will take the given parameters, find flows that match and triggers a DoesQA test run.

Query Parameters

Name
Type
Description

key*

String

label

String

Customise the run label, helpful for differentiating runs ( Staging - Build 1234 )

ids

String

A comma-separated set of Flow IDs

withAll

String

A comma-separated set of tags ( "pipeline,staging" )

withoutAny

String

A comma-separated set of tags to exclude ( "wip,dev" )

values

String

{
    "triggerLabel": string,
    "ids": number[],
    "withAll": string[],
    "withoutAny": string[],
    "hookValues": { [key: string]: string },
    "previews": boolean,
    "triggerName": string,
    "slackChannelId": string,
    "hasUsageAvailable": string,
    "topicType": string,
    "foundFlowsCount": number,
    "preview": boolean
}

You should be presented with an error code. Reach out to support and we would be happy to assist.

For any additional assistance in setting up your webhooks, please reach out to support and we would be more than happy to assist!

PreviousMax ConcurrencyNextSchedules

Last updated 20 days ago

The above

A url-ecoded JSON object containing keys and values for any overrides to the

The above

A url-ecoded JSON object containing keys and values for any overrides to the

Values (Value Store)
Values (Value Store)
Webhook Key
Webhook Key