Search code examples
testingframeworksnunitmbunitxunit

Can someone help distinguish xUnit, nUnit, mbUnit from each other?


What distinguishes xUnit, nUnit,and mbUnit from each other? So far from what I can see, out-of-the-box mbUnit offers parallel test, xUnit offers an easy way to mix, reuse, and match multipe fixtures for any number of testing classes.

So far I can't find anything that makes nUnit special.

So can someone help distinguish the these testing frameworks from each other?


Solution

  • What I ended up discovering is that out of the box, NUnit offered more options and plug-ins, such as PNunit for parallel testing and another plug-in for performance testing where xunit/mbunit lacked all or some of these features.

    I also discovered NUnit has extension points, which follows the open-close principle and allows for extending the behavior of NUnit without modifying the source code, and thus it is upgradeable for future NUnit releases. Where as with XUnit, I would have to modify the source and thus it would make it a major pain point to upgrade my version if XUnit released something cool later on.

    Thus I came to the decision that NUnit is the superior automation framework test runner. I didn't consider NUnit since it is not open source.