This book is broadly divided into three sections:

  1. Section 1 is all about using Gallio and MbUnit to build your own applications.

    Installation

    Walks you through the various options you have to install Gallio and MbUnit and the applications it can hook into.

    My First Tests

    Explains the basics of test-driven development and uses MbUnit to write tests for a basic application. You’ll see how to run those tests first in Gallio’s native applications, Icarus and Echo, and then within other applications for which Gallio has a plug-in. You’ll also see tests written with other frameworks all run together within Gallio.

    MbUnit Fundamentals

    Building on Chapter 2, you’ll look at the basic class and method attributes provided in MbUnit v3 for test construction. You’ll see how to structure your application projects for testing, and step into your own code from running tests to debug it when your tests fail.

    Testing Recipes 1

    Discusses some of the core features in MbUnit which have made it one of the more popular test frameworks today. You’ll look at row tests, how to supply metadata to tests from various resources, creating test factories, contract verifiers and how to order tests. We’ll also cover how to run your tests in parallel and the problems that can create, as well as how to dynamic generate tests within ‘test suites’.

    Testing Recipes 2

    Looks at the various options you have to influence the tests you’ve written from outside the test classes themselves. You’ll see how to use test assembly config files, the assembly decorators provided by MbUnit v3, inclusion and exclusion filters, and mock objects.

    Domain Testing

    Covers scenarios where MbUnit is being used to test specific domains. We’ll look at testing database scripts and data access layers, web testing, and unit testing a more generic domain model with Moq and Rhino.Mocks. Finally, we’ll look at how to deal with elevating privileges and the dreaded Vista\Win 7 UAC in your tests.

    Test Reports

    Looks at the various types of report that Gallio generates after a test run, how to navigate them and how to customize their contents to your requirements.

    Extending MbUnit

    Takes the bonnet off the MbUnit engine and looks at how you can extend its core functionality with your own.

    Automated Testing With Gallio

    For those who use automated test servers or who would like to get started building one, this chapter looks at how to control Gallio with various build engines and how to integrate it into complementary applications such Cruise Control, TeamCity or nCover.

  2. Section 2 is all about contributing to the MbUnit and Gallio project and will be developed further once section 1 is complete.

  3. Section 3 is the reference area containing a number of appendices for quick reference.