skillZs
★ LIVE SKILL TAGS ★
>>> LIVE SKILLS INDEX <<<
* OPEN SOURCE *
NO LOGIN, NO TRACKING
※ REAL INSTALL DATA ※
← back to all skills
lambdatest/agent-skills217 installs

testng-skill

Generates TestNG tests in Java with groups, data providers, parallel execution, XML suite configuration, and listeners. Use when user mentions "TestNG", "@DataProvider", "testng.xml", "groups". Triggers on: "TestNG", "@DataProvider", "testng.xml", "TestNG suite", "parallel tests Java".

How do I install this agent skill?

npx skills add https://github.com/lambdatest/agent-skills --skill testng-skill
view source ↗

Is this agent skill safe to install?

  • Gen Agent Trust Hubpass

    The TestNG skill is a comprehensive and secure set of patterns and playbooks for Java unit and automation testing. It follows industry best practices, such as using ThreadLocal for parallel test safety, and provides legitimate integration examples for standard tools like Selenium and Allure. No malicious behavior or security vulnerabilities were detected.

  • Socketpass

    No alerts

  • Snykpass

    Risk: LOW · No issues

  • Runlayerpass

    3 files scanned · No issues

  • ZeroLeakspass

    Score: 93/100 · 2 sections analyzed

What does this agent skill do?

TestNG Testing Skill

Core Patterns

Basic Test with Groups

import org.testng.annotations.*;
import org.testng.Assert;

public class LoginTest {
    @BeforeMethod
    public void setUp() { /* setup */ }

    @Test(groups = "smoke")
    public void testLoginSuccess() {
        Assert.assertTrue(loginService.login("user@test.com", "password123"));
    }

    @Test(groups = "regression", dependsOnMethods = "testLoginSuccess")
    public void testAccessDashboard() {
        Assert.assertNotNull(dashboard.getContent());
    }

    @Test(expectedExceptions = AuthenticationException.class)
    public void testLoginInvalidPassword() {
        loginService.login("user@test.com", "wrong");
    }

    @AfterMethod
    public void tearDown() { /* cleanup */ }
}

Data Providers

@DataProvider(name = "loginData")
public Object[][] loginData() {
    return new Object[][] {
        {"admin@test.com", "admin123", true},
        {"user@test.com", "password", true},
        {"invalid@test.com", "wrong", false},
    };
}

@Test(dataProvider = "loginData")
public void testLogin(String email, String password, boolean expected) {
    Assert.assertEquals(loginService.login(email, password), expected);
}

TestNG XML Suite

<!DOCTYPE suite SYSTEM "https://testng.org/testng-1.0.dtd">
<suite name="Regression" parallel="tests" thread-count="5">
  <test name="Smoke">
    <groups><run><include name="smoke"/></run></groups>
    <classes><class name="tests.LoginTest"/></classes>
  </test>
  <test name="Full">
    <groups><run><include name="regression"/><exclude name="flaky"/></run></groups>
    <packages><package name="tests.*"/></packages>
  </test>
</suite>

Parallel Execution

<suite parallel="methods" thread-count="5">   <!-- Method level -->
<suite parallel="classes" thread-count="5">    <!-- Class level -->
<suite parallel="tests" thread-count="5">      <!-- Test level -->

Soft Assertions

SoftAssert soft = new SoftAssert();
soft.assertEquals(user.getName(), "Alice");
soft.assertEquals(user.getAge(), 25);
soft.assertTrue(user.isActive());
soft.assertAll();  // Reports all failures at once

Listeners

public class TestListener implements ITestListener {
    @Override public void onTestFailure(ITestResult result) {
        System.out.println("Failed: " + result.getName());
        // Take screenshot, log, etc.
    }
}

@Listeners(TestListener.class)
public class LoginTest { /* ... */ }

Lifecycle Annotations

@BeforeSuite → @BeforeTest → @BeforeClass → @BeforeMethod → @Test → @AfterMethod → @AfterClass → @AfterTest → @AfterSuite

Anti-Patterns

BadGoodWhy
dependsOnMethods everywhereIndependent testsCascading failures
No groups@Test(groups = "smoke")Can't run subsets
Hard-coded test data@DataProviderReusable
Priority orderingIndependent testsFragile

Quick Reference

TaskCommand
Run suitemvn test -DsuiteXmlFile=testng.xml
Run groupmvn test -Dgroups=smoke
Run classmvn test -Dtest=LoginTest
Reportstest-output/index.html

Deep Patterns → reference/playbook.md

§SectionLines
1Project Setup & ConfigurationMaven + Surefire config
2Suite XML ConfigurationMulti-env, parallel, groups
3BaseTest & Thread-Safe DriverThreadLocal, ConfigReader
4Data Providers (Advanced)Excel, JSON, CSV, parallel, cross-class
5Factory PatternCross-browser matrix
6Listeners (Production Suite)Retry, screenshot, timing
7Soft Assertions & DependenciesGroups, method deps
8Page Object IntegrationPageFactory, fluent POs
9Parallel Execution StrategiesMethod/class/test/mixed
10Reporting IntegrationAllure, ExtentReports
11CI/CD IntegrationGitHub Actions, Jenkins
12Debugging Quick-Reference12 common problems
13Best Practices Checklist14 items

Add the canonical catalog link to the repository README so users can inspect current installs and available audits. The publishing guide covers the complete discovery path.

<a href="https://skillzs.dev/skills/lambdatest/agent-skills/testng-skill">View testng-skill on skillZs</a>