In this presentation from QCon San Francisco 2007, Cedric Beust and Alexandru Popescu discuss interesting features of TestNG such as grouping of tests, data providers for tests and dependency handling in tests, tips for designing easily testable code such as eliminating statics, extreme encapsulation and TDD, the importance of functional versus unit testing, and migrating from JUnit to TestNG.
Watch Designing for Testability (53 minutes).