# Monday, October 18, 2004

I'm slowly catching up with putting some order in the MbUnit documentation. Therefore, MbUnit has now a Wiki (FlexWiki powered) part of the TestDriven.NET wiki. Feel free to contribute...

http://www.testdriven.net/wiki/default.aspx/MyWiki.MbUnit

posted on Monday, October 18, 2004 5:36:00 AM (Pacific Daylight Time, UTC-07:00)  #    Comments [12]
# Saturday, October 16, 2004

MbUnit has now a basic support for loading fixture and tests based on their names, such fixture are called Naked Fixtures . Although this may look like a step backward in functionality, this can be handy in particular situations. For example, if you don't want to reference any test framework, this is a good solution because it does not require any type or attribute.

Naming rules

  • class name must end with “Fixture“
  • fixture setup method must be named “TestFixtureSetUp“
  • fixture teardown method must be name “TestFixtureTearDown“
  • setup method must be named “SetUp”
  • teardown method must be named “TearDown”
  • test methods must end with “Test”
  • all rules are case sensitive

Limitations

  • [Update: decorators are supported].
  • no combinatorial tests

QuickStart

 Below are two fixture. The first uses attributes and should be familiar to you. The second is it's naked equivalent:

[TestFixture]
public class ClassicFixture
{
    [TestFixtureSetUp]
    public void TestFixtureSetUp()
    {
        Console.WriteLine("TestFixtureSetUp");
    }
    [SetUp]
    public void SetUp()
    {
        Console.WriteLine("SetUp");
    }
    [Test]
    public void First()
    {
        Console.WriteLine("Test1");
    }
    [Test]
    public void SecondTest()
    {
        Console.WriteLine("Test1");
    }
    [TearDown]
    public void TearDown()
    {
        Console.WriteLine("TearDown");
    } 
    [TestFixtureTearDown]
    public void TestFixtureTearDown()
    {
        Console.WriteLine("TestFixtureTearDown");
    }
}

Naked version:

public class NakedFixture
{
    public void TestFixtureSetUp()
    {
        Console.WriteLine("TestFixtureSetUp");
    }
    public void SetUp()
    {
        Console.WriteLine("SetUp");
    }
    public void FirstTest()
    {
        Console.WriteLine("Test1");
    }
    public void SecondTest()
    {
        Console.WriteLine("Test1");
    }
    public void TearDown()
    {
        Console.WriteLine("TearDown");
    }
    public void TestFixtureTearDown()
    {
        Console.WriteLine("TestFixtureTearDown");
    }
}
posted on Saturday, October 16, 2004 10:43:00 PM (Pacific Daylight Time, UTC-07:00)  #    Comments [1]
# Friday, October 15, 2004

TestDrivent.NET, which contains MbUnit, QuickGraph, TestFu and Refly, has gone RC2 .

See http://www.testdriven.net/wiki/default.aspx/MyWiki.DownLoad

 

posted on Friday, October 15, 2004 2:37:00 AM (Pacific Daylight Time, UTC-07:00)  #    Comments [4]
# Thursday, October 14, 2004

Check out this new Reflector addin that creates diffs. Very cool...

http://codingsanity.blogspot.com/2004/10/reflector-diff.html

posted on Thursday, October 14, 2004 5:14:00 PM (Pacific Daylight Time, UTC-07:00)  #    Comments [7]
# Friday, October 08, 2004

PDFizer: A XHTML to PDF converter: with this library, you can transform simple XHTML pages to nice and printable PDF files. This project is based on the excellent webzine article "Pdfizer, a dumb HTML to PDF converter, in C#" written by Jonathan de Halleux.

Cool, my PDFizer project has been resurected. If you are looking for an easy way to convert HTML pages into PDF, you might well be interrested by that one.

posted on Friday, October 08, 2004 9:12:00 PM (Pacific Daylight Time, UTC-07:00)  #    Comments [3]
# Tuesday, October 05, 2004

MutantBuild is the back bone behind TestDriven.NET / MbUnit compilation. Jamie Cansdale has published an installer that will let you play with it. Anybody automating VS.NET solution should have a look at this.

posted on Tuesday, October 05, 2004 1:14:00 PM (Pacific Daylight Time, UTC-07:00)  #    Comments [4]
# Monday, October 04, 2004

Sometimes, a unit test does not fail but does not succeed entirely: making it fail is too extreme and on the other hand, letting him succeed would make you miss the issue. Therefore, MbUnit now supports warnings:

  • A warning can be emited in any test case using Assert.Warning methods,
  • A warning does not make test fail,
  • Warnings are recorded in the test report (in the Html report, they are displayed right after the fixture summary),
  • Multiple warnings can be outputed per test

QuickStart

This fixture shows 2 tests with warnings:

using System;

using MbUnit.Core.Framework;

using MbUnit.Framework;

namespace MbUnit.Demo

{

[TestFixture]

public class WarningTest

{

[Test]

public void Warning()

{

Assert.Warning("Be wary");

}

[Test]

public void Warning2()

{

Assert.Warning("Something weird happened");

}

}

}

The corresponding html report looks like this:

posted on Monday, October 04, 2004 10:42:00 AM (Pacific Daylight Time, UTC-07:00)  #    Comments [3]
# Sunday, October 03, 2004

This is the last entry on my dev box before I pack it and send to the US Do not expect much responsivness during the 2 next weeks until I get it back.

posted on Sunday, October 03, 2004 1:29:00 PM (Pacific Daylight Time, UTC-07:00)  #    Comments [3]
# Friday, October 01, 2004

As you may have already understood it, MbUnit as well as QuickGraph, TestFu and Refly source code have been moved to the TestDriven.NET source control server. This means that the source in the Tigris CVS are outdated!

The reasons why...

There are 4 main reasons for moving to Jamie Cansdale servers. Subversion, TestDriven.NET integration and Continuous integration

1. Subversion

This is not a major reason for leaving tigris, but Subversion is much more handy to use that CVS.

2. TD.NET integration

When developing the MbUnit addin for TestDriven.NET, we faced problems of versioning. This usually meant loosing time synchronizing TD.NET and MbUnit source, etc... Having both sources in the same repository has considerably simplified things.

3. Continuous Integration

This is by far the most important reason for moving MbUnit. The build setup currently running on TD.NET servers uses CC.NET, MSBuild and Wix to compile, execute tests and produce an installer each build. As soon as Jamie fixes his ftp problems , the installer will be uploaded on the web server on each build.

This means that release time for MbUnit will considerably shorten while benefiting from the quality ensurance of continuous integration. Image that you file a bug, it is corrected and you have an updated installer within the day!

 

posted on Friday, October 01, 2004 10:55:00 AM (Pacific Daylight Time, UTC-07:00)  #    Comments [18]
# Thursday, September 30, 2004

MbUnit has been released as part of the new TestDriven.NET build. Please check Jamies blog for the links to the downloads. MbUnit is now compiled using a complex build setup that is described on Jamie's blog.

Change log

  • Assembly loading had problems in the previous version. All should be fixed now,
  • RollbackAttribute is back in a separate assembly (MbUnit.Framework.1.1.dll) compiled against .NET 1.1
  • Added Assembly Dependencies and Fixture dependencies
  • Better TD.NET integration

 

posted on Thursday, September 30, 2004 9:29:00 PM (Pacific Daylight Time, UTC-07:00)  #    Comments [2]