- getting started
Introduction: Cloud
Frequently Asked Questions
Telemetry
Testsigma Terminology
Testsigma Sample Applications
Command Center
- collaboration
Invite Team Members
Assign Projects
Users & Role Management
Review Management [Test Cases]
Review Management [Elements]
Execution Controls
Features & Scenarios
Manage Test Cases
Test Case List Actions
Import Test Project Test Cases
Importing Postman Collections and Environments
Update Test Case Result in a Test Plan
Test Cases (Mobile Web App)
Custom Fields for Test Cases
Label Management
- Test Step Types
Type: Natural Language
Type: REST API
Type: Step Group
Type: For Loop
Type: While Loop
Type: Block
Type: If Condition
Nested Step Groups
Image Injection
Cross-application testing
- Test Data Types
Raw
Parameter
Runtime
Random
Data Generator
Phone Number
Mail Box
Environment
Concat Test Data
Create Test Data Profile
Update Test Data Profile
Updating Value in TDP
Import TDP
Bulk Deletion of a Test Data Profile
Create Test Data [Environment]
- data generators
Default Test Data Generators
Address Function Type
ChangeDataType Function Type
Company Function Type
DateFunctions Function Type
DomainFunctions Function Type
EmailFunctions Function Type
File Function Type
Friends Function Type
IdNumber Function Type
Internet Function Type
MailboxAliasFunctions Function Type
MailboxFunctions Function Type
Name Function Type
NameFunctions Function Type
Number Function Type
NumberFunctions Function Type
Phone Number Function Type
PhoneNumberFunctions Function Type
Random String Function Type
RandomText Function Type
StringFunctions Function Type
TestDataFromProfile Function Type
- Elements (Objects)
- Web Applications
Record Single Element
Record Multiple Elements
Create Elements
Supported Locator Types
Formulating Elements
Shadow DOM Elements
Verifying elements in Chrome DevTools
Handling iframe Elements?
Create Image Based Elements
Dynamic Locators using Parameter
Dynamic Locators using Runtime
Using Environment Test Data for Dynamic Locators
Locating Dynamic Elements in Date Widget
Freeze & Inspect Dynamic Elements (WebPage)
Locating Dynamic Elements in Tables
Import/Export Elements
AI Enabled Auto-Healing
Locator Precedence (Web Apps)
Verify Elements from Test Recorder
- test step recorder
Install Chrome Extension
Install Firefox Extension
Install Edge Extension
Exclude Attributes/Classes
- 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
Disabling Test Cases in Test Plans
AfterTest Case
Post Plan Hook
AfterTest Suite
Email Configuration in Test Plan
Execute Partial Test Plans via API
- runs
Ad-hoc Run
Test Plan Executions
Dry Runs on Local Devices
Run Tests on Private Grid
Run Tests on Vendor Platforms
Run Test Plans on Local Devices
Test Locally Hosted Applications
Debug Test Case Failures
Parallel and Allowed queues
- live editor
Introduction: Testsigma Terminal
Installing Testsigma Terminal
Editing a Test Case Using Live Editor
FAQs on Testsigma Terminal
- 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
Delete Agents: Soft & Permanent
Triggering Tests on Local Devices
- troubleshooting
Agent - Startup and Registration Errors
Agent Logs
Upgrade Testsigma Agent Automatically
Specify Max Sessions for Agents
Testsigma 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 CI/CD
Bitbucket CI/CD
GitLab CI/CD
Copado CI/CD
Gearset CI/CD
Codemagic CI/CD
- desired capabilities
Most Common Desired Capabilities
Browser Console Debug Logs
Geolocation Emulation
Bypass Unsafe Download Prompt
Geolocation for Chrome & Firefox
Custom User Profile in Chrome
Emulate Mobile Devices (Chrome)
Add Chrome Extension
Network Throttling
Network Logs
Biometric Authentication
Enable App Resigning in iOS
Enable Capturing Screenshots (Android & iOS)
Configure Android WebViews
Incognito/Private mode
Set Google Play Store Credentials
Basic Authentication [Safari]
- addons
What is an Addon?
Addons Community Marketplace
Install and Use Community Addons in Testsigma
Prerequisites for creating add-ons
Create an Addon
Update Addon
Addon Types
Create a Post Plan Hook add-on in Testsigma
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
Create WDA File
SMTP Configuration
Manage Access
- uploads
Upload Files
Upload Android and iOS Apps
How to generate mobile builds for Android/iOS applications?
- Testsigma REST APIs
Manage Environments
Elements
Test Plans
Upload Files
Get Project Wide Information
Upload & Update Test Data Profile
Fetch Test Results (All Levels)
Trigger Multiple Test Plans
Trigger Test Plans Remotely & Wait Until Completion
Run the Same Test Plan Multiple Times in Parallel
Schedule, Update & 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
Salesforce Metadata Refresh 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
Retrieve Value in Text Element
Capture Dropdown Elements
Unable to Select Radiobutton
Unable to Click Checkbox
Clearing the Session or Cookies
UI Identifier NLP
Drag & Drop NLP
Uploading Files NLP
Use MySQL Addon in NLPs
- setup
Server Docker Deployment Errors
Secured Business Application Support
Troubleshooting Restricted Access to Testsigma
Why mobile device not displayed in Testsigma Mobile Test Recorder?
Unable to Create New Test Session
Agent Startup Failure Due to Used Ports
Tests Permanently Queued in Local Executions
Fix Testsigma Agent Registration Failures
Testsigma Agent Cleanup
Need of Apache Tomcat for Testsigma Agent
- web apps
URL not accessible
Test Queued for a Long Time
Issues with UI Identifiers
Missing Elements in Recorder
Collecting HAR File
Errors with Browser Session
Page Loading Issues
- mobile apps
Failed to Start Mobile Test Recorder
Troubleshooting “Failed to perform action Mobile Test Recorder” error
Why Test Execution State is Queued for a Long Time?
Why Mobile App Keeps Stopping After Successful Launch?
More pre-requisite settings
Why am I not able to start WDA Process on iPhone?
What are the Most Common causes for Click/Tap NLP Failure?
How to Find App Package & Activity in Android?
Cross-environment Compatible ID Locators (Android)
Why Accessibility IDs Over other Locators?
What are Common Android Issues & Proposed Solutions?
How to Find the App Bundle ID for iOS?
Developer Mode (iOS 16 & Above)
How to Handle iOS App Compatibility Issues?
How to Disable Play Protect for SMS Forwarder Installation?
How to Capture Network Logs in an Android Application?
- web apps
Why Install Chrome Extension?
Steps to Test Locally Hosted Apps
How to Turnoff Onboading Tutorial?
Non-Text Keys in Test Cases
Basic Authentication for Web
Why Bypass CAPTCHA?
Test Case Failures Due to Link Text Capture Issues
Why Is a Single Video for All Test Cases in a Test Plan Unavailable in Some Cases?
- accessibility testing
Accessibility Testing for Web Applications
Accessibility Testing for Android & iOS
- salesforce testing
Intro: Testsigma for Salesforce Testing
Creating a Connected App
Creating a Salesforce Project
Test Salesforce Connection Before Authorization
Creating Metadata Connections
Adding User Connections
Build Test Cases: Manual+Live
Salesforce Element Repositories
Intro: Testsigma Special NLPs
SOQL as Test Step
Query Builder for Salesforce Testing
Automating Listview Table NLPs
Error Handling On Metadata Refresh
Introduction: SAP Automation
Selective Element Recorder
Batch Element Recorder
Creating Test Cases for SAP Automation
List of Actions
- desktop automation
Introduction: Desktop Automation
Create Projects and Applications
Selective Element Recorder
Batch Element Recorder
Creating Test Cases for Desktop Automation
Intro: Windows Automation (Lite)
Windows (Lite) Project & Application
Element Learning with Test Recorder
Test Cases for Windows (Lite)
- GenAI Capabilities
Testsigma Copilot
Generate TDP Using Copilot
Generate Tests from User Actions
Generate Tests from Requirements (Jira)
Generate API Test Cases (Swagger)
Generate Tests from Figma Designs
Testsigma Copilot for Mobile Apps
Agentic Test Generation with GitHub
Intro: Windows Desktop Automation
Windows (Adv) Project & Application
Object Learning (Using UFT One)
Converting TSR Files to TSRx
Importing/Updating TSRx Files
Test Cases for Windows Automation
Error Handling Post TSRx File Update
- testsigma tunnel
Intro: Testsigma Tunnel
Components & Requirements
Setup and Installation: Mac
Setup and Installation: Windows
Setup and Installation: Linux
Setup and Installation: Docker
Using Testsigma Tunnel
- open source docs
Intro: Testsigma Community Edition
Testsigma Community Cloud
Testsigma Docker Setup
Reset Password
Test Data Type: Mail Box
Testsigma provides a digital inbox called Mail Box to verify OTP accuracy, check for received emails, open and read them, process them, validate email content in various languages, and test the speed at which a user can read a promotional email during testing. This guide will help you access and manage the Mail Box.
Testsigma designed the Mail Box feature to retrieve relevant details from the first email, including content, OTP, and subject information.
Prerequisites
Before using Mailbox Test Data, ensure that you understand specific concepts such as creating a Test Case, managing Test Steps, and effectively using them with Test Data Types and Data Generators. Additionally, familiarise yourself with Regular expressions if necessary.
- You can enable Mail Box for your account by contacting support@testsigma.com or using the instant chat option.
- You can now access the Mail Box & Phone Numbers outside of test executions. This allows you to retrieve messages, OTPs, and authentication codes when you enable the toggle.
- For test executions, the toggle does not affect the execution. The test will continue to run regardless of whether the toggle is enabled or not.
Adding Mail Box in a Test Step
Follow these steps to include an email address provided by Testsigma using the Mailbox test data type in a Test Step:
- Use NLP to create a new step in the Test Case and include a placeholder for test data.
- Click the test data placeholder to replace it, and then select the & Mail Box from the Test Data Types dropdown menu.
- Select the Email from the right-side panel.
Fetching OTP from Mail Box
Follow these steps to retrieve OTP or any data from the selected Mailbox using Test Data Generators in Testsigma:
- Use NLP to create a new step in the Test Case that adds a placeholder for test data and an element for entering the OTP code in the OTP field.
- Click the test data placeholder to replace it, and then select the ! Data Generator from the Test Data Types dropdown menu.
- On the right sidebar, select Data Generator type as the default, Function type as MailBoxFunctions, and choose the function as getEmailOTP from the dropdown menu.
-
Configure the Test Step by providing the necessary details for the function:
- Regex: A search pattern is created by a sequence of characters. For instance, \d{4} matches four consecutive digits (0-9).
- MailBox: Select Mail Box from the drop-down list. It stores incoming email messages.
- Timeout: Set the time for how long a program or system should wait for a specific task to finish. In this example, we will wait for 30 seconds.
- Click Save to store the provided arguments in the data generator for this test step.
Here is a quick GIF demonstrating the above workflow:
- You must perform both Add Mail Box in Test Step and Fetch OTP from Mail Box for Two-Factor Authentication.
Store Data as a Runtime Variable from Mail Box
Follow the below steps to save the data obtained from the Mailbox as a runtime variable to use later in the test case using Test Data Generators in Testsigma.
- Create a new step in the Test Case using NLP that adds two placeholders for test data to store data as runtime variables.
- Click the test data-1 placeholder to replace it, and then select the ! Data Generator from the Test Data Types dropdown menu.
- On the right sidebar, select Data Generator type as the default, Function type as MailBoxFunction, and choose the Function as contentVerification from the dropdown menu.
-
Configure the Test Step by providing the necessary details for the function:
- Regex: A search pattern is created by a sequence of characters. For instance, \d{4} matches four consecutive digits (0-9).
- MailBox: Select Mail Box from the drop-down list. It stores incoming email messages.
- Compare String: Provide the CompareString function, which compares two strings and determines if they are identical.
- Timeout: Set the time for how long a program or system should wait for a specific task to finish. In this example, we will wait for 30 seconds.
- Click Save to store the provided arguments in the data generator for this test step.
- Substitute specific text for the test-data-2 placeholder and create a step to generate a runtime variable that stores the value in that text.
Here is a quick GIF demonstrating the above workflow:
You can store the subject by selecting the Test Data Generator function: ! MailBoxFunctions :: subjectVerification.
Create Mail Box Alias in Test Step
During a test step, you can create a mailbox alias that connects an additional email address to your primary email account. This allows you to generate multiple email addresses that all direct to the same inbox. When you execute the test, it generates a unique mailbox for each alias.
- Create a new step in the Test Case using NLP that adds two placeholders for test data to create a mailbox alias.
- Click the test data-1 placeholder to replace it, and then select the ! Data Generator from the Test Data Types dropdown menu.
- On the right sidebar, select Data Generator type as the default, Function type as MailBoxFunction, and choose the Function as generateMailBoxAlias from the dropdown menu.
- Select Linked Mail Box to create a unique mailbox every time and click Save.
- Substitute specific text for the test-data-2 placeholder and click Create Step to save the test step. It stores the mailbox within the text as a runtime variable.
For example, we store the email in a runtime variable named email1. You can use it in the Test Case by selecting $ Runtime from the test data types.
Here is a quick GIF demonstrating the above workflow:
Generate Mail Box Alias for Test Cases Execution
With Testsigma, you can generate new mailbox aliases every time during test case execution, improving efficiency and reusability by making it easy to use in many test steps or test cases. If you have only a few email addresses but need to test functions related to emails for various new accounts, Testsigma can help.
Data Generators | Actions | Inputs |
---|---|---|
! MailBoxAliasFunctions :: getEmailContent | This will get the entire email's content into a variable. | |
! MailBoxAliasFunctions :: getEmailSubject | This will get the entire email's subject into a variable. | |
! MailBoxAliasFunctions :: getOTP | This will fetch the OTP sent to the email box into a variable. | |
! MailBoxAliasFunctions :: urlWithText | This will fetch the URL that contains some required text. | |
! MailBoxAliasFunctions :: urlWhichContains | This will fetch the URL that contains some required parameters. | |
! MailBoxAliasFunctions :: urlMatchingRegex | This will fetch the URL that contains a URL matching the required regex. |
Below is a screenshot showing a test case generating a mailbox alias and getting content from the email.
Sample Test Case for 2FA using Mailbox
Two-factor authentication provides additional protection for your application. With Testsigma, you can easily set up Mailbox, retrieve OTP using mailbox functions, and perform tests securely. This article discusses testing 2FA for MailBox.
Prerequisites:
- You should know how to create a test case.
- You should know how to use mailbox & data generator test data types.
- You need to have a dedicated Mailbox for your account. Contact support@testsigma.com for more information.
Creating Test Case for 2FA Using MailBox
- Navigate to Create Tests > Test Cases, and click on Create Test Case.
- On the Test Case details page, create test steps manually or using the recorder.
- For Step 4, we use & Mailbox and enter the email linked to the account in the email input field.
- In Step 5, we click on the ! Data Generator. This will open ! Data Generator overlay.
- On the ! Data Generator overlay, select Type, Function Type, Function, Enter Regex, Runtime Variable, Timeout and click on Save. Here, we add regex [0 - 9]+, which extracts the first encountered series of numbers. The extracted data, which is OTP, will be stored in the runtime variable. For more information on examples of regex, refer to https://regex101.com/.
- This will help fetch OTP and enter it in the input element.
- Click on Run to execute the test case.
Setup the Email Forwarding for Automation Mailbox
In some cases, app restrictions will prevent the delivery of OTPs to the Testsigma Mailbox. In this case, you can use the Testsigma SMS Forwarder App, which forwards messages to a designated mailbox and allows you to retrieve OTPs conveniently.
Prerequisites
- You should have Testsigma SMS Forwarder application.
- You should know how to use mailbox & data generator test data types.
- You need to have a dedicated Mailbox for your account. Contact support@testsigma.com for more information.
Setting Up Forwarding Rules (Gmail)
Access Gmail Settings
- Open your Gmail account.
- Click on the gear icon in the upper-right corner.
- Select See all settings.
Navigate to Filters and Blocked Addresses
- From the settings, click on the Filters and Blocked Addresses tab.
- Create a filter to forward emails with specific content or subject. In this case, we can have text that is constant and is present in all emails that we want to forward.
Create a New Filter
- Click on Create a new filter.
-
Specify the criteria for the filter:
- Subject: Define the subject of the email that you wish to forward.
- Has the words/Doesn’t have words: Include text that is present in all emails you want to forward.
Configure Forwarding Address
- After creating the filter, click on Add forwarding address on When a message is an exact match for your search criteria overlay.
- Click on Add Forwarding address and add the designated automation email ID.
- Complete the setup by entering the OTP.
- You can contact the support team for OTP retrieval, which involves fetching data from the backend.
- For a sample test case associated with the Testsigma SMS Forwarder app, refer to setup & use message forwarding.