TestNG & JUnit

JUnit

JUnit is a unit testing framework for the Java programming language which uses annotations to identify methods that specify a test. JUnit is mostly used to do unit testing by the developers to check if the piece of code or a functionality is working as expected.

It is very simple to use JUnit in IDEs. You can create and manage test cases like as you do in .java class files. By default JUnit will be configured in all major IDEs. You need to just import the junit statements.
Click here for Junit Tutorials

TestNG

TestNG is a testing framework inspired from JUnit and NUnit. It has also extended new functionalities which made it more powerful and easier than the other testing frameworks.
Installation is also very simple for the three major IDEs Eclipse, IntelliJ IDEA, and NetBeans which are available in the market.
Reporting which is very important after completing the unit testing / testing became easier with TestNG, it can generate report in HTML and XML formats.

There are supporting tools for TestNG to customize or extend the reporting style. ReportNG and XLST Reports are the two plug-ins which are currently active for TestNG.
ReportNG is a simple HTML reporting plug-in for the TestNG which acts as a replacement for default TestNG HTML report by disabling the default TestNG reporters.
Using XLST reports, user can generate a graphical / pictorial reports which can be presented to high level management which gives clear information just by looking the graph or Chart
Click here for TestNG Tutorials