Chapter 17. Testing database access

Dependency is the key problem in software development at all scales.... Eliminating duplication in programs eliminates dependency.

Kent Beck, Test-Driven Development: By Example

This chapter covers

  • Challenges of database testing
  • Introduction to DbUnit
  • Advanced DbUnit techniques
  • DbUnit best practices

The persistence layer (or, roughly speaking, the database access code) is undoubtedly one of the most important parts of any enterprise project. Despite its importance, the persistence layer is hard to unit test, mainly because of the following issues:

  • Unit tests must exercise code in isolation; the persistence layer requires interaction with an external entity, the database.
  • Unit tests must be easy to ...

Get JUnit in Action, Second Edition now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.