gauge-skill

Generates Gauge test specifications in Markdown with step implementations in Java, Python, JS, or Ruby. ThoughtWorks' test automation framework. Use when user mentions "Gauge", "spec file", "## Scenario", "step implementation". Triggers on: "Gauge", "Gauge spec", "Gauge framework", "ThoughtWorks test".

Safety Notice

This listing is imported from skills.sh public index metadata. Review upstream SKILL.md and repository scripts before running.

Copy this and send it to your AI assistant to learn

Install skill "gauge-skill" with this command: npx skills add lambdatest/agent-skills/lambdatest-agent-skills-gauge-skill

Gauge Automation Skill

Core Patterns

Specification (specs/login.spec)

# Login Feature

## Successful Login
* Navigate to login page
* Enter email "user@test.com"
* Enter password "password123"
* Click login button
* Verify dashboard is displayed
* Verify welcome message contains "Welcome"

## Invalid Credentials
* Navigate to login page
* Enter email "wrong@test.com"
* Enter password "wrong"
* Click login button
* Verify error message "Invalid credentials" is shown

## Login with multiple users
|email             |password |expected  |
|-----------------|---------|----------|
|admin@test.com   |admin123 |Dashboard |
|user@test.com    |pass123  |Dashboard |
|bad@test.com     |wrong    |Error     |

* Login as <email> with <password>
* Verify <expected> page is shown

Step Implementation — Java

import com.thoughtworks.gauge.Step;
import com.thoughtworks.gauge.Table;

public class LoginSteps {
    WebDriver driver;

    @Step("Navigate to login page")
    public void navigateToLogin() {
        driver.get("http://localhost:3000/login");
    }

    @Step("Enter email <email>")
    public void enterEmail(String email) {
        driver.findElement(By.id("email")).sendKeys(email);
    }

    @Step("Enter password <password>")
    public void enterPassword(String password) {
        driver.findElement(By.id("password")).sendKeys(password);
    }

    @Step("Click login button")
    public void clickLogin() {
        driver.findElement(By.cssSelector("button[type='submit']")).click();
    }

    @Step("Verify dashboard is displayed")
    public void verifyDashboard() {
        assertTrue(driver.getCurrentUrl().contains("/dashboard"));
    }
}

Step Implementation — Python

from getgauge.python import step
from selenium import webdriver

@step("Navigate to login page")
def navigate_to_login():
    driver.get("http://localhost:3000/login")

@step("Enter email <email>")
def enter_email(email):
    driver.find_element_by_id("email").send_keys(email)

@step("Click login button")
def click_login():
    driver.find_element_by_css_selector("button[type='submit']").click()

Concepts (Reusable Step Groups — specs/concepts/login.cpt)

# Login as <email> with <password>
* Navigate to login page
* Enter email <email>
* Enter password <password>
* Click login button

Setup: gauge install java (or python, js, ruby)

Init: gauge init java

Run: gauge run specs/ or gauge run specs/login.spec

Cloud Execution on TestMu AI

Set environment variables: LT_USERNAME, LT_ACCESS_KEY

// StepImplementation.java
ChromeOptions browserOptions = new ChromeOptions();
HashMap<String, Object> ltOptions = new HashMap<>();
ltOptions.put("user", System.getenv("LT_USERNAME"));
ltOptions.put("accessKey", System.getenv("LT_ACCESS_KEY"));
ltOptions.put("build", "Gauge Build");
ltOptions.put("platformName", "Windows 11");
ltOptions.put("video", true);
ltOptions.put("console", true);
browserOptions.setCapability("LT:Options", ltOptions);
Driver.setWebDriver(new RemoteWebDriver(
    new URL("https://hub.lambdatest.com/wd/hub"), browserOptions));

Tags: gauge run --tags "smoke" (use Tags: smoke in spec)

Deep Patterns

See reference/playbook.md for production-grade patterns:

SectionWhat You Get
§1 Project SetupInstallation, project structure, environment properties
§2 Spec FilesMarkdown scenarios, data tables, concepts (.cpt)
§3 Step ImplementationsJava steps, table-driven steps, assertions
§4 Hooks & ExecutionBeforeSuite/Scenario/Step, screenshots, browser logs
§5 Page ObjectsBasePage, concrete pages, usage in steps
§6 Data ManagementScenarioDataStore, SpecDataStore, CSV data
§7 LambdaTest IntegrationRemote driver factory with LT:Options
§8 CI/CD IntegrationGitHub Actions with parallel execution, XML reports
§9 Debugging Table12 common problems with causes and fixes
§10 Best Practices14-item Gauge testing checklist

Source Transparency

This detail page is rendered from real SKILL.md content. Trust labels are metadata-based hints, not a safety guarantee.

Related Skills

Related by shared tags or category signals.

Automation

appium-skill

No summary provided by upstream source.

Repository SourceNeeds Review
Automation

selenium-skill

No summary provided by upstream source.

Repository SourceNeeds Review
Automation

playwright-skill

No summary provided by upstream source.

Repository SourceNeeds Review
Automation

jasmine-skill

No summary provided by upstream source.

Repository SourceNeeds Review