Safari Books Online is a digital library providing on-demand subscription access to thousands of learning resources.
Enough talk; let’s look at an example from the BrowseOverflow problem domain. One sentence from Chapter 5 says:
On launching BrowseOverflow, the user sees a list of topics... Each topic represents a tag on Stack Overflow. Questions are tagged to indicate what subjects they address.
I shall assume that the user is not part of the software system (it’s hard to sell an app if the only user is the app itself). However, the list of topics should be part of the system. It seems that a ”topic” is an object in the problem domain. It’s time to write a test to prove that the app provides a Topic class. In fact, because Topic will be a class in the app, I’ll create a new TopicTests fixture in the BrowseOverflowTests target (not the app target), and add the test to that: