Unit testing with JUnit focuses on testing individual units of source code using JUnit. Key aspects covered include: - Unit testing tests the smallest testable parts of code, while integration testing tests groups of code modules and system testing tests complete integrated systems. - Tests in JUnit are implemented as public void testX() methods that call methods under test and assert expected outcomes. - A test suite assembles individual test methods using reflection and executes the suite to automatically run all tests. - Best practices include writing tests before code, testing all code that could break, and running tests frequently for rapid feedback.