In this chapter, we will work through katas and apply constraints to our solution. Constraints are a way to force developers to write code in a different way. Developers learn new coding techniques by enforcing the constraints. The constraints are applied so as to build on the existing solution. We will discuss the order of the test cases, implementation independent tests, testing random behavior, testing time-dependent behavior, difference reduction, using mocks as a design technique, the open-closed principle, and testing guidelines such as testing precisely and concretely.
Fibonacci Sequence
This section will ...