smartui-skill
Generates SmartUI visual regression test configurations for screenshot comparison on TestMu AI cloud. Framework-agnostic — works with Playwright, Selenium, Cypress, Puppeteer. Use when user mentions "SmartUI", "visual regression", "screenshot comparison", "visual testing". Trigge
Install
npx skills add https://github.com/sickn33/agentic-awesome-skills/tree/main/skills/smartui-skill
claude plugin marketplace add https://llmmart.ai/marketplace.json && claude plugin install sickn33-agentic-awesome-skills@llmmart
git clone https://github.com/sickn33/agentic-awesome-skills.git
The skills CLI installs just this skill, for any of its supported agents. Claude Code installs the whole sickn33/agentic-awesome-skills collection as a plugin from our marketplace. Git is the plain clone.
Skill manifest
SmartUI Visual Regression Skill
When to Use
Use this skill when you need generates SmartUI visual regression test configurations for screenshot comparison on TestMu AI cloud. Framework-agnostic — works with Playwright, Selenium, Cypress, Puppeteer. Use when user mentions "SmartUI", "visual regression", "screenshot comparison", "visual testing". Triggers on:...
Core Patterns
Playwright + SmartUI SDK
const { chromium } = require('playwright');
const { smartuiSnapshot } = require('@lambdatest/smartui-cli');
(async () => {
const browser = await chromium.launch();
const page = await browser.newPage();
await page.goto('https://example.com');
await smartuiSnapshot(page, 'Homepage');
await page.goto('https://example.com/login');
await smartuiSnapshot(page, 'Login Page');
await browser.close();
})();
Selenium + SmartUI
// Take SmartUI screenshot
((JavascriptExecutor) driver).executeScript(
"smartui.takeScreenshot=Login Page"
);
CLI Execution
# Install
npm install @lambdatest/smartui-cli --save-dev
# Configure
npx smartui config:create smartui.config.json
# Execute
npx smartui exec -- node test.js
# or with Playwright
npx smartui exec -- npx playwright test
smartui.config.json
{
"web": {
"browsers": ["chrome", "firefox", "safari"],
"viewports": [[1920, 1080], [1366, 768], [375, 812]]
},
"waitForPageRender": 5000,
"waitForTimeout": 1000
}
SmartUI with Storybook
npx smartui storybook http://localhost:6006 --config smartui.config.json
Approval Workflow
- First run creates baseline screenshots
- Subsequent runs compare against baseline
- Differences highlighted in dashboard
- Approve/reject changes in LambdaTest SmartUI dashboard
- Approved screenshots become new baseline
Anti-Patterns
| Bad | Good | Why |
|---|---|---|
| No viewport config | Multiple viewports | Responsive issues |
| No wait for render | waitForPageRender |
Incomplete screenshots |
| Screenshot everything | Key pages/components | Noise reduction |
| No approval process | Review diffs in dashboard | Catch regressions |
Cloud Authentication
Set environment variables:
export PROJECT_TOKEN="your-smartui-project-token" # From SmartUI dashboard
export LT_USERNAME="your-username" # For Selenium/Playwright cloud
export LT_ACCESS_KEY="your-access-key" # For Selenium/Playwright cloud
CLI approach (uses PROJECT_TOKEN):
npx smartui exec -- npx playwright test
Selenium Cloud approach (uses LT_USERNAME/LT_ACCESS_KEY):
// Capabilities include SmartUI options
HashMap<String, Object> ltOptions = new HashMap<>();
ltOptions.put("user", System.getenv("LT_USERNAME"));
ltOptions.put("accessKey", System.getenv("LT_ACCESS_KEY"));
ltOptions.put("build", "SmartUI Build");
ltOptions.put("smartUI.project", "My SmartUI Project");
ChromeOptions options = new ChromeOptions();
options.setCapability("LT:Options", ltOptions);
WebDriver driver = new RemoteWebDriver(
new URL("https://hub.lambdatest.com/wd/hub"), options);
Quick Reference
| Task | Command |
|---|---|
| Install | npm install @lambdatest/smartui-cli |
| Init config | npx smartui config:create smartui.config.json |
| Run | npx smartui exec -- <test command> |
| Storybook | npx smartui storybook <url> |
| Dashboard | https://smartui.lambdatest.com |
Deep Patterns
For advanced patterns, debugging guides, CI/CD integration, and best practices,
see reference/playbook.md.
Limitations
- Use this skill only when the task clearly matches its upstream source and local project context.
- Verify commands, generated code, dependencies, credentials, and external service behavior before applying changes.
- Do not treat examples as a substitute for environment-specific tests, security review, or user approval for destructive or costly actions.
Files (agentic-awesome-skills)
-
SKILL.md 4.5 KB
--- name: smartui-skill description: Generates SmartUI visual regression test configurations for screenshot comparison on TestMu AI cloud. Framework-agnostic — works with Playwright, Selenium, Cypress, Puppeteer. Use when user mentions "SmartUI", "visual regression", "screenshot comparison", "visual testing". Triggers on:... risk: critical source: https://github.com/LambdaTest/agent-skills/tree/main/smartui-skill source_repo: LambdaTest/agent-skills source_type: community date_added: 2026-07-01 license: MIT license_source: https://github.com/LambdaTest/agent-skills/blob/main/LICENSE --- # SmartUI Visual Regression Skill ## When to Use Use this skill when you need generates SmartUI visual regression test configurations for screenshot comparison on TestMu AI cloud. Framework-agnostic — works with Playwright, Selenium, Cypress, Puppeteer. Use when user mentions "SmartUI", "visual regression", "screenshot comparison", "visual testing". Triggers on:... ## Core Patterns ### Playwright + SmartUI SDK ```javascript const { chromium } = require('playwright'); const { smartuiSnapshot } = require('@lambdatest/smartui-cli'); (async () => { const browser = await chromium.launch(); const page = await browser.newPage(); await page.goto('https://example.com'); await smartuiSnapshot(page, 'Homepage'); await page.goto('https://example.com/login'); await smartuiSnapshot(page, 'Login Page'); await browser.close(); })(); ``` ### Selenium + SmartUI ```java // Take SmartUI screenshot ((JavascriptExecutor) driver).executeScript( "smartui.takeScreenshot=Login Page" ); ``` ### CLI Execution ```bash # Install npm install @lambdatest/smartui-cli --save-dev # Configure npx smartui config:create smartui.config.json # Execute npx smartui exec -- node test.js # or with Playwright npx smartui exec -- npx playwright test ``` ### smartui.config.json ```json { "web": { "browsers": ["chrome", "firefox", "safari"], "viewports": [[1920, 1080], [1366, 768], [375, 812]] }, "waitForPageRender": 5000, "waitForTimeout": 1000 } ``` ### SmartUI with Storybook ```bash npx smartui storybook http://localhost:6006 --config smartui.config.json ``` ### Approval Workflow 1. First run creates baseline screenshots 2. Subsequent runs compare against baseline 3. Differences highlighted in dashboard 4. Approve/reject changes in LambdaTest SmartUI dashboard 5. Approved screenshots become new baseline ### Anti-Patterns | Bad | Good | Why | |-----|------|-----| | No viewport config | Multiple viewports | Responsive issues | | No wait for render | `waitForPageRender` | Incomplete screenshots | | Screenshot everything | Key pages/components | Noise reduction | | No approval process | Review diffs in dashboard | Catch regressions | ### Cloud Authentication Set environment variables: ```bash export PROJECT_TOKEN="your-smartui-project-token" # From SmartUI dashboard export LT_USERNAME="your-username" # For Selenium/Playwright cloud export LT_ACCESS_KEY="your-access-key" # For Selenium/Playwright cloud ``` **CLI approach** (uses `PROJECT_TOKEN`): ```bash npx smartui exec -- npx playwright test ``` **Selenium Cloud approach** (uses `LT_USERNAME`/`LT_ACCESS_KEY`): ```java // Capabilities include SmartUI options HashMap<String, Object> ltOptions = new HashMap<>(); ltOptions.put("user", System.getenv("LT_USERNAME")); ltOptions.put("accessKey", System.getenv("LT_ACCESS_KEY")); ltOptions.put("build", "SmartUI Build"); ltOptions.put("smartUI.project", "My SmartUI Project"); ChromeOptions options = new ChromeOptions(); options.setCapability("LT:Options", ltOptions); WebDriver driver = new RemoteWebDriver( new URL("https://hub.lambdatest.com/wd/hub"), options); ``` ## Quick Reference | Task | Command | |------|---------| | Install | `npm install @lambdatest/smartui-cli` | | Init config | `npx smartui config:create smartui.config.json` | | Run | `npx smartui exec -- <test command>` | | Storybook | `npx smartui storybook <url>` | | Dashboard | `https://smartui.lambdatest.com` | ## Deep Patterns For advanced patterns, debugging guides, CI/CD integration, and best practices, see `reference/playbook.md`. ## Limitations - Use this skill only when the task clearly matches its upstream source and local project context. - Verify commands, generated code, dependencies, credentials, and external service behavior before applying changes. - Do not treat examples as a substitute for environment-specific tests, security review, or user approval for destructive or costly actions.
Comments (0)
Sign in to join the conversation.
Reviews (0)
No reviews yet.
No comments yet.