Remove Authentication Remove Construction Remove Programming Remove System Design
article thumbnail

Testing Without Mocks: A Pattern Language

James Shore

To avoid manually constructing the entire dependency chain, use Parameterless Instantiation with Zero-Impact Instantiation. For example, an immutable Address class should be constructed with its street, city, and so forth. If convenient in your programming language, return multiple optional values as well.

Testing 138
article thumbnail

Testing Without Mocks: A Pattern Language

James Shore

To avoid constructing the entire dependency chain, use Zero-Impact Instantiation and Parameterless Instantiation. One popular design technique is outside-in design , in which an application is programmed by starting with the externally-visible behavior of the application, then working your way in to the details.

Testing 88
article thumbnail

Testing Without Mocks: A Pattern Language

James Shore

To avoid constructing the entire dependency chain, use Zero-Impact Instantiation and Parameterless Instantiation. One popular design technique is outside-in design , in which an application is programmed by starting with the externally-visible behavior of the application, then working your way in to the details.

Testing 40