- 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
Test step type: Step groups
Sometimes, a group of steps is common to multiple test cases.
For example:
- You cannot perform a fund transfer without adding an account first.
- You cannot delete a beneficiary account without adding an account first.
- Loan disbursement requires adding an account first
Here adding an account is a common step.
Traditionally, instead of writing the same redundant code over and over again, test engineers solve this problem by using modular coding, or adding all these repeating steps to a function and calling that function every time it’s needed. In Testsigma, you can do the same using step groups.
A Step group is a group of test steps which can be repeatedly used in multiple test cases. So, instead of using the same steps over and over again, we simply create a test step group and invoke the step group when required.
Create a new step group
- Navigate to Test Development > Test Cases > Step Groups.
- Click + Create Step Group.
- Enter a name, description and choose options in the Advanced options menu and finally click the Create button.
- This will create a step group with no steps
- Add test steps required to this step group. A sample screenshot is attached below for your reference:
- And now you will have a step group ready to use.
Edit a step group
To edit a step group, universally, for all related test cases:
- Navigate to Test Development > Test Cases > Step Groups.
- Click on the step group you want to edit.
- Now you can make the changes you want to the step group. The changes will be reflected in all the test cases that use the step group.
The number of test cases impacted by the changes in a step group will be visible on the step group page, for example, in the screenshot below, any change in the step group will impact 4 test cases:
To edit a step group for a specific test case:
- Navigate to Test Development > Test Cases.
- Click on the specific test case for which you want to edit the step group.
- Inside the test case, go to the step group you want to edit.
- You can spot edit any test data or element being used in the step group. After editing click outside the step to save the changes.
- To spot edit test data:
Click on the test data to see the type of test data that can be added to the step.Select the type of test data you want to add and proceed.
- To spot edit element:
Click on the element the required field should become editable.You can either create a new element or edit the existing element.
Alternatively, you can edit the element name inline,refer the attached GIF to see the changes:
To edit the test data profile associated with a for loop in a step group
- Navigate to Test Development > Test Cases.
- Click on the specific test case for which you want to edit the step group.
- Inside the test case, go to the step group you want to edit.
- Inside the step group, go to the for loop for which you want to edit the associated test data profile.
- Click on the Edit button corresponding to the for loop and change the associated test data profile. For example, as also can be seen in the below GIF:
Create a step group from a test case
- Navigate to a test case.
- Select the steps that you want to create a step group from.
- Once you start selecting the test steps, the + Create Step Group will appear at the top right of the test steps, as also shown in the screenshot below:
- If you select consecutive test steps then you will see a pop-up as below:
while if you don't select consecutive test steps then the pop-up that appears won't show you the Create and Replace button as shown below.
- If you click on the Create button, a new step group with the selected test steps and the given name would be created.
- If you click on the Create and Replace button, a new step group with the selected test steps and the given name would be created and the selected test steps would be replaced by the created step group.
Below is a GIF demonstrating how the create and replace step-group functionality works:
Use step group in a test case
- Click on test case and open the test case that you need to author as shown in the screenshot below:
- Clicking on the specific test case will open the test case details page
- From the left side dropdown, select Step group.
- From the list of step groups, select the step group you need. In this case, we have only created one step group and hence only one is visible in the drop-down.
- Once you have selected the step group, the step group description and link would be visible too. As shown in the screenshot below:
Now you are ready to use the step group in your test case
Observe the GIF below to understand how to create a step group.
Deleting a Step Group will also be deleted the associated Test Cases.
Create a data-driven step group
Just like data-driven test cases, you can create data-driven step groups which can be utilized like standard components across test cases
- When creating a step group, select the Data-driven toggle button, specify the test data profile you want to use, and the iterations you intend to use in this step group.
- Now add the NLP steps where you want to iterate through the test data profiles in the test case just like you would for a data-driven test case.
In our example below, we are iterating over multiple mobile phone numbers and emails
Your data-driven step group is ready for use across multiple test cases.
Using a data-driven step group in test case
You can create a vanilla test case or a data-driven test case on test sigma and add the data-driven step group to the test case like in the example below.
Adding data-driven step groups to a data-driven test case allows iterating through multiple data sets via the step group for every single iteration of your data-driven test case.
Adding step groups to the test case can be done using step type dropdown.
Control over step group iterations in test case
There may be situations where out of the 100 sets in the test data profile attached to your step group, you want to iterate from set 5 to set 10 in your data-driven step group only and not all of them.
You can use the following restricted Runtime variables to specify which sets in from the step group data profiles you want to iterate through.
RunTime TestDataSet Start
RunTime TestDataSet End
- When creating a data-driven step group ensure you select the option Overwrite Test Data Set with Runtime Variable like in the image below:
- Use the store NLP instructions to assign set names to the RunTimeTestDataSetStart = Set Name to START iteration from [Case Sensitive]_
Use the store NLP instructions to assign set names to the RunTimeTestDataSetEnd = Set Name to END iteration from [Case Sensitive]_ - We will automatically use the value set in these variables when we reach the step group to identify start and end iteration set names.
Access test data profile, from parent step, within a data-driven step group:
When you create a data-driven step group, you may want to use the step group within loops for example a for loop. With Testsigma, you can access the test data profile that was passed in the parent test step.
To understand this better, let us have an example test case where we are testing if a user can login successfully for the given usernames and passwords. The usernames and passwords are being passed via associated test data profiles.
Prerequisites:
- A data-driven step-group. For more information, refer to create a data driven step group.
- A data-driven test case. For more information, refer to create a data driven test case.
- You should be familiar with for loops and test data profiles in Testsigma. For more information refer to for-loops and test data profiles.
Steps
- Create multiple test data profiles that will have different sets of usernames and passwords.
- Create a data-driven step group that would login to a website using the usernames and passwords passed via the associated test data profile. For our test case we have created a data-driven step group that looks like below:
- Now create a data-driven test case that would use a different test data profile of usernames and passwords.
- Inside the test case, create a for loop using a third test data profile of usernames and passwords.
- Inside the for loop, add the step group create in step 2.
- Now try to edit the username and password parameters in the added step group. You will see that you will be able to select the test data profiles being passed to the parent test step too as also shown in the screenshot below:
Additional actions possible on iteration count
- Store: In a step group, when a test data profile is being iterated - an additional action is possible. The iteration count can be stored into a variable for later use. (Iteration count is the current count that is being iterated over the associate test data profile in the step group in Testsigma.) Below is how the syntax for the Store NLP looks like:
- If: The test data set values, from a test data profile being iterated, can be compared within an if condition too. Below screenshot shows the NLP (The NLP can be added as a part of add-on String Compare. You can find the add-ons to use here: https://testsigma.com/addons):