---
schema_version: "1"
id: 2a0bf179e57a6ca071ad1dda4ffa3b229fe3efc8993e22e7df26575b660ad869
title: UTAM Testing Workflow
collection: admin
version: current
locale: en-us
portal_url: https://docs.salesforce.com/admin/current/en-us/xcloud/264-0-0/os_utam_workflow.md
canonical_url: https://help.salesforce.com/s/articleView?id=xcloud.os_utam_workflow.htm&release=264.0.0&type=5
source_site: help.salesforce.com
content_type: documentation
content_hash: 4fc8bba6ad2c108672fc42b2b912052162a78030154e647be22b56ec140cb760
description: The UI Test Automation Model (UTAM) testing workflow focuses on preparing the testing environment, writing UTAM Page Objects (POs), and running end-to-end tests for UI components.
products:
  - Omnistudio
release: "264"
---
# UTAM Testing Workflow

The UI Test Automation Model (UTAM) testing workflow focuses on preparing the testing environment, writing UTAM Page Objects (POs), and running end-to-end tests for UI components.

1. Environment setup: Install the Salesforce CLI and configure your preferred test runner (example, WebDriverIO, TestNG, Maven) to work with the UTAM framework. See [Install Saleforce CLI](https://developer.salesforce.com/docs/atlas.en-us.sfdx_setup.meta/sfdx_setup/sfdx_setup_intro.htm), [Guide for Java](https://utam.dev/guide/java-guide), and [Guide for JavaScript](https://utam.dev/guide/js-guide).
2. PO creation: Create custom UTAM POs for your complex Omniscripts and Flexcards. These POs define the UI elements (inputs, buttons, steps) and the actions you can perform on them. See[Salesforce Page Objects](https://www.npmjs.com/package/salesforce-pageobjects).
3. Test scripting: Write test classes in Java or TypeScript that import the necessary Omnistudio and custom POs, then define a logical sequence of user actions that include login, navigate, data input, and component interaction.
4. Assertion: Use assertion libraries (example, TestNG Assert) to confirm that elements display correctly, input values are retained, and UI logic (example, error messages) works as expected.
5. End-to-end tests: For commands to run your tests, see [UTAM Java Readme](https://github.com/salesforce/utam-java-recipes/blob/main/README.md) and [UTAM JavaScript Readme](https://github.com/salesforce/utam-js-recipes/blob/main/README.md). Example, `mvn test -Dtest=<TestClassName>`.