- getting started
- Introduction: Cloud
- Introduction: Community
- Testsigma Community Cloud
- FAQs
- Telemetry
- Testsigma Terminology
- Testsigma Sample Applications
- collaboration
- Invite Team Members
- Users & Role Management
- Assign Projects
- Review Management [Test Cases]
- Review Management [Elements]
- Delete Users from Project
- Control Who Can Stop Execution via Usage Details and Run Results
- test cases
- Manage Test Cases
- Test Case Details, Activity & History
- Test case list actions
- Test case filters
- Import and Export Test Cases
- Import Test Cases from YAML/GIT
- Import Postman's Collections and Environments
- Test cases for Desktop Windows
- Update Test Case result in a Test Plan
- Test cases for Mobile Web Application
- Test Step Types
- Create Test Steps in Testsigma
- Type: Natural Language
- Type: REST API
- Type: Step Group
- Type: For Loop
- Type: While Loop
- Type: Block
- Type: If Condition
- Nested Step Groups
- Create Test Steps
- Create Test Steps Using Simple English
- Test Step Settings
- Test Step Actions
- Test data in steps
- Reuse Elements
- Test Step Reordering
- Bulk Actions
- Add Steps Before & After
- Web Applications
- Test Step Actions
- Test Step Settings
- Test Data in Steps
- Add Steps Manually
- Reuse Elements
- Update Elements
- Create an Element
- Reorder Test Steps
- Bulk Actions
- Add Steps Before & After
- Record steps anywhere in a Test Case
- RESTful API Testing - Overview
- API Request
- Parameters
- Body Data
- Headers
- Authorization
- Verifications
- Store Variables
- Attachments
- Stored Objects
- Image Injection
- Cross-application testing
- Test Data Management
- Test Data Types
- Raw
- Parameter
- Runtime
- Random
- Data Generator
- Phone Number
- Mail Box
- Environment
- Concat Test Data
- Create Test Data [Parameter]
- Update test data profile
- How to add value to test data profile using NLP
- Import Test Data [Parameter]
- Bulk Deletion of a Test Data Profile
- Create Test Data [Environment]
- Elements(Objects)
- Web Applications
- Record Multiple Elements[Recorder]
- Capture Single Element[Recorder]
- Create Elements [Manually]
- Supported Locator Types
- Different Strategies for Formulating Elements
- Shadow DOM Elements
- Verifying elements in Chrome DevTools
- How to Handle iframe Elements?
- android apps
- Record Multiple Elements[Recorder]
- Capture Single Element[Recorder]
- Create Elements [Manually]
- Supported Locator Types
- Different Strategies for Formulating Elements
- ios apps
- Record Multiple Elements[Recorder]
- Capture Single Element[Recorder]
- Create Elements [Manually]
- Supported Locator Types
- Different Strategies for Formulating Elements
- Using Parameter Test Data for Dynamic locators
- Using Runtime Test Data for Dynamic locators
- Using Environment Test Data for Dynamic locators
- Import/Export Elements
- test plans
- Add, Edit, Delete Test Machines
- Add, Edit, Delete Test Suites
- Schedule Test Plans
- Run Test Suites In Parallel
- Cross Browser Testing
- Distributed testing
- Headless Testing
- Test Lab Types
- Disable Test cases in Test plans
- After Test in Test Cases and Step Groups
- Post Plan Hook
- AfterTest Suite
- Email Configuration in Test Plan
- Execute Partial Test Plan Run via API
- Ad-hoc Run
- Test plan executions
- Dry Runs on Local Devices
- Run Tests on Vendor Platforms
- Run Test Plans on Local Devices
- Test Locally Hosted Applications
- Debug Test Case Failures
- Parallel and Allowed queues
- debugging
- Debug results on local devices (Web applications)
- Debug Results on Local Devices
- Launch Debugger in the Same Window
- Testsigma Agent
- Pre-requisites
- Setup: Windows, Mac, Linux
- Setup: Android Local Devices
- Setting up iOS Local Devices
- Update Agent Manually
- Update Drivers Manually
- Delete Corrupted Agent
- FAQs
- continuous integration
- Test Plan Details
- REST API(Generic)
- Jenkins
- Azure DevOps
- AWS DevOps
- AWS Lambda
- Circle CI
- Bamboo CI
- Travis CI
- CodeShip CI
- Shell Script(Generic)
- Bitrise CI
- GitHub CICD
- Bitbucket CICD
- GitLab CI/CD
- Dashboard
- visual testing
- Visual Testing
- View & Debug Results
- Update Baseline
- Visual Testing - Configure Test Cases
- desired capabilities
- Most Common Desired Capabilities List
- Enable Browser Console Debugging logs
- Geo location for Localization(L10N)
- Avoid unsafe download prompt(Chrome)
- Set geo location(latitude, longitude) Chrome & Firefox
- Custom User Profile - Chrome
- Emulate Mobile devices with Chrome Browser
- Add Chrome Extension
- Network Throttling
- Network Logs
- Biometric Authentication
- Enable app resigning in iOS
- Enable capturing screenshots for Android and iOS
- Configure Android WebViews
- Run Browser in Incognito/Private mode
- addons
- What is an Addon?
- Addons Community Marketplace
- Install Community Addon
- Prerequisites(Create/Update Addon)
- Create an Addon
- Update Addon
- Addon Types
- Create a Post Plan Hook add-on in Testsigma
- How to create OCR Text Extraction Addon
- configuration
- API Keys
- Security(SSO)
- Setting up Google Single Sign-On(SSO) login in Testsigma
- Setting Up Okta Single Sign-On Integration with SAML Login in Testsigma
- Setting up SAML-based SSO login for Testsigma in Azure
- iOS Settings
- Reset Password (Community)
- Storage Types (Community)
- uploads
- Upload Files
- Upload Android and iOS Apps
- How to generate mobile builds for Android/iOS applications?
- Testsigma REST APIs
- Environments
- Elements
- Test Plans
- Upload Files
- Get Project wide information
- Upload and update test data profile
- Trigger Multiple Test Plans
- Trigger Test Plan remotely and wait until Completion
- Run the same Test Plan multiple times in Parallel
- Schedule, Update and Delete a test plan using API
- Update Test Case results using API
- Create and update values of Test Data Profile using REST API
- Rerun Test Cases from Run Results using API
- open source dev environment setup
- macOS and IntelliJ Community Edition
- macOS and IntelliJ Ultimate Edition
- Windows and IntelliJ Ultimate Edition
- Setup Dev Environment [Addons]
- NLPs
- Unable to retrieve value stored in text element
- Unable to capture dropdown element
- Unable to Select Radiobutton
- Unable to Click Checkbox
- Why mobile device not displayed in Testsigma Mobile Test Recorder?
- Unable to create new test session due to unexpected error
Integrate Testsigma with CodeShip CI
Testsigma offers powerful Webhooks for triggering Testsigma Executions remotely from any third-party tool that provides a Command Line Interface(CLI). In this guide, we will see how we can integrate Testsigma in Codeship for automatically triggering Test Executions with successful builds on CodeShip, and then wait for the tests to pass and then proceed with deployment.
Pre-requisites:
1.A CodeShip Account configured with your organization details and the Project that needs to be triggered. If you are new to CodeShip, please follow the following link to create an Account (using your email or OAuth), add your organization and create a Project. See signing up for a new Codeship Account
2.Connect your Source Code Management (SCM) tool such as Github, BitBucket, or GitLab to your account.
In this Guide, we will be using GitHub as our SCM. Therefore, we need to install CodeShip App from GitHub Marketplace in our GitHub Account so that the repositories in the Github account are accessible. See how to configure Github as your SCM in CodeShip For help on configuring other SCMs, please check CodeShip Documentation or contact CodeShip Support.
You can view the Connected Services at Authentications page - Connected Services
Integrating Testsigma to CodeShip Test Pipelines
- Click on the ‘Projects’ link on the CodeShip Home page and then select your required Project. The one we are selecting is 'testsigma-demo' in this case.
- From the Dashboard page for your selected Project, click on Project Settings.
Clicking on Project Settings takes us to the 'Configure your Tests' page.
- Select the option 'I want to create my own custom commands’ in the Select your technology selector box.
- In Setup Commands, enter the below command to install jq package:
'sudo apt-get install jq'
'Info: jq is json query parser library for bash'
- Later, click on Add Pipeline and enter a name for the pipeline. We will be entering 'Testsigma Execution Trigger'.
- Go to the Testsigma Executions page to get the Execution ID and CI Webhook URL as shown below:
- Replace the
, and in the following script:
Perl
#!/bin/bash
echo "Triggering Execution!"
# Triggering an execution using the <Execution-ID> from Testsigma Execution details page. Use your account login details as <Username> and <Password>
currentrunid=$(curl -sS -X POST -H 'Content-type: application/json' -u <Username:<Password> https://app.testsigma.com/rest/execution/<Execution-ID>/run)
echo "Started Execution. Waiting for tests to complete..."
currentstatus=1
#Use the Execution Status Check API and loop until the value of 'status' in the API Response equals to 0.
while [ $currentstatus -ne 0 ]; do currentstatus=$(curl -sS -X GET -H 'Content-type: application/json' -u <Username:<Password> https://app.testsigma.com/rest/execution/<Execution-ID>/run/$currentrunid/status | jq '.status'); sleep 5; done
echo "Test Execution Completed. Checking results..."
#Get the value of 'result' from the API Response for Execution Status Check API
currentresult=$(curl -sS -X GET -H 'Content-type: application/json' -u <Username:<Password> https://app.testsigma.com/rest/execution/<Execution-ID>/run/$currentrunid/status | jq '.result')
echo $currentresult
#Check the result of the execution using Execution Status Check API - If the value of 'result' is 0, the test passed. Else, the test failed.
if [ $currentresult -ne 0 ]; then echo "Test Failed. Please check Testsigma to know the reason for failure."; else echo "Test Passed! You may deploy now!"; fi
#Return the result as exit code - Non-zero value for execution result depicts Test failure and also triggers this script failure.
$(exit $currentresult)
- Paste the script in the new 'test commands' box as shown below and click on the ‘Save and go to Dashboard’ button.
- Now go to the ‘Project Settings > Build Trigger’ to add a build Trigger.
- Optional - You may also go to ‘Project Settings > Deploy’ to add details of your deployment platform.
That's all we need to do to trigger the Testsigma Executions in the CodeShip Pipeline. With the above settings, the build will be triggered whenever there is a change in the repository and as soon as the build is triggered, the tests will begin in Testsigma. The script will wait until the test completes and checks that the result of the tests is passed.