87 people following this project (follow)

Overview

These pages provide the overall documentation for AutoFixture.

Architecture

AutoFixture is designed around a very general and extensible kernel, specialized by the Fixture class. The architecture and extensibility points are described on the Architecture page.

Development

AutoFixture is currently being developed in C# on .NET 3.5 using Visual Studio 2010 with xUnit.net as the unit testing framework. So far, all development has been done with TDD so there is a pretty high degree of code coverage, and it would be preferable to keep it that way.

All binaries (such as xUnit.net) are included in the Mercurial repository under the \Lib folder. All additional binaries not part of .NET 3.5 must go there as well, so that it would be possible to pull down the repository and immediately be able to compile and run all tests.

There are several different targeted solutions to be found under the \Src folder, but be aware that the final verification step before pushing to the repository is to successfully run all the unit tests in the BuildRelease.ps1 file.

As part of the verification build, Visual Studio Code Analysis is executed in a configuration that treats warnings as errors. No CA warnings should be suppressed unless the documented conditions for suppression are satisfied. Otherwise, a documented agreement between at least two active developers of the project should be reached to allow a suppression of a non-suppressable warning.

When developing for AutoFixture, please respect the coding style already present. Look around in the source code to get a feel for it. Also, please follow the Open Source Contribution Etiquette. AutoFixture is a fairly typical open source project: if you want to contribute, start by creating a fork and sending a pull request when you have something you wish to commit. When creating pull requests, please keep the Single Responsibility Principle in mind. A pull request that does a single thing very well is more likely to be accepted.

If you consistently supply code of a high standard, you will eventually be granted Developer rights.

AutoFixture is set for Continuous Integration on http://teamcity.codebetter.com/project.html?projectId=project129&tab=projectOverview. The latest build (including strong names) can be downloaded from there, but Continuous Delivery is also enabled, which means that the latest build is also automatically published on CodePlex and NuGet.

Specifics

Detailed treatments of specific topics can typically be found on ploeh blog as well:

 ploeh blog - AutoFixture News Feed 
Tuesday, January 03, 2012  |  From ploeh blog - AutoFixture
Tuesday, October 25, 2011  |  From ploeh blog - AutoFixture
Tuesday, September 06, 2011  |  From ploeh blog - AutoFixture
Monday, May 16, 2011  |  From ploeh blog - AutoFixture
Monday, May 02, 2011  |  From ploeh blog - AutoFixture
Tuesday, April 19, 2011  |  From ploeh blog - AutoFixture
Tuesday, April 19, 2011  |  From ploeh blog - AutoFixture
Monday, April 18, 2011  |  From ploeh blog - AutoFixture
Tuesday, April 05, 2011  |  From ploeh blog - AutoFixture
Friday, March 18, 2011  |  From ploeh blog - AutoFixture
Tuesday, February 08, 2011  |  From ploeh blog - AutoFixture
Monday, February 07, 2011  |  From ploeh blog - AutoFixture
Monday, November 22, 2010  |  From ploeh blog - AutoFixture
Monday, November 22, 2010  |  From ploeh blog - AutoFixture
Saturday, November 13, 2010  |  From ploeh blog - AutoFixture
Tuesday, October 19, 2010  |  From ploeh blog - AutoFixture
Sunday, October 10, 2010  |  From ploeh blog - AutoFixture
Friday, October 08, 2010  |  From ploeh blog - AutoFixture
Wednesday, August 25, 2010  |  From ploeh blog - AutoFixture
Thursday, August 19, 2010  |  From ploeh blog - AutoFixture
 ploeh blog - AutoFixture News Feed 

Last edited Nov 8 2011 at 7:31 AM by ploeh, version 14

Comments

No comments yet.