- collaboration
- Invite Team Members
- Assign Projects
- Users & Role Management
- Review Management [Test Cases]
- Review Management [Elements]
- Execution Controls
- test cases
- Test Cases
- Test Case List Actions
- Import and Export Test Cases
- Import Test Project Test Cases
- Importing Postman 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
- 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 Options
- 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
- 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 [Parameter]
- Update Test Data Profile
- Updating Value in TDP
- Import TDP
- Bulk Deletion of a Test Data Profile
- Create Test Data [Environment]
- Elements (Objects)
- Web Applications
- Record Multiple Elements
- Record Single Element
- Create Elements
- Supported Locator Types
- Formulating Elements
- Shadow DOM Elements
- Verifying elements in Chrome DevTools
- Handling iframe Elements?
- Dynamic Locators using Parameter
- Dynamic Locators using Runtime
- Using Environment Test Data for Dynamic locators
- Import/Export Elements
- AI Enabled Auto-Healing
- 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
- 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
- Triggering Tests on Local Devices
- troubleshooting
- Agent - Startup and Registration Errors
- Fetching Agent logs
- Upgrade Testsigma Agent Automatically
- 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 CICD
- Bitbucket CICD
- GitLab 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
- 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
- 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
- Creating WDA File for iOS App Testing
- 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
- 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 due to unexpected error
- web apps
- URL not accessible
- Test Queued for a Long Time
- Issues with UI Identifiers
- Missing Elements in the Recorder
- mobile apps
- Failed to Start Mobile Test Recorder
- Troubleshooting “Failed to perform action Mobile Test Recorder” error
- Test Execution State is Queued for a Long Time
- Mobile app keeps stopping after successful launch
- More pre-requisite settings
- Unable to start WDA Process on iPhone
- Most Common causes for Click/Tap NLP failure
- on premise setup
- On-Premise Setup Prerequisites
- On-Premise Setup with Docker-compose File
- Post-Installation Checklist for On-Premise Setup
- Install Docker on an Unix OS in Azure Infrastructure
- SMTP Configuration in Testsigma
- Configure Custom Domains
- salesforce testing
- Intro: Testsigma for Salesforce Testing
- Creating a Connected App
- Creating a Salesforce Project
- Creating Metadata Connections
- Adding User Connections
- Build Test Cases: Manual+Live
- Salesforce Element Repositories
- Intro: Testsigma Special NLPs
Dynamic Locators using Parameter
Dynamic locators are necessary for data-driven testing because they help adjust to changes in elements. You can use a Test Data profile to set the variable part of the ID attribute. The parameter name, called elements, holds the dynamic data for storing the dynamic part. Testsigma makes this easy using parameterised XPath or CSS Selectors in test steps. This guide will show you how with a practical example.
Prerequisites
Before implementing dynamic locators using parameters in Testsigma, ensure familiarity with fundamental concepts such as creating a Test Case, managing Test Steps, handling Test Data Profiles and Parameters, and effectively utilising different Test Data Types.
Store Elements ID attribute into Test Data Profile
We are using the Simply Travel Flight website as an example and sorting the city names and the variable part of the element's ID attribute in the test data profile.
- Navigate to the website containing the elements you want to copy the XPath.
- Right-click on the desired and select Inspect to open Chrome Developer Tools.
- Use the Select Element icon to locate and inspect the element, then right-click the HTML tag and copy the XPath.
- We will use the Simply Travel Flight website as an example of the above test steps. Click Select from Cities and copy the XPath values for the cities.
-
The table below explains how the city names and their corresponding XPath for an element.
Cities XPath Los Angeles //*[@id="city-1"]/div[2]/span[1]
Washington, D.C. //*[@id="city-2"]/div[2]/span[1]
New York City //*[@id="city-3"]/div[2]/span[1]
London //*[@id="city-4"]/div[2]/span[1]
- In the provided XPath examples, the IDs of the cities have a common portion, city-, followed by a variable digit from 1 to 4. We will parameterise this by storing the city and the variable portion using a Test Data profile.
- Navigate to Test Data > Test Data Profile. Click on Create Test Data Profile.
- Below is the created Test Data profile for storing element ID attributes:
Creating Dynamic Elements using Parameter
-
Use NLP to create a new step in the Test Case and include a placeholder for the element.
Example:Utilise NLP "Click on Element" to click an element with a given UI Identifier.
- Click on the Element, then select Create Element from the dropdown list.
- Manually enter the Element Name, Screen Name, and Element Type in the Create Element overlay screen.
- Provide the dynamic element value //*[@id="@|cities|"]/div[2]/span[1], where cities is the parameter name containing dynamic data.
- Click Create Element to complete element creation and then Create Step.
Configuring Test Data Profile in Test Case
- In Test Case details page, click Test Case Settings in the right-side navbar.
- Choose the associated Test Data Profile.
- Enable the Data-Driven toggle and select Filter Type, Comparison Metric, and Data Iteration.
Run Results for Dynamic Elements using Parameter
- Once the test step created with the dynamic Element, execute the Test Case.
- Wait until the Test Case execution is completed.
- The Test Case will iterate as many times as there are Test Data Sets (rows) in the Test Data Profile, resulting in four iterations based on the provided example.