TestNG is a testing framework inspired from JUnit and NUnit but introducing some new functionalities that make it more powerful and easier to use, such as:
JDK 5 Annotations (JDK 1.4 is also supported with JavaDoc annotations).
Flexible test configuration.
Support for data-driven testing
Support for parameters.
distribution of tests on slave machines.
Powerful execution model
Supported by a variety of tools and plug-ins (Eclipse, IDEA, Maven, etc...).
Embeds BeanShell for further flexibility.
no dependencies
Dependent methods for application server testing. TestNG is designed to cover all categories of tests: unit, functional, end-to-end, integration, etc...