I am working on a project using both domain-driven design and test development. After reading the Evans DDD book, I noticed that it did not define interfaces for the aggregate roots in the domain.
If I do DDD and TDD, do I have to define interfaces for each root node to make aggregate root classes easy to test and prototype? If so, should I also define interfaces for each object contained in the root of the aggregate?
From my searches on Google and StackOverflow, I found answers that are close to what I am looking for, but I specifically seek advice when doing DDD and TDD, because my assumption is that testability when doing TDD might be missed in the answers that I have seen so far.
source share