UI On Screen
This test step is used to navigate to a specific screen for UI testing. Test steps of this kind should have additional sub-steps underneath to perform actions on the page, such as a UI Action or UI Assert.
Usage
UI On Screen is generally a parent step for operations such as UI Action and UI Assert. (When testing a table, UI With Row will also be added underneath UI On Screen to locate the element within the table.)
Many page types can be handled using UI On Screen, including standard Salesforce, Visualforce, and non-Salesforce pages.
This step is generally added automatically when using the Test Builder. This is recommended as the fastest way to add this kind of test step, although it is also possible to use drag-and-drop from the Test Palette.
Parameters
Since UI On Screen test steps are generally created from the Test Builder, you do not need to know how to populate these fields from scratch. However, describing all the available parameters for editing and debugging purposes is valid.
In the example above, the screen being located is the New screen of the Contact object.
The full parameters are defined as follows.
Screen parameters
- Connection Name: The Connection is currently in use.
- Screen Type: The type of page. This will be a Salesforce Page for any standard Salesforce pages, such as an Account view screen or Page Object (Selenium) for Visualforce or non-Salesforce pages).
- Object / Action: The Salesforce Object and the operation that the page performs in Salesforce (e.g., New, Edit, Clone).
- Record Type: The record type of the Object where relevant. (In Salesforce, different page layouts can be assigned based on Record Type).
Note that these options will vary if the screen is not a standard Salesforce page-specific URL the test should navigate to if Navigate is specified as Always Navigate.
Option Parameters
Navigate indicates whether Automation should navigate directly to this page. This is generally defaulted to Don’t Navigate so the test is guided by its preceding Test Steps. An exception is at the beginning of a test when the first On Screen test step defaults to Always Navigate.
It is also possible to set Navigate to Only if the address doesn’t match or Only if the address doesn’t match (excluding query params). These options indicate that Automation should navigate directly to the page only if the URL does not match the information provided in the Screen Parameters of the test step. The additional option (excluding query params) will ignore any query parameters in the URL when evaluating whether the address matches.
Other Option Parameters
- Window: Use this to change the window in focus. Defaults to Stay on the currently focused window. Choosing Select main window will move focus to the main parent window and execute the next test step in the parent window. Selecting the most recently opened window will switch back to the most recent window if multiple windows exist.
- Window Size: Determines the size of the browser window to run the test in. Subsequent test steps will be executed on this browser window size. Defaults to Default. Choosing Maximize will maximize the browser window as soon as the test step is executed.
- Close Window: Indicates whether Automation should close the window after performing sub-steps.
Navigating directly to an object using the Object ID
You can directly navigate to an object (Account, Case, Lead, Opportunity, etc.) with the help of the UI On Screen test step type. To navigate to a specific object you need a unique Object ID, such as a Salesforce ID.
The example below illustrates how you can navigate directly to the Account View screen using the Account Object ID.
Step 1: Create a test case invoking the Salesforce connection.
Step 2: Drag the UI On Screen test step type from the Test Palette to your test case.
Step 3: Ensure the navigation option is Always Navigate or Only if the address doesn’t match.
Step 4: Enter the Object ID; an example is shown in the screenshot below.
Note: You can parameterize the Object ID by passing the variable in the Object ID using a data-driven approach.
- Provar Automation
- System Requirements
- Browser and Driver Recommendations
- Installing Provar Automation
- Updating Provar Automation
- Licensing Provar
- Granting Org Permissions to Provar Automation
- Optimizing Org and Connection Metadata Processing in Provar
- Using Provar Automation
- Provar Automation
- Creating a New Test Project
- Import Test Project from a File
- Import Test Project from a Remote Repository
- Import Test Project from Local Repository
- Commit a Local Test Project to Source Control
- API Testing
- Behavior-Driven Development
- Consolidating Multiple Test Execution Reports
- Creating Test Cases
- Custom Table Mapping
- Functions
- Debugging Tests
- Defining a Namespace Prefix on a Connection
- Defining Proxy Settings
- Environment Management
- Exporting Test Cases into a PDF
- Exporting Test Projects
- Japanese Language Support
- Override Auto-Retry for Test Step
- Mapping and Executing the Lightning Article Editor in Provar
- Managing Test Steps
- Namespace Org Testing
- NitroX
- Provar Test Builder
- ProvarDX
- Refresh and Recompile
- Reintroduction of CLI License Check
- Reload Org Cache
- Reporting
- Running Tests
- Searching Provar with Find Usages
- Secrets Management and Encryption
- Setup and Teardown Test Cases
- Tags and Service Level Agreements (SLAs)
- Test Cycles
- Test Data Generation
- Test Plans
- Testing Browser Options
- Tooltip Testing
- Using the Test Palette
- Using Custom APIs
- Callable Tests
- Data-Driven Testing
- Page Objects
- Block Locator Strategies
- Introduction to XPaths
- Creating an XPath
- JavaScript Locator Support
- Label Locator Strategies
- Maintaining Page Objects
- Mapping Non-Salesforce fields
- Page Object Operations
- ProvarX™
- Refresh and Reselect Field Locators in Test Builder
- Using Java Method Annotations for Custom Objects
- Applications Testing
- Provar Manager
- How to Use Provar Manager
- Provar Manager Setup
- Provar Manager Integrations
- Release Management
- Test Management
- Test Operations
- Provar Manager and Provar Automation
- Setting Up a Connection to Provar Manager
- Object Mapping Between Automation and Manager
- How to Upload Test Plans, Test Plan Folders, Test Plan Instances, and Test Cases
- Provar Manager Filters
- Uploading Callable Test Cases in Provar Manager
- Uploading Test Steps in Provar Manager
- How to Know if a File in Automation is Linked in Test Manager
- Test Execution Reporting
- Metadata Coverage with Manager
- Provar Grid
- DevOps
- Introduction to Provar DevOps
- Introduction to Test Scheduling
- Apache Ant
- Configuration for Sending Emails via the Automation Command Line Interface
- Continuous Integration
- AutoRABIT Salesforce DevOps in Provar Test
- Azure DevOps
- Running a Provar CI Task in Azure DevOps Pipelines
- Configuring the Automation secrets password in Microsoft Azure Pipelines
- Parallel Execution in Microsoft Azure Pipelines using Multiple build.xml Files
- Parallel Execution in Microsoft Azure Pipelines using Targets
- Parallel execution in Microsoft Azure Pipelines using Test Plans
- Bitbucket Pipelines
- CircleCI
- Copado
- Docker
- Flosum
- Gearset
- GitHub Actions
- Integrating GitHub Actions CI to Run Automation CI Task
- Remote Trigger in GitHub Actions
- Parameterization using Environment Variables in GitHub Actions
- Parallel Execution in GitHub Actions using Multiple build.xml Files
- Parallel Execution in GitHub Actions using Targets
- Parallel Execution in GitHub Actions using Test Plan
- Parallel Execution in GitHub Actions using Job Matrix
- GitLab Continuous Integration
- Travis CI
- Jenkins
- Execution Environment Security Configuration
- Provar Jenkins Plugin
- Parallel Execution
- Running Provar on Linux
- Reporting
- Salesforce DX
- Git
- Version Control
- Salesforce Testing
- Recommended Practices
- Salesforce Connection Best Practices
- Improve Your Metadata Performance
- Java 21 Upgrade
- Testing Best Practices
- Automation Planning
- Supported Testing Phases
- Provar Naming Standards
- Test Case Design
- Create records via API
- Avoid using static values
- Abort Unused Test Sessions/Runs
- Avoid Metadata performance issues
- Increase auto-retry waits for steps using a global variable
- Create different page objects for different pages
- The Best Ways to Change Callable Test Case Locations
- Working with the .testProject file and .secrets file
- Best practices for the .provarCaches folder
- Best practices for .pageObject files
- Troubleshooting
- How to Use Keytool Command for Importing Certificates
- Installing Provar After Upgrading to macOS Catalina
- Browsers
- Configurations and Permissions
- Connections
- DevOps
- Error Messages
- Provar Manager 3.0 Install Error Resolution
- Provar Manager Test Case Upload Resolution
- Administrator has Blocked Access to Client
- JavascriptException: Javascript Error
- macOS Big Sur Upgrade
- Resolving Failed to Create ChromeDriver Error
- Resolving Jenkins License Missing Error
- Resolving Metadata Timeout Errors
- Test Execution Fails – Firefox Not Installed
- Selenium 4 Upgrade
- Licensing, Installation and Firewalls
- Memory
- Test Builder and Test Cases
- Release Notes