jUnit is great for unit testing, gets the job done well, however it was never built for integration testing, but in the last year or so it has been geared towards integration/automation testing.
TestNG from a very early stage was suitable for integration/automation testing, it has a more powerful version of dataprovider than jUnit, even before jUnit had dataprovider capabilities. It has much better annotation support than jUnit and unlike jUnit TestNG does not require your before/after class methods to be static. It has better multi thread/parallel execution support and has method dependency, as well as order execution. All of which jUnit needs or does poorly.
TestNG even has better reporting, please google for ReportNG or (my fav) TestNG-XLST.
if you want only simple unit testing, IMO go with jUnit, if you require a more robust test framework to meet your unit/integration/performance/automation testing, then I would very much recommend TestNG.