robot-testing

Write and debug Robot Framework tests for Salesforce org setup and end-to-end workflows.

5|3|Updated Sep 9, 2026
One-click install
npx skills add https://github.com/SalesforceLabs/revenue-cloud-foundations --skill robot-testing-salesforcelabs
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: robot-testing
Source: https://github.com/SalesforceLabs/revenue-cloud-foundations/tree/main/.cursor/skills/robot-testing
Command: npx skills add https://github.com/SalesforceLabs/revenue-cloud-foundations --skill robot-testing-salesforcelabs

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve? Salesforce Lightning pages use LWC shadow DOM that standard Selenium locators cannot pierce, and many org settings have no API equivalent, making UI automation fragile and hard to verify. This Skill provides proven patterns for writing, modifying, and debugging Robot Framework suites that automate org setup and validate end-to-end Revenue Cloud workflows. ## Core Features & Use Cases - Shadow DOM traversal patterns: Recursive JavaScript helpers (findEl/findAll), native setter for LWC inputs, and combobox/toggle interaction recipes that work across shadow boundaries. - Setup vs E2E test guidance: Clear separation between org-configuration automation (tests/setup/) and functional tests (tests/e2e/), with CCI task wiring tables and Python wrapper patterns. - Mandatory live-org verification rules: Explicit guidance that robot --dryrun is syntax-only and behavioral changes must be validated against a live scratch org. - Use Case: When adding a new setup toggle suite, follow the documented patterns to create the .robot file, wrap it in a CCI Python task, and verify it against a scratch org before merging. ## Quick Start Ask the agent to write a new Robot Framework setup test that enables a Salesforce org toggle, following the shadow DOM patterns and CCI task wiring in this skill.

Frequently Asked Questions about robot-testing

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I write Robot Framework tests for Salesforce Lightning shadow DOM?

Use recursive JavaScript traversal helpers (findEl/findAll) executed via Execute JavaScript, since standard Selenium locators cannot cross LWC shadow boundaries. Dispatch events with composed: true and click wrapping labels rather than raw inputs.

Why does Input Text not work on Lightning web component inputs?

Standard input_text does not trigger LWC change detection. Use the native setter pattern: call the HTMLInputElement value setter, then dispatch input and change events with bubbles and composed set to true.

Is robot --dryrun enough to verify a Robot Framework test change?

No. Dryrun only resolves keyword names, argument counts, and syntax without launching a browser. Behavioral changes to keywords, locators, or JavaScript logic must be run against a live scratch org before merging.

Why do // comments break JavaScript in Robot Framework tests?

SeleniumLibrary joins Execute JavaScript continuation lines without newlines, so a // comment swallows the rest of the script. Use /* */ block comments and semicolon-terminate every statement.

What is the difference between setup tests and E2E tests in this framework?

Setup tests in tests/setup/ configure org settings that have no API equivalent and run mid-flow during org preparation. E2E tests in tests/e2e/ validate business workflows like quote-to-order and run on demand after provisioning.