---
title: "Unit Testing (Blog category)"
url: "https://osherove.com/blog/category/unit-testing.md"
canonical: "https://osherove.com/blog/category/unit-testing"
tags: []
author: "Roy Osherove"
description: "Roy Osherove: author of The Art of Unit Testing and Elastic Leadership. Consulting and training on unit testing, TDD, team leadership, Co-Ops and continuous delivery, plus 20 years of blog posts."
usage: "Licensed under CC BY 4.0 — reuse, quote and adapt with attribution (Roy Osherove, link to the original page)."
license: "https://creativecommons.org/licenses/by/4.0/"
---

# Unit Testing (Blog category)

Roy Osherove: author of The Art of Unit Testing and Elastic Leadership. Consulting and training on unit testing, TDD, team leadership, Co-Ops and continuous delivery, plus 20 years of blog posts.

HTML: https://osherove.com/blog/category/unit-testing · 161 linked entries (each is plain Markdown) · Site index: [llms.txt](https://osherove.com/llms.txt)

- [What's new and Changed in the Art of Unit Testing 2nd Edition](https://osherove.com/blog/2014/10/25/whats-new-and-changed-in-the-art-of-unit-testing-2nd-edition.md) (2014-10-25): I still get called out for some things I wrote in the first edition published in 2009. Some people might not be aware there is a 2nd edition out there, or are borrowing old copies. Lots has changed in my thinking about…
- [Should you write unit tests or integration tests?](https://osherove.com/blog/2014/7/11/should-you-write-unit-tests-or-integration-tests.md) (2014-07-11): I got this question in the mail. I thought it was quite valid for many other people: Question: Trying to promote unit tests in a new work place: the “search” action from the UI goes through IOC container which calls a…
- [Video - Refactoring and Design Skills for Test Driven Development](https://osherove.com/blog/2013/10/14/video-refactoring-and-design-skills-for-test-driven-developm.md) (2013-10-14): Last week I presented a keynote and a talk at the London Software Architect conference. Here is the video I recorded from my laptop during my talk about refactoring. I hope you find it useful. Play video Refactoring and…
- [Ugly Code Means Your Product Used to be Successful](https://osherove.com/blog/2013/6/4/ugly-code-means-your-product-used-to-be-successful.md) (2013-06-04): I have now worked at a bunch of companies, and consulted for quite a few. I have looked at some pretty horrible code. Every company I visit with say the same thing: “Yeah, but our code really sucks. “ It does not suck…
- [April 18: Refactoring and Design Skills for Test Driven Development Workshop](https://osherove.com/blog/2013/4/11/april-18-refactoring-and-design-skills-for-test-driven-devel.md) (2013-04-10): When? April 18-19 Where? Oslo How much? 11,900 NOK How to register? Send me an email. The Problem You have been trying to learn TDD, and it’s going pretty well, but your code looks horrible. Your design skills are…
- [Acceptance Frameworks Vs. Specification APis](https://osherove.com/blog/2013/3/29/acceptance-frameworks-vs-specification-apis.md) (2013-03-29): I see two forms of ‘BDD’ tools floating in the wild. The first form, let`s call it ‘deep BDD’ for now, requires you to go through a special langauge filter, before translating it with special adapters into executable…
- [Using System.Transactions.TransactionScope to Rollback Database changes under an integration test](https://osherove.com/blog/2013/3/28/using-systemtransactionstransactionscope-to-rollback-databas.md) (2013-03-28): It has been several years since I came up with the idea of database rolled back tests based on com+ transactions, which later became ServicedComponent tests, which later became TransactionScope aided tests. At some…
- [Video: (part 8 - The big Refactoring) TDD Pairing a Go Game Engine](https://osherove.com/blog/2012/7/13/video-part-8-the-big-refactoring-tdd-pairing-a-go-game-engin.md) (2012-07-12): In this video (all the sessions are here ), Raymond and I do a refactoring of the code, to something we like much more. We end up with code we can be more proud of, and the comtinued feedback of the tests helps us do…
- [Video: (part 7 - The bug that wouldn't die) Go Game Engine with TDD and Pair Programming](https://osherove.com/blog/2012/7/9/video-part-7-the-bug-that-wouldnt-die-go-game-engine-with-td.md) (2012-07-09): In our continuing series of TDD pairing videos , Raymond and I meet again to continue where we left off. Where we left off was not a good place - we had bugs in the logic of our test code that we hunted down in the last…
- [Faking static methods in Moq, FakeItEasy and NSubstitute might be closer than imagined](https://osherove.com/blog/2012/7/8/faking-static-methods-in-moq-fakeiteasy-and-nsubstitute-migh.md) (2012-07-08): Update : the version that works with .net 4.0 is here (link to InjecttionExample3.zip in that page). the examples from the link below work in .net 3.5 and under. While I was doing my TDD course at Soluto this week, One…
- [Video: (part 6 - Total n00b mistakes) Go Game Engine with TDD and Pair Programming](https://osherove.com/blog/2012/7/5/video-part-6-total-n00b-mistakes-go-game-engine-with-tdd-and.md) (2012-07-05): If you calculate by hours, this might be called “the first session of the 2nd day” of Raymond and me working together. This was by far the most frustrating one of the 6 we’ve had so far. all the other sessions are here…
- [Video: (part 5 - A Test DSL) Go Game Engine with TDD and Pair Programming](https://osherove.com/blog/2012/7/2/video-part-5-a-test-dsl-go-game-engine-with-tdd-and-pair-pro.md) (2012-07-02): In this session we start writing some tests that don’t fail first, and we don’t understand why. So we take some time to make a testing DSL, so that our tests will be more readable, and also easier to write. We also…
- [Refactoring Dillema Video: (part 4) Building a Go Game Engine with TDD and Pair Programming](https://osherove.com/blog/2012/6/29/refactoring-dillema-video-part-4-building-a-go-game-engine-w.md) (2012-06-29): In this video ( the rest are here ) we focus on refactoring, and we try out the strategy pattern. We end up not being sure how well it worked out for the future, but we’ll see how things unfold in the next parts. We…
- [Video: (part 3) Building a Go Game Engine with TDD and Pair Programming](https://osherove.com/blog/2012/6/28/video-part-3-building-a-go-game-engine-with-tdd-and-pair-pro.md) (2012-06-28): Another good hour of pairing with Raymond Lim yesterday. This time we continue by adding more sub-features to the “GetWinner” feature, and discover a bug in the process. As usual, you can find all the videos of our…
- [Video: (part 2c) Building a Go Game Engine with TDD and Pair Programming](https://osherove.com/blog/2012/6/28/video-part-2c-building-a-go-game-engine-with-tdd-and-pair-pr.md) (2012-06-27): In this final part, Raymond and I finish a big refactoring. First, we fail. then we back up and start moving slowly again.Finally, we succeed. Our tests save our asses in the process. Play video TDD and Pairing Session…
- [Video: Part 2b : TDD and Pairing on a go engine with Raymond Lim](https://osherove.com/blog/2012/6/27/video-part-2b-tdd-and-pairing-on-a-go-engine-with-raymond-li.md) (2012-06-27): Here’s the 2nd part of three total, of my second session with Raymond going through building a Go game engine from scratch. I’ve put the whole list of continually updating videos on this Go game over here , so you can…
- [The future of Isolation frameworks, and how Moq isn't it (for now)](https://osherove.com/blog/2012/6/27/the-future-of-isolation-frameworks-and-how-moq-isnt-it-for-n.md) (2012-06-26): In a past post I hinted that I think Moq is not a part of the future of isolation frameworks. Here’s where I get to explain why. To be clear, it is a really valuable, widely used framework, and it helped change the…
- [Video: (part 2a) Building a Go Game Engine with TDD and Pair Programming](https://osherove.com/blog/2012/6/26/video-part-2a-building-a-go-game-engine-with-tdd-and-pair-pr.md) (2012-06-26): I’ve put the whole list of continually updating videos on this Go game over here , so you can watch them form the beginning. There is still much to do, but this is starting to get fun! In this 30 minutes video, Raymond…
- [FakeItEasy or NSubstitute? Which should I use for samples in art of unit testing 2nd edition?](https://osherove.com/blog/2012/6/26/fakeiteasy-or-nsubstitute-which-should-i-use-for-samples-in.md) (2012-06-26): In my upcoming 2nd edition of art of unit testing , I’ve decided not to use RhinoMocks (too old and stuck in the past), or Moq (although widely used, I think it represents the past, not the future) for examples of an…
- [Video: (part 1) Building a Go Game Engine with TDD and Pair Programming](https://osherove.com/blog/2012/6/25/video-part-1-building-a-go-game-engine-with-tdd-and-pair-pro.md) (2012-06-24): I’ve put the whole list of continually updating videos on this Go game over here , so you can watch them form the beginning. A few days ago, a guy named Raymond Lim sent me an email with some questions about how to do…
- [File System Wrappers for Unit Testing in C#](https://osherove.com/blog/2012/5/16/file-system-wrappers-for-unit-testing-in-c.md) (2012-05-16): I’ve asked this on twitter, and here’s what I got: System.IO.Abstractions (looks pretty deep) SystemWrapper (I’m not crazy about the file system being used as a mock API) Something older I’d take a look at the first on…
- [Test Driven Validation Logic with Extract & Override](https://osherove.com/blog/2012/5/16/test-driven-validation-logic-with-extract-override.md) (2012-05-16): In the NerdDinner project, there’s this amazing test (see the bottom, second one). There are so many things wrong here: What is exactly correct about these properties? Many magic values Multiple tests in a single test…
- [Test Naming Conventions With Unit of Work](https://osherove.com/blog/2012/5/15/test-naming-conventions-with-unit-of-work.md) (2012-05-15): When I name my tests I use the name of the “ unit of work ” as the first part. If the unit of work is bigger than a method, I usually name the test with the name of the initial public method that starts the unit of…
- [What does the 'unit' in 'unit test' mean?](https://osherove.com/blog/2012/5/15/what-does-the-unit-in-unit-test-mean.md) (2012-05-15): I used to think it was a method. Then I thought it coule be several methods. then I thought it might be several classes. then I realized it changes all the time. It means “unit of work”. A unit of work is a use case in…
- [Free event and 5 day TDD masterclass in Copenhagen this month](https://osherove.com/blog/2011/10/6/free-event-and-5-day-tdd-masterclass-in-copenhagen-this-mont.md) (2011-10-06): Hi all. Two things to announce: TDD Master Class: If you’re in or near Copenhagen this month, and are interested in joining my 5 day TDD master class in .NET, you can learn more about it here . This is the only time…
- [Why MSTest is the IE6 of unit test frameworks](https://osherove.com/blog/2011/8/24/why-mstest-is-the-ie6-of-unit-test-frameworks.md) (2011-08-24): Someone asked me by email a couple of weeks ago, whether I still think NUnit is better than MSTest. I had two weeks to think about this before having enough time to write this. keep in mind, I posted pretty much the…
- [New TDD Kata - Interactions](https://osherove.com/blog/2011/5/23/new-tdd-kata-interactions.md) (2011-05-23): Here's a new TDD kata that's a bit more advanced than String Calculator , and requires the use of mocks and stubs to complete. I've been using it in the past 10 or so classes I've had with great impressions of how…
- [Free TDD Class Seat in March - Here's How](https://osherove.com/blog/2011/2/23/free-tdd-class-seat-in-march-heres-how.md) (2011-02-23): After much debating , here’s how you can win a free seat for my two day TDD in .NET class in London Next month (you get full free entry - but does not include flight\hotel! ) Write a blog post that details (in text,…
- [Want a free seat for my TDD class in march? Propose a challenge.](https://osherove.com/blog/2011/2/21/want-a-free-seat-for-my-tdd-class-in-march-propose-a-challen.md) (2011-02-21): In a few weeks I will be giving a full two day TDD class in .NET, in London, at the SkillsMatter facilities . To celebrate the first course ever that I am doing “alone” (without any host organizing things for me), I’m…
- [Video: how to do test reviews](https://osherove.com/blog/2011/2/6/video-how-to-do-test-reviews.md) (2011-02-06): Last year I did a talk at Oredev, showing examples of how I go over various pieces of open source projects, and what I look for when I review other people’s unit tests. The full video is here .
- [Test Driven Source Control–Safe Points](https://osherove.com/blog/2011/2/2/test-driven-source-controlndashsafe-points.md) (2011-02-02): Having worked quite a bit now with Git and Mercurial, and tests, I got an interesting idea. An addin that runs inside your favorite IDE, and listens to test related events. Every time the test suite is finished running,…
- [2 day TDD workshop in London, UK - March 2011](https://osherove.com/blog/2010/11/30/2-day-tdd-workshop-in-london-uk-march-2011.md) (2010-11-30): During March, right before QCON, I’ll be hosting a 2 day intense TDD workshop in London, UK . It’s in C#. I’m still looking for the right place to host it in, but it will be in London, that’s for sure! It’s the first…
- [Join me for a live webinar on unit testing with Isolator++ this thursday](https://osherove.com/blog/2010/10/18/join-me-for-a-live-webinar-on-unit-testing-with-isolator-thi.md) (2010-10-18): In three days, this Thursday , I’ll be giving a half hour online webinar on our latest product, Isolator++ and some usage patterns with it on C++ code. I might even do a little song in honor of C++ – still need to…
- [What’s coming in Test Lint 1.5](https://osherove.com/blog/2010/10/14/whats-coming-in-test-lint-15.md) (2010-10-14): Test Lint is an “as you type” parser that detects common readability, maintainability and trust anti-patterns in your unit tests. the addin for VS is free . there is also a command line version that you can use in your…
- [Announcing Isolator++, and closing a TDD circle](https://osherove.com/blog/2010/10/14/announcing-isolator-and-closing-a-tdd-circle.md) (2010-10-14): Last week I closed one little circle in my consulting life: The company I work at released Isolator++ – a truly powerful, and yet simple, Isolation framework for C++, that makes unit testing in C++ feel as easy as unit…
- [A customer switches to MOQ – and I’m happy](https://osherove.com/blog/2010/9/29/a-customer-switches-to-moq-and-im-happy.md) (2010-09-29): a few days ago, we got into an interesting email conversation with a person in a large company, who had purchased isolator a while ago. Our customer lieason sent me this person’s recent response to the “how are things…
- [Unit Testing in C++ is harder than..](https://osherove.com/blog/2010/9/6/unit-testing-in-c-is-harder-than.md) (2010-09-06): Unit Testing in C++ – it’s even harder than Inidian Pole Gymnastics Video unavailable (the original video has been removed from YouTube). I mean seriously - CPPUnit is the devil. What kind of test framework do you use…
- [Two different ways to create bad logic in unit tests](https://osherove.com/blog/2010/8/14/two-different-ways-to-create-bad-logic-in-unit-tests.md) (2010-08-14): we’re adding more rules to Test Lint, these days, and one of them is called “Production Logic in Test”. It is quite different, and I think even more dangerous than the existing rule “Logic in Test” – because it talks…
- [Notes from a TDD masterclass](https://osherove.com/blog/2010/7/23/notes-from-a-tdd-masterclass.md) (2010-07-23): another TDD masterclass is done , and this time it was Munich! Lovely people, and smart programmers :) made a few changes this time – had an excersice about doing automated builds and CI, removed rhino mocks and added a…
- [Introducing QuickUnit](https://osherove.com/blog/2010/3/24/introducing-quickunit.md) (2010-03-24): A friend of mine, Ariel, just finished up his latest project, in the unit testing world – called QuickUnit . From the site: QuickUnit significantly reduces the time needed to design and generate high-quality unit tests.…
- [Code excavations, wishful invocations, perimeters and domain specific unit test frameworks](https://osherove.com/blog/2010/3/19/code-excavations-wishful-invocations-perimeters-and-domain-s.md) (2010-03-19): One of the talks I did at QCON London was about a subject that I’ve come across fairly recently , when I was building SilverUnit – a “pure” unit test framework for silverlight objects that depend on the silverlight…
- [Introducing Typemock Test Lint](https://osherove.com/blog/2010/3/7/introducing-typemock-test-lint.md) (2010-03-07): We just released a new, free product - Typemock Test Lint, click here for all the gory details . It’s a just-in-time unit testing coach that looks at your code as you type and looks for common unit testing errors. Or,…
- [NUnit vs. MsTest: NUnit wins for Unit Testing.](https://osherove.com/blog/2010/3/5/nunit-vs-mstest-nunit-wins-for-unit-testing.md) (2010-03-05): People are still wondering what are the differences between the two most popular unit testing frameworks in the .NET world: the open source NUnit and the commercial MsTest). Here’s a short list of what i remember…
- [Inhibiting design tooling and sex education](https://osherove.com/blog/2010/2/13/inhibiting-design-tooling-and-sex-education.md) (2010-02-13): during a reply to a thread about design for testability , Pat Maddox wrote something interesting about how the inherent testability in Ruby still does not make up for the lack of design skills: “ Too often I'm finding…
- [Unit Testing Biztalk : Two possible frameworks](https://osherove.com/blog/2010/1/12/unit-testing-biztalk-two-possible-frameworks.md) (2010-01-12): BizTalk is notoriously hard to test. But I just came a cross a couple of interesting solutions to do unit testing for biztalk related logic and orchestration. BizMock : “BizMock is a framework for testing BizTalk…
- [TDD: 4 questions that will help you create the simplest thing that could possibly work](https://osherove.com/blog/2010/1/6/tdd-4-questions-that-will-help-you-create-the-simplest-thing.md) (2010-01-06): Today in class I got to understand, for the first time, what I define as “the simplest thing that could possibly work” when doing TDD. Many people struggle with the idea of simplicity. the idea of doing things to the…
- [Brown, Green, Refactor](https://osherove.com/blog/2009/12/31/brown-green-refactor.md) (2009-12-31): Having seen enough crappy unit tests to last me a lifetime, I think there should be a parallel to the old “ red-green-refactor ” (from TDD) – it’s evil twin brother should be “ Brown-Green-Refactor ” wherin you’d do a…
- [Comments on Corey Haines’ String Calculator TDD Kata Implementation](https://osherove.com/blog/2009/12/23/comments-on-corey-haines-string-calculator-tdd-kata-implemen.md) (2009-12-23): Corey Haines recreated my TDD Kata on his KataCasts blog. ( click here to learn more about TDD katas ) Since Corey is an experienced TDD practitioner I was honored that he’d given it a go, and was eager to see the…
- [TDD Master class in Vienna, January 18](https://osherove.com/blog/2009/11/30/tdd-master-class-in-vienna-january-18.md) (2009-11-30): Hi All. If you live in or near Vienna, i hope you'll find interest in the course that I am giving there: A five day TDD master class in Vienna, on January 18th here's what students of this course had to say after…
- [Test driven design – Willed vs. Forced Designs](https://osherove.com/blog/2009/11/12/test-driven-design-willed-vs-forced-designs.md) (2009-11-12): I’m writing this as a typemock employee, but also as someone who has sat on the other side of the line for several good years, and can argue in both ways. The following, I feel, is true no matter where I work. There are…
- [TypeMOQ API](https://osherove.com/blog/2009/10/23/typemoq-api.md) (2009-10-23): I was fiddling around with the typemock API, see what it would belike to use it in a more MOQ like manner: to support this, all the code you need, including the Faker class exists here . you’d need to reference the…
- [Introducing Typemock IntelliTest](https://osherove.com/blog/2009/10/18/introducing-typemock-intellitest.md) (2009-10-18): We just released the latest version (5.4.2) of Typemock Isolator, with one cool Addon built in - Typemock Intellitest . what’s it about? in one word: productivity. Here's what it does: Play video Typemock Isolator…
- [Test Review: MEF](https://osherove.com/blog/2009/10/17/test-review-mef.md) (2009-10-17): it’s late at night, and my new baby just went to sleep, again. Time for another test review! (you can find other test reviews here ) Video unavailable (the original video has been removed from Vimeo). Test Review - MEF…
- [Poll: Which mocking\\isolation framework do you use?](https://osherove.com/blog/2009/9/30/poll-which-mockingisolation-framework-do-you-use.md) (2009-09-30): Time for the bi-annual frameworks poll!
- [Unit Test Definition 2.0](https://osherove.com/blog/2009/9/28/unit-test-definition-20.md) (2009-09-28): Update: added the difference from integration tests at the end of the post. Here’s my latest definition of what a unit test is: A unit test is a fast, in-memory, consistent, automated and repeatable test of a functional…
- [Nightly build wins again](https://osherove.com/blog/2009/7/25/nightly-build-wins-again.md) (2009-07-25): Here’s an email message the dev lead at our company sent out tonight: “Hi, I analyzed the nightly build failure - it broke because of an examples test that tests recursive fakes, and incidentally uses WhenCalled() on a…
- [Minimizing unit Test Fragility – 8 features in Typemock Isolator to help](https://osherove.com/blog/2009/7/9/minimizing-unit-test-fragility-8-features-in-typemock-isolat.md) (2009-07-09): in continuation to my challenge (which no one had bothered answering, lazy web!) One of the things that inhibits unit tests in organizations is the idea of fragile tests. a Fragile test is a test that can easily break…
- [Preventing fragile tests – how can isolation frameworks help or hinder your goal?](https://osherove.com/blog/2009/7/9/preventing-fragile-tests-how-can-isolation-frameworks-help-o.md) (2009-07-09): One of the things that inhibits unit tests in organizations is the idea of fragile tests. a Fragile test is a test that can easily break when the production code changes. That’s not to say that tests should never break…
- [Art of Unit Testing on Hanselminutes](https://osherove.com/blog/2009/7/7/art-of-unit-testing-on-hanselminutes.md) (2009-07-07): Scott Hanselman took me in for a 30 minute interview about Unit Testing Dos and Don’ts in his podcast, Hanselminutes. It was a pleasure, and I hope to be there once more about other topics. Maybe in TechEd Berlin.. Have…
- [TDD Master Class almost full](https://osherove.com/blog/2009/6/25/tdd-master-class-almost-full.md) (2009-06-25): My upcoming TDD Master class in Oslo, Norway, during august, has only a few seats left. I heard from several people at NDC that they are planning to sign up, so I’d suggest they hurry up . This class is a 5 day pair…
- [SilverUnit Project Template and new version](https://osherove.com/blog/2009/5/23/silverunit-project-template-and-new-version.md) (2009-05-23): SilverUnit 0.5 has been released with some speed optimizations, as well as binary reference to the latest Typemock version 5.3.0. If you don’t know what it is, SilverUnit aims to allow true unit testing of silverlight…
- [Testing that an event was raised](https://osherove.com/blog/2009/5/23/testing-that-an-event-was-raised.md) (2009-05-23): This question keeps coming up: “How can I test that an event was actually raised from my class under test?” actually, there is an easy way to check if an event was raised. you subscribe to the event in your test, and in…
- [DateTime.LastYear](https://osherove.com/blog/2009/5/22/datetimelastyear.md) (2009-05-22): Oh, didn’t I mention we can now fake DateTime.Now in unit tests ?
- [Art Of Unit Testing (The Samurai Book)– Get it now, it’s done.](https://osherove.com/blog/2009/5/20/art-of-unit-testing-the-samurai-book-get-it-now-its-done.md) (2009-05-20): The time has actually come. After 2.5 years, and two kids, my book is finally done and is available in full form as an EBook. at the end of the month it will be in print form. Now would be the time to get it, when it is…
- [Preview: Placeholder arguments and custom argument checkers](https://osherove.com/blog/2009/4/2/preview-placeholder-arguments-and-custom-argument-checkers.md) (2009-04-02): here is a glimpse of the feature the guys are working on at the moment. I call it “Placeholder Arguments”. It’s a variation of the “how do you allow the user to check parameters passed to a method?” question when…
- [Test Review #3 – Unity](https://osherove.com/blog/2009/3/23/test-review-3-unity.md) (2009-03-22): Watch previous videos: Test Review #1 – NerdDinner Test Review #2 – ASP.NET MVC //TestReviewUnity.mp4 In this video I go over the tests for Microsoft Unity Application Block. Overall the quality of the tests in Unity is…
- [Test Review #2 – ASP.NET MVC Unit Tests](https://osherove.com/blog/2009/3/21/test-review-2-aspnet-mvc-unit-tests.md) (2009-03-21): See other reviews: Review #1: NerdDinner Here’s the second video review of Unit Tests. This is another one written by Microsoft – ASP.NET MVC ( source ). First, it’s important to state how surprised I was by the high…
- [Test Review #1 - NerdDinner](https://osherove.com/blog/2009/3/20/test-review-1-nerddinner.md) (2009-03-20): I’ve decided to start doing some test reviews of tests that I see in the wild. I figured it’s the best way to show people what I mean when I say they do not have readable, maintainable or trustworthy tests. The first…
- [What Isolation\\Mocking and unit testing framework are you using?](https://osherove.com/blog/2009/3/9/what-isolationmocking-and-unit-testing-framework-are-you-usi.md) (2009-03-09): It’s time to re-examine where things stand in our little niche. This should be interesting, if enough people answer – so please answer (you need flash). Embedded Flash media from the original post is no longer playable.…
- [Unit Testing in VB.NET – with Typemock Isolator (with a free license offer)](https://osherove.com/blog/2009/1/13/unit-testing-in-vbnet-with-typemock-isolator-with-a-free-lic.md) (2009-01-13): A move I’ve been pushing for a while now has finally come through today – Helping to bring unit testing into VB.NET. This is something I strongly believe in: VB has been kind of left behind with the range of latest…
- [Unit Testing in silverlight land with Typemock Isolator](https://osherove.com/blog/2008/12/27/unit-testing-in-silverlight-land-with-typemock-isolator.md) (2008-12-27): I’ve been asked quite a lot recently whether one can write unit tests and isolate logical code that runs inside a silverlight application. Up until today my initial answer was ‘no’ because silverlight runs under…
- [lowering the adoption barrier for unit testing: doctest in python](https://osherove.com/blog/2008/12/3/lowering-the-adoption-barrier-for-unit-testing-doctest-in-py.md) (2008-12-03): One area that I didn’t know about was brought to me by an attendee in one of the conferences I was in. It’s a simple idea, really: write the tests for a method as part of the method’s documentation. but make them…
- [Isolation frameworks – lessons from the wild](https://osherove.com/blog/2008/12/3/isolation-frameworks-lessons-from-the-wild.md) (2008-12-03): I’m in the process of teaching another TDD master class in Oslo this week, and in the past two days we went over the major Isolation frameworks in .NET (I refuse to say Mocking frameworks anymore. the “Mock” work is too…
- [Isolation Syntax for VB.NET - Your comments please](https://osherove.com/blog/2008/11/26/isolation-syntax-for-vbnet-your-comments-please.md) (2008-11-26): I'm working on adding a VB.NET Friendly syntax for Typemock Isolator. If you're into VB, I'd love your input on the usability of this API and how to make it better. We'll start going through several basic scenarios that…
- [Isolator Feature Focus: Faking Collections](https://osherove.com/blog/2008/11/2/isolator-feature-focus-faking-collections.md) (2008-11-02): Another cool feature in Isolator is the ability to fake values that will be returned from custom collections (anything that inherits from IEnumerable as long as it is not in mscorlib - for example - sharepoint lists).…
- [Isolator Feature Focus: Duck Typing and Isolate.Swap](https://osherove.com/blog/2008/11/2/isolator-feature-focus-duck-typing-and-isolateswap.md) (2008-11-02): Typemock Isolator 5.1.1 has been released, and this release brings with it some awesome (seriously) features that are unique fro any other framework I've seen. a good overview of features can be found here . The…
- [SharpMock 0.1 ?](https://osherove.com/blog/2008/10/12/sharpmock-01.md) (2008-10-12): James, I would love to see you take the idea of “SharpMock” to the next level . If not anything else, it would be an interesting challenge to write about. James took PostSharp and started looking at the possibility of…
- [Art Of Unit Testing – Book done, Wiki ready](https://osherove.com/blog/2008/10/11/art-of-unit-testing-book-done-wiki-ready.md) (2008-10-11): I’m happy to report that my book has finally hit the “last review” stone, which means all chapters are done and the book should be in book stores around jan-feb 2009 . If you’d like to read the E-Book version right…
- [Isolator feature focus: Recursive Fakes](https://osherove.com/blog/2008/10/4/isolator-feature-focus-recursive-fakes.md) (2008-10-04): Here’s another feature Typemock Isolator has that no one else currently has: the ability to return fake objects from properties recursively (without the use of an auto mocking container for such a feat). this saved a…
- [Isolator feature focus: Live objects in unit tests](https://osherove.com/blog/2008/10/1/isolator-feature-focus-live-objects-in-unit-tests.md) (2008-10-01): Here is one feature that sets Typemock Isolator apart from all the other frameworks, that has nothing to do with legacy code: Live Objects. This feature allows you to just “new” up an instance of an object, if you can,…
- [Finding Deadlocks with ReaderWriterLock and Typemock Racer](https://osherove.com/blog/2008/9/4/finding-deadlocks-with-readerwriterlock-and-typemock-racer.md) (2008-09-04): This feature was just added to the Racer Alpha . Given the following method: Can you see a potential for deadlock in this method? Here’s the answer . I wonder if it will find this one as well ..
- [Typemock Isolator with AAA syntax](https://osherove.com/blog/2008/7/24/typemock-isolator-with-aaa-syntax.md) (2008-07-24): We've just posted a preview of the next Isolator API coming out in august. It is AAA-style (Arrange, act, assert) and has many changes. We need your input so head on over, read it and tell us your thoughts . This is the…
- [Over Specification in Tests](https://osherove.com/blog/2008/7/12/over-specification-in-tests.md) (2008-07-12): I've gotten the chance to visit and consult various companies and I see this all the time: Over specification in tests, especially when doing mocks and stubs . One main reason for that is that people use their stub as a…
- [A sneak Preview of Typemock Racer : Thread Deadlock Finder](https://osherove.com/blog/2008/7/8/a-sneak-preview-of-typemock-racer-thread-deadlock-finder.md) (2008-07-08): Here's a sneak preview of the upcoming Typemock Racer product, which I'm currently working on. We should be out in private CTP in a couple of weeks I hope. Typemock Racer tries to solve one huge problem for developers…
- [Is Moq too poweful?](https://osherove.com/blog/2008/7/6/is-moq-too-poweful.md) (2008-07-06): It's interesting to see the other mocking frameworks as they grow into maturity. Especially Moq which has been getting loads of new features recently. The latest one is something which makes me feel a bit weird after…
- [Introducing Depender - Testability Problem Finder](https://osherove.com/blog/2008/7/5/introducing-depender-testability-problem-finder.md) (2008-07-05): Update : Here's how you can extend Depender with your own dependency rules Depender is a tool that I created to illustrate several concepts both for my book and both for my training classes. I think it should prove…
- [Typemock Isolator 4.3 and future syntax](https://osherove.com/blog/2008/7/3/typemock-isolator-43-and-future-syntax.md) (2008-07-03): We just released Typemock Isolator 4.3 ( here is the blog post with details ). It's an awesome product but I envy the speed and ease with which oren can change his syntax (it's nice to work alone!) . I can tell you that…
- [Over-testable systems, and mocks as bad test smells](https://osherove.com/blog/2008/7/3/over-testable-systems-and-mocks-as-bad-test-smells.md) (2008-07-03): This is an interesting problem I've been running into at work. Sometimes we would try to write a test against the system or a component and we would literally have too many choices of how to write it or where to…
- [Unit testing vs. Integration Testing : The Restaurant Analogy](https://osherove.com/blog/2008/5/31/unit-testing-vs-integration-testing-the-restaurant-analogy.md) (2008-05-31): Here's an analogy I came up with to explain the difference between unit tests and integration tests. Imagine going to a restaurant with a bunch of your friends. there are some couples there as well as singles. At the…
- [Two Faced Commits - how the ALT.NET Community is becoming more and more dogmatic](https://osherove.com/blog/2008/5/19/two-faced-commits-how-the-altnet-community-is-becoming-more.md) (2008-05-19): disclaimer: I work at Typemock. There is a big trend I am starting to notice in the "Advanced" unit testing community. That trend feels more and more like hypocrisy. Take Daniel's post about mocking statics without…
- ["Swapping" instead of "Injecting" calls between classes](https://osherove.com/blog/2008/5/17/quotswappingquot-instead-of-quotinjectingquot-calls-between.md) (2008-05-17): Eli Lopian, Typemock CEO and awesome Coder, just created a nice little API wrapper around Typemock Isolator that would allow a very simple and readable "Swapping" effect between classes. It would allow you to write code…
- [Typemock Isolator 4.2.4 is out](https://osherove.com/blog/2008/5/15/typemock-isolator-424-is-out.md) (2008-05-15): Typemock Isolator 4.2.4 is out with some important fixes . More information here .
- [NullObject.For<T> - As simple as it gets, but no simpler](https://osherove.com/blog/2008/5/10/nullobjectforlttgt-as-simple-as-it-gets-but-no-simpler.md) (2008-05-10): This NullObject Factory from Paul is very nice, simple and clean in its design. I really like it and I can see many uses for it, in parallel with working with your standard mocking framework or IoC Container…
- [Pros and Cons and of using an Auto Mocking container in your tests](https://osherove.com/blog/2008/4/25/pros-and-cons-and-of-using-an-auto-mocking-container-in-your.md) (2008-04-25): In regards to my post about injecting mocks and stubs using a container in your tests, Dave asks in the comments: Why would you want to do this in the first place? Here are the things I can think about right now (pros…
- [Testing XML serialization attributes](https://osherove.com/blog/2008/4/24/testing-xml-serialization-attributes.md) (2008-04-24): Not sure how I feel about this particular brand of testing syntax . still, it's good that someone thought this problem through - testing xml serialization attributes. [via the morning brew ]
- [Injecting Typemock Stubs and Mocks using the StructureMap container in a unit test](https://osherove.com/blog/2008/4/24/injecting-typemock-stubs-and-mocks-using-the-structuremap-co.md) (2008-04-24): Someone asked for examples of how you'd inject stubs and mocks when you'd like your object under test to use a container such as StructureMap . here are a couple of simple tests to show this using Typemock Isolator .…
- [Creating a AutoMockingContainer with Microsoft Unity - Pretty darn simple.](https://osherove.com/blog/2008/4/14/creating-a-automockingcontainer-with-microsoft-unity-pretty.md) (2008-04-14): updated : made container more readable Just created a little Auto Mocking Container built on Microsoft Unity. It was very very simple. here's a test that uses it. We tell the container to Returna stub for T because we…
- [Testing loops?](https://osherove.com/blog/2008/3/9/testing-loops.md) (2008-03-09): Tommy writes in on my book forum : " Hi, This is an real world example method where I'm confused how to unit test. ------------------8<------------------- public List<RuleDescription> PrepareCandidates(RuleDescription…
- [Testing ASP.NET MVC Controllers with Typemock Isolator](https://osherove.com/blog/2008/3/9/testing-aspnet-mvc-controllers-with-typemock-isolator.md) (2008-03-09): Scott Hanselman posted his notes and slides (and movies!) from his talk on the ASP.NET MVC framework, where he also mentioned and shows how he's write unit tests for the MVC framework in ASP.NET. Scott has examples both…
- [What is a good example of unit test over specification?](https://osherove.com/blog/2008/3/1/what-is-a-good-example-of-unit-test-over-specification.md) (2008-03-01): I'm working on chapter 8 of my upcoming book and I need to come up with a good example of over specification in unit tests, that leads to an unmaintainable test in the long run (fragile test). I have my ideas on how to…
- [Ad hoc Unit Tests with Snippet Compiler](https://osherove.com/blog/2008/2/21/ad-hoc-unit-tests-with-snippet-compiler.md) (2008-02-21): If you're a fan of snippet compiler (if you're not you should seriously check it out)Travis Illig published a little template for writing Typemock Isolator test inside this handy little tool. the reasons you'd need a…
- [Future of Mock Frameworks: AEIS - Abstract Expectations & Isolation Syntax](https://osherove.com/blog/2008/2/14/future-of-mock-frameworks-aeis-abstract-expectations-amp-iso.md) (2008-02-14): As I was looking back and forward on the changing syntax of testing and mock frameworks, it occurs to me that there are still things that need to be solved in the mocking space. many things. It's hard to choose a…
- [Research Finds TDD Boosts Developer Productivity](https://osherove.com/blog/2008/1/25/research-finds-tdd-boosts-developer-productivity.md) (2008-01-25): Thanks to Haacked for posting this one . I haven't yet read it fully, but this IEEE paper shows good results when doing test-first development vs. other methods. "We found that test-first students on average wrote more…
- [Video: Typemock Basics - Lesson 1 (Dependency breaking 101)](https://osherove.com/blog/2008/1/21/video-typemock-basics-lesson-1-dependency-breaking-101.md) (2008-01-21): Jeremy said he didn't see Typemock examples anywhere, so Here's a short 10 minute screencast I made that shows off some basic features in Typemock, when working with legacy code. it shows off the two possible syntaxes…
- [The Case For Typemock](https://osherove.com/blog/2008/1/20/the-case-for-typemock.md) (2008-01-20): I just wrote an email to someone regarding Typemock . We were discussing why they don't think Typemock holds the values that other mocking frameworks hold when I suddenly realized what I've been wanting to say all along…
- [TDD Anti Patterns](https://osherove.com/blog/2008/1/20/tdd-anti-patterns.md) (2008-01-20): James Carr lists a nice bunch of TDD anti patterns . via Jeremy . Here's one example I run into often: "The Liar An entire unit test that passes all of the test cases it has and appears valid, but upon closer inspection…
- [Is Typemock too powerful? Will it kill design for testability?](https://osherove.com/blog/2008/1/17/is-typemock-too-powerful-will-it-kill-design-for-testability.md) (2008-01-17): A couple of days ago, Typemock held a small "insiders" web meeting, showing off the new features of the next release. The presentation lasted for about 10 minutes, and we were using Webex to show live screen feed and…
- [The evolution of Unit Testing Syntax and Semantics](https://osherove.com/blog/2008/1/17/the-evolution-of-unit-testing-syntax-and-semantics.md) (2008-01-17): The semantics of how you write a unit test, the basic syntax, or Domain Specific language of how we write them, has been relatively stale for quite some years now. But under the covers, the syntax revolution seems to be…
- [Unit Testing at TechEd Israel 08 - Which talk would you choose?](https://osherove.com/blog/2008/1/12/unit-testing-at-teched-israel-08-which-talk-would-you-choose.md) (2008-01-12): Looks like I'll be presenting at TechEd Israel this year! Currently it appears that I will be doing at least two talks. One of them will be About "Deep Reflection", a 400 level session that will go deep into the bowls…
- [Scala, NRehersal and Fluent Test Interfaces](https://osherove.com/blog/2008/1/9/scala-nrehersal-and-fluent-test-interfaces.md) (2008-01-09): This post by Ian cooper triggered my interest in Scala , a new object oriented, functional, programming language that is very accessible for java developers. From the looks of it, it seems very accessible for C#…
- [Basic Guidelines for using RowTest and data driven tests](https://osherove.com/blog/2007/12/18/basic-guidelines-for-using-rowtest-and-data-driven-tests.md) (2007-12-18): I took a look at the code that was used to create the NUnit RowTest Extension (which is pretty neat) and found this in one of the samples: The highlighted areas in the code show something which I feel is problematic and…
- [\[RowTest\] for NUnit, File System Interfaces for unit testing](https://osherove.com/blog/2007/12/18/rowtest-for-nunit-file-system-interfaces-for-unit-testing.md) (2007-12-18): Two small things of note in the unit testing field for me today: 1) There is am implementation of the [RowTest] Attribute available for NUnit, created using the NUnit Addin model (which you probably didn't know…
- [Data Layer Testing: Test Inheritance Patterns](https://osherove.com/blog/2007/11/28/data-layer-testing-test-inheritance-patterns.md) (2007-11-28): I'm preparing for my tutorial on Database and Data Layer unit testing that I will be giving at the Agile Practices Conference next week. It's always nice to have a full 3 hours to get pretty deep into something. 75…
- [Mocking LINQ Queries, Extension methods and Anonymous Types](https://osherove.com/blog/2007/11/17/mocking-linq-queries-extension-methods-and-anonymous-types.md) (2007-11-17): One of the things I wanted to show at my Interactive session on unit testing tips and tricks at TechEd this year was how you can "Stub" out results from LINQ Queries, or mock\stub Extension methods in .NET 3.5 ( what's…
- [Unit Testing in VS 2008 - Still not there](https://osherove.com/blog/2007/10/16/unit-testing-in-vs-2008-still-not-there.md) (2007-10-16): I'm starting to take a look at VS 2008 and writing down some things that are still "not there": Renaming a class using the "Rename" refactoring still does not change the file name. Are you kidding me? using "prop"…
- [The various meanings of TDD](https://osherove.com/blog/2007/10/8/the-various-meanings-of-tdd.md) (2007-10-08): Update : more on this here and here , and Jim has a whole article on this here . Now that I'm having some real time to write something I thought I'd try to write down my thoughts starting all the way back from JAOO and…
- [Slides and Demos for My Talk: Testing Data Access Code Pragmatically](https://osherove.com/blog/2007/9/24/slides-and-demos-for-my-talk-testing-data-access-code-pragma.md) (2007-09-24): You can download the slides and demos for my talk at Jaoo here: Talk: Testing Data Access Code Pragmatically Slides Code My guitar didn't make it through the flights over here, so someone was kind enough to lend me…
- [Code-Reuse in unit tests is more important than you think](https://osherove.com/blog/2007/9/22/code-reuse-in-unit-tests-is-more-important-than-you-think.md) (2007-09-22): Scott Bellware mentions how he really likes the new ideas in XUnit.NET , especially the lack of [Setup] and [TearDown] methods. (Brad Wilson wrote in the comments to my post about XUnit.NET that you can mimic this…
- [XUnit.NET aims to be the Next NUnit, but it's too soon](https://osherove.com/blog/2007/9/21/xunitnet-aims-to-be-the-next-nunit-but-its-too-soon.md) (2007-09-21): Update 1 : Brad answers some of my concerns on his blog. Too bad you can't write comments on his posts... Another update : There's a syntax comparison matrix between NUnit, XUnit and MbUnit. James Newkirk , one of the…
- [The Art Of Unit Testing - Help me choose a book cover](https://osherove.com/blog/2007/9/18/the-art-of-unit-testing-help-me-choose-a-book-cover.md) (2007-09-18): Here's a question for those of you who are interested in my upcoming book . You can influence my decision on choosing the book cover design. The book will be available for purchase as part of the Manning Early Access…
- [TDD Pattern: Composite Logic Development and Testing](https://osherove.com/blog/2007/9/18/tdd-pattern-composite-logic-development-and-testing.md) (2007-09-18): Here's a video I made that captures my current thoughts on writing complex business rules which have lots of validation logic. Here's the scenario I show in the video: A Validate method on an object actually uses lots…
- [Mocks and Stubs - The difference is in the flow of information](https://osherove.com/blog/2007/9/16/mocks-and-stubs-the-difference-is-in-the-flow-of-information.md) (2007-09-16): In class today when explaining the difference between stubs and mocks, I realized a simple explanation to this: Stubs and mocks may seem the same but the flow of information from each is very different. Stubs provide…
- [Throw-Away Tests Vs. Tests that Last](https://osherove.com/blog/2007/9/13/throw-away-tests-vs-tests-that-last.md) (2007-09-13): TATs - That's what I call the tests people write when they are writing unit tests for the first time on a real project. Those tests usually don't last more that a few months before they either get deleted or ignored…
- [ClassTester - Test automatically all the stuff you don't bother testing with hand written tests](https://osherove.com/blog/2007/8/3/classtester-test-automatically-all-the-stuff-you-dont-bother.md) (2007-08-03): A dude named Josh sent me an email about a Class Tester he's developed, available here . The idea is to take care of all the things I usually avoid writing unit tests for because it takes too much effort for too little…
- [Test Driven Development Public Course is open](https://osherove.com/blog/2007/7/19/test-driven-development-public-course-is-open.md) (2007-07-19): I'm happy to announce a public course about Test Driven Development in .NET, being run by Oren Ellenbogen , a personal TDD student of mine who's become quite a master on his own when it comes to TDD and unit testing…
- [Implementing Unit Test MetaData using XtUnit custom attributes](https://osherove.com/blog/2007/6/25/implementing-unit-test-metadata-using-xtunit-custom-attribut.md) (2007-06-25): Regarding my last post on xml comments used inside a unit test Here's how you can implement the same "metadata on a test" equivalent using XtUnit custom attributes (note that you need to inhering from a custom class for…
- [Unit Test Tip: Encode test data as part of your test xml comments](https://osherove.com/blog/2007/6/25/unit-test-tip-encode-test-data-as-part-of-your-test-xml-comm.md) (2007-06-25): What a cool idea, and simple too. You can encode various test data as XML comments on your test, and then use them in your test by parsing the XML file generated by the compiler. More details here . Lars Thurop wrote…
- [ThreadTester with new Ability: StopWhenTrue() and thread polling](https://osherove.com/blog/2007/6/25/threadtester-with-new-ability-stopwhentrue-and-thread-pollin.md) (2007-06-25): I've updated The ThreadTester Library with a new ability: StopWhenTrue(). It allows you to periodically poll while all the threads are running (and the test is blocking) and either assert stuff or stop the run midway…
- [HTTPSimulator - Simulating HTTP Requests for unit testing made easier](https://osherove.com/blog/2007/6/20/httpsimulator-simulating-http-requests-for-unit-testing-made.md) (2007-06-20): Phill Haack just released HTTPSimulator - a class to help with running tests against a simulated Http Context, to help simulate requests and more without resorting to needing a web server running for the tests. [via DNK…
- [Art Of Unit Testing Book Available Shortly](https://osherove.com/blog/2007/6/19/art-of-unit-testing-book-available-shortly.md) (2007-06-19): Parts of it, at least. My upcoming book, The Art Of Unit Testing , has just gone in to the first review cycle, on the 1\3 complete mark (five chapters complete so far, we want to review and get feedback).I'm excited!…
- [Tips for Testable code and for testing legacy code](https://osherove.com/blog/2007/6/10/tips-for-testable-code-and-for-testing-legacy-code.md) (2007-06-10): I was consulting for a project today, and I was helping the team figure out how to test a method inside their business logic. Here's the thing - it was one of the least testable method's I've seen. It took me about 4 -5…
- [List of Unit Testing Frameworks](https://osherove.com/blog/2007/6/7/list-of-unit-testing-frameworks.md) (2007-06-07): Update : The site seems to be alive and kicking. Great list there. Check it out! There used to be a great list of unit test frameworks at http://www.xprogramming.com/software.htm . The site seems to be dead now. I…
- [Poll: What Mock Frameworks do you use?](https://osherove.com/blog/2007/4/27/poll-what-mock-frameworks-do-you-use.md) (2007-04-27): I've been looking for a good way to add simple polls to my blog for a while now, and then I came across this blog post which reviews 12 free online poll sites (some of them actually dedicated to bloggers). I chose…
- [Choosing a Mock Object Framework](https://osherove.com/blog/2007/4/26/choosing-a-mock-object-framework.md) (2007-04-26): Update : I've added a simple Poll at the bottom of this post which you can answer on your most used frameworks. ----------------------- My upcoming book is going forward ever so slowly, mostly due to my beautiful new…
- [Test Reviews Vs. Code Reviews - Some Helpful Tips](https://osherove.com/blog/2007/3/13/test-reviews-vs-code-reviews-some-helpful-tips.md) (2007-03-13): One of the things that I like to show people during my TDD courses, is how much easier it is to do a test review rather than a simple code review. A code review is like literally debugging the code with your eyes,…
- [JUnit 4 feels like NUnit with attribute-like syntax](https://osherove.com/blog/2007/3/7/junit-4-feels-like-nunit-with-attribute-like-syntax.md) (2007-03-07): I'm doing Test-Driven-Development with Java course, after having not done one for a long time, and I was browsing through my samples and online to see if anything interesting in JUnit land has happened since last time.…
- [Testable Designs - Round 2: Tooling, Design Smells and Bad Analogies](https://osherove.com/blog/2007/3/2/testable-designs-round-2-tooling-design-smells-and-bad-analo.md) (2007-03-02): Eli Lopian , the guy who runs TypeMock.NET (An amazing Mocking product, BTW - a bit too powerful for it's own good, perhaps) and myself share what seem to be conflicting views on how "Testable" object Oriented…
- [Why you should think about TOOP- Testable Object Oriented Programming](https://osherove.com/blog/2007/2/25/why-you-should-think-about-toop-testable-object-oriented-pro.md) (2007-02-25): Update: Mark has a point - Using "TOOP" and "TOOD" are catchier acronyms - I've changed them accordingly. I think it's time that Object Oriented Design\Programming got a little face lift. We live in interesting times,…
- [FxCop is heading in the wrong direction - No testability whatsoever](https://osherove.com/blog/2007/2/25/fxcop-is-heading-in-the-wrong-direction-no-testability-whats.md) (2007-02-25): If you don't know what FxCop is, go look . You'll like it. In response to my release of FxCopUnit which allows an easier experience testing out FxCop custom rules, David Kean of the FxCop blog posted his thoughts on the…
- [Introducing FxCopUnit - A framework for integrated FxCop rule testing](https://osherove.com/blog/2007/2/24/introducing-fxcopunit-a-framework-for-integrated-fxcop-rule.md) (2007-02-24): This post is a continuation of my Quest to test FxCop rules. The previous one was about writing pure unit tests for FxCop rules . This one is about writing Integration tests with a new framework I’ve developed called…
- [Writing real unit tests for your custom FxCop rules](https://osherove.com/blog/2007/2/24/writing-real-unit-tests-for-your-custom-fxcop-rules.md) (2007-02-24): Update : You might also be interested in FxCopUnit for FxCop Integration testing. It’s possible to create elegant small tests which require little to no configuration whatsoever that test out your custom rule’s ability…
- [Custom Reports for Load Test Results from Team System](https://osherove.com/blog/2006/12/10/custom-reports-for-load-test-results-from-team-system.md) (2006-12-10): Sean Lumley created some very nice custom reports about Load Testing Results from Team System located here . See Sean's post for more details.
- [Macro - Workaround for VS 2005 unit testing build problem](https://osherove.com/blog/2006/12/10/macro-workaround-for-vs-2005-unit-testing-build-problem.md) (2006-12-10): Sondre has a nice workaround for a very annoying problem with VS 2005 Unit Tests (aka Team Test) - When you run unit tests, the "Build" action is not performed on the unit testing project by default, so you have to…
- [Unit Testing your ASP.NET Validators - Validation Everywhere](https://osherove.com/blog/2006/12/9/unit-testing-your-aspnet-validators-validation-everywhere.md) (2006-12-09): heynemann just posted about a very nice and testable validation framework for ASP.NET called " Validation Everywhere ". "The Validation Everywhere project was born because I have a very complex UI that I need to unit…
- [BSDAgile - Team System Project Template for Extreme Programming](https://osherove.com/blog/2006/12/8/bsdagile-team-system-project-template-for-extreme-programmin.md) (2006-12-08): Now, how come I didn't notice this one before? BSDAgile - BSDAgile is a Methodology Template for Visual Studio Team System (VSTS). It is intended to provide an ultra-lightweight process for people building software in…
- [Extended Unit Test Attributes for Team System](https://osherove.com/blog/2006/12/5/extended-unit-test-attributes-for-team-system.md) (2006-12-05): Justin Burtch just posted a handful of cool attributes that extend the basic testing attributes within Team System's unit test framework. Some of those include [Rollback] - to rollback DB changes after the test…
- [Solving &quot;An error occurred while enlisting in a distributed transaction&quot; error when using Rollback Attribute or COM+ in unit tests](https://osherove.com/blog/2006/11/25/solving-ampquotan-error-occurred-while-enlisting-in-a-distri.md) (2006-11-25): One of the things I'm most proud of creating is XtUnit , which allows Rolling back the effects of a unit test against a database. (which really means its an integration test - maybe we should call these hybrids "coded…
- [Agile Development Sessions - Slides and Demos from TechEd](https://osherove.com/blog/2006/11/7/agile-development-sessions-slides-and-demos-from-teched.md) (2006-11-07): Update : here's a video that yosi made of my draft song before the preconference... Que sera sera... Yesterday was a full day of pre-conference goodness. I've had a blast doing 4 sessions dealing with Agile Development…
- [MassDataHandler: generate test data to help with data layer testing](https://osherove.com/blog/2006/10/15/massdatahandler-generate-test-data-to-help-with-data-layer-t.md) (2006-10-15): Yet another tool to help with integration tests against the database layer(got this by email: "I wanted to let you know about an open source tool I created to help unit test the data access layer.…
- [DataFresh - Database rollback library for unit tests](https://osherove.com/blog/2006/10/14/datafresh-database-rollback-library-for-unit-tests.md) (2006-10-14): A while ago I wrote an article about database unit testing , and the various ways you could "rollback" the database state to the way it was before the test ran. Today I got an interesting comment from Mike Brockey : "I…
- [The Art Of Unit Testing - Download Chapter 1](https://osherove.com/blog/2006/10/10/the-art-of-unit-testing-download-chapter-1.md) (2006-10-10): I'm happy to announce that draft of chapter 1 from my upcoming book " The Art of Unit Testing " is available for download immediately - click here for the PDF . the book will also be available to download from Manning's…
- [Avoid multiple asserts in a single unit test: revisited](https://osherove.com/blog/2006/10/3/avoid-multiple-asserts-in-a-single-unit-test-revisited.md) (2006-10-03): James Avery argues that what he'd really like to see in a unit test framework is the ability to run (and fail) multiple asserts within the same test. As some background, I personally am in favor of the " single assert…
- [The future of unit testing tools - MbUnit, NUnit, NMock and FIT](https://osherove.com/blog/2006/9/25/the-future-of-unit-testing-tools-mbunit-nunit-nmock-and-fit.md) (2006-09-25): After I posted that I still recommend NUnit over MbUnit , and reading Andrew's response regarding how it's unlikely that MbUnit will freeze anytime soon, I started thinking some more. What if MbUnit keeps going and…
- [MbUnit vs. NUnit Vs. Team System Unit Testing - Choosing a unit test framework](https://osherove.com/blog/2006/9/23/mbunit-vs-nunit-vs-team-system-unit-testing-choosing-a-unit.md) (2006-09-23): Update : There's a new Unit test framework called XUnit.NET. More info here. MbUnit is gaining some momentum as one of the nicest unit testing frameworks for .NET out there. I just came out as an RC2 release with many…
- [Test Driven Development Related Podcasts and a few other comments](https://osherove.com/blog/2006/9/17/test-driven-development-related-podcasts-and-a-few-other-com.md) (2006-09-17): It's been an Test-Driven few weeks in the .NET podcasting scene. If you're into it, here are some audio shows that should help you learn a little bit about this world. Hanselminutes has a couple of shows on the scene.…
- [Unit Testing Pros And Cons](https://osherove.com/blog/2006/8/27/unit-testing-pros-and-cons.md) (2006-08-27): " Unit Testing is teh suck " - this post, and some of the comments to it, represent just about every conceivable FUD (fear, Uncertainty, Doubt) about Unit Testing and Test Driven development I've heard, so I'd urge you…
- [Simple designs through Test Driven Development](https://osherove.com/blog/2006/8/27/simple-designs-through-test-driven-development.md) (2006-08-27): Scott Bellware keeps on wowing me with his elegant way of putting ideas into words, sentences and paragraphs. If you are into Test Driven Development, you should be reading his blog . In one of his latest posts he talks…
- [Naming standards for unit tests](https://osherove.com/blog/2005/4/3/naming-standards-for-unit-tests.md) (2005-04-03): The basic naming of a test comprises of three main parts: [UnitOfWork_StateUnderTest_ExpectedBehavior] A unit of work is a use case in the system that startes with a public method and ends up with one of three types of…
- [Simplified Database Unit testing using Enterprise Services](https://osherove.com/blog/2004/6/19/simplified-database-unit-testing-using-enterprise-services.md) (2004-06-19): By Roy Osherove Summary : In this article I’ll show what problems we encounter today when we perform unit tests against database related component, and the various ways used to solve these problems. I’ll also show a new…
- [Fun with Unit Tests – Testing abstract classes](https://osherove.com/blog/2003/9/24/fun-with-unit-tests-testing-abstract-classes.md) (2003-09-24): Download the source for this article: Direct link Summary In this article I’ll be looking into a trickier part of unit testing– testing the functionality of classes who cannot be instantiated on their own, abstract…
- [Introduction to Test-driven development with NUnit and the NUnit-Add-in](https://osherove.com/blog/2003/9/21/introduction-to-test-driven-development-with-nunit-and-the-n.md) (2003-09-21): Every once in a while in my development career I realize just how much I’ve been missing out on some technique that I’ve just discovered. Such was the case with learning about Design patterns , as was the case with…


---

## About the author

**Roy Osherove**: Senior Solutions Architect at AWS working on AI for production and AI-driven development; author of The Art of Unit Testing and Elastic Leadership, with about 20 years of consulting and training on unit testing, TDD, team leadership and continuous delivery.

### Sites

- [RobotPaper](https://robotpaper.ai/): This blog: AI patterns and anti-patterns, AI and coding agents, and engineering leadership.
- [osherove.com](https://osherove.com): Roy's personal site. Author of The Art of Unit Testing and Elastic Leadership; consulting and training on unit testing, TDD, team leadership and continuous delivery, plus about 20 years of blog posts.
- [The Art of Unit Testing](https://www.artofunittesting.com): The Art of Unit Testing, 3rd Edition (Manning): readable, maintainable, trustworthy unit tests, plus TDD workshops in C#, JavaScript, Java and Kotlin.
- [5whys.com](https://www.5whys.com): Roy's writing on software team leadership: self-organizing teams, surviving chaos, learning mode and the Elastic Leadership model.
- [Pipeline Driven](https://pipelinedriven.org): Continuous delivery and DevOps practices: build patterns, pipeline-friendly testing, DevOps metrics and enterprise DevOps.
- [Elastic Leadership](https://www.elasticleadership.com): Elastic Leadership, Roy's framework for software team leaders (survival, learning and self-organizing modes).

### Social

- X: https://x.com/royosherove
- LinkedIn: https://www.linkedin.com/in/osherove/

### Contact

- Contact form: https://forms.gle/jQSx5KoXvrVA1JCK7

### License

Licensed under CC BY 4.0 — reuse, quote and adapt with attribution (Roy Osherove, link to the original page). License: https://creativecommons.org/licenses/by/4.0/
