Chapter 10. Creating acceptance tests with Fit
We are searching for some kind of harmony between two intangibles: a form which we have not yet designed and a context which we cannot properly describe.
Christopher Alexander, father of the Pattern Language movement
It is safe to say that, at the time of writing this book, the Fit framework is by far the most popular acceptance-testing framework in use. It also happens to be good at what it does. For that reason, we’ll be using Fit in this book to demonstrate how we can go about automating acceptance tests with a tool that supports customer collaboration as well as lending a hand to the programmer or tester for automating the tests’ execution. Before getting down to the business of acceptance test-driven development with Fit, we need to know something about how Fit works and how to express acceptance tests with Fit. That is the goal of this chapter.
We’ll begin by drawing the big picture of what Fit is, what it does, and how it can be used in acceptance TDD. We’ll continue by familiarizing ourselves with the core concepts of Fit—test documents and fixture tables. From there, we’ll continue with studying how Fit turns fixture tables into executable tests by binding the tables it encounters to fixture classes. We’ll gain understanding of the way Fit does this by looking at three built-in fixture types called the ColumnFixture, RowFixture, and ActionFixture.