agentsclimarketplace

Testng

Skill G1Joshi/Agent-Skills/skills/testing/testng

TestNG Java testing framework. Use for Java testing.From its SKILL.md

Install
npx -y skills add G1Joshi/Agent-Skills --skill testng

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

One thing to look at

  • 12 stars12 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.

SKILL.md

2.0 KB, 478 tokens by cl100k_base, as published. Nobody here has run it

TestNG

TestNG is a testing framework setup inspired by JUnit and NUnit but introducing some new functionalities that make it more powerful and easier to use, such as parallel testing and data-driven testing.

When to Use

  • Complex Suites: You need granular control over which groups of tests run via XML configuration (testing.xml).
  • Parallel Execution: Historically better support for multi-threaded test execution than JUnit.
  • Dependencies: Tests that depend on other tests (@Test(dependsOnMethods = { "serverStarted" })).

Quick Start

import org.testng.Assert;
import org.testng.annotations.Test;

public class TestNGExample {
    @Test(groups = { "fast" })
    public void testAdd() {
        Assert.assertEquals(1 + 1, 2);
    }
}
<!-- testng.xml -->
<!DOCTYPE suite SYSTEM "https://testng.org/testng-1.0.dtd" >
<suite name="Suite1" parallel="methods" thread-count="5">
  <test name="test1">
    <classes>
       <class name="com.example.TestNGExample"/>
    </classes>
  </test>
</suite>

Core Concepts

Groups

Tagging tests (@Test(groups = "smoke")). Allows running specific subsets (Include/Exclude in XML).

Data Providers

Native support for passing complex objects to tests.

@DataProvider(name = "test1")
public Object[][] createData1() {
 return new Object[][] {
   { "Cedric", new Integer(36) },
   { "Anne", new Integer(37) },
 };
}

@Test(dataProvider = "test1")
public void verifyData1(String n1, Integer n2) { ... }

Best Practices (2025)

Do:

  • Use Soft Assertions: SoftAssert allows the test to continue even if one check fails, reporting all errors at the end.
  • Parallelize: Leverage thread-count in CI to speed up execution.

Don't:

  • Don't use dependsOnMethods for Unit Tests: Unit tests should be independent. Use dependencies only for Integration flows.

References

What ships with it

Read from the repository

Just SKILL.md. No reference files, no scripts.

Keep looking

Skills are one crate of 325,949. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.