{
    "href": "/post/2007/07/16/testivus-for-the-rest-of-us-and-the-testing-gene/",
    "relId": "2007/07/16/testivus-for-the-rest-of-us-and-the-testing-gene",
    "title": "Testivus (for the Rest of Us) and the Testing Gene",
    "author": "pmjones",
    "markup": "html",
    "tags": [
        {
            "href": "/tag/php/",
            "relId": "php",
            "title": "PHP",
            "author": null,
            "created": null,
            "updated": [],
            "markup": "markdown"
        }
    ],
    "created": "2007-07-16 13:49:33 UTC",
    "updated": [
        "2007-07-16 13:49:33 UTC"
    ],
    "html": "<p>The esteemed <a href=\"http://sebastian-bergmann.de/\">Sebastian Bergmann</a>, author of <a href=\"http://www.phpunit.de\">PhpUnit</a>, makes a <a href=\"http://paul-m-jones.com/blog/?p=250#comment-162087\">great comment</a> in my earlier post on <a href=\"http://paul-m-jones.com/blog/?p=250\">testing and ravioli code</a>.</p>\n<p>In the comment, he links to the <a href=\"http://www.artima.com/weblogs/viewpost.jsp?thread=194506\">Testivus Manifestivus</a> from Alberto Savoia, which is about as non-dogmatic about testing as you can get, while still highlighting the importance of testing.  You should read the whole thing, but here are some of the highlights.</p>\n<blockquote>\n<p>\n<strong>Less testing dogma, more testing karma</strong></p>\n<p>Dogma can be informally described as authoritative principles, beliefs, often considered to be absolutely true. Testivus tries to keep testing dogma to a minimum. What works for some people sometimes, may not work for some other people, or even the same people at some other time.</p>\n<p>Karma, on the other hand, can be informally explained as: \"Do good things, and good things will happen to you.\"\u00c2\u009d We believe that writing and running tests is a good thing so if you write and run tests good things will happen to you \"\u00c2\u00a6 well perhaps just to your code.</p>\n<p>We'd like to say that this is the central tenet of Testivus, but calling something a tenet would be too dogmatic.</p>\n<p><strong>Any tests are better than no tests</strong></p>\n<p>Self-explanatory and inspired by Martin Fowler, who once wrote \"Imperfect tests, run frequently, are much better than perfect tests that are never written at all\"\u00c2\u009d.\n</p>\n</blockquote>\n<p>Savoia follows with \"Testing beats debugging\", \"Test first, during, or after -- whatever works best for you\", \"If a method, technique, or tool, gives you more or better tests use it\".  While I may have issues with test-first and TDD, I am fully in support of <a href=\"http://www.artima.com/weblogs/viewpost.jsp?thread=194506\">Testivus</a>.</p>\n<p>What's intersting about Testivus is that it is the result of an earlier Savoia post about <a href=\"http://www.artima.com/weblogs/viewpost.jsp?thread=192781\">susceptibility to test-infection</a>.  That entry from Savoia is good too; he seems to approach things from a \"how do people actually work\" point of view, rather than \"what would a perfect mode of working be\". Strongly suggest you read it, if only to determine if you are a T1, T2, or T3 (I think of myself as in the T2 camp).  TDD dogmatists (hi Noel Darlow!) take note: for whatever reason, some people are highly resistant to test-first, and airs of moral superiority and/or condescension do little to help your cause among the T2 and T3.</p>\n<p><strong>Update (2007-08-19):</strong> Alberto Savoia in the comments below notes that there are new extended versions of the Testivus Manifestivus.</p>\n<ul>\n<li><a href=\"http://www.artima.com/weblogs/viewpost.jsp?thread=203994\">http://www.artima.com/weblogs/viewpost.jsp?thread=203994</a></li>\n<li><a href=\"http://www.agitar.com/downloads/TheWayOfTestivus.pdf\">http://www.agitar.com/downloads/TheWayOfTestivus.pdf</a></li>\n</ul>\n<p>Thanks for the new links.</p>\n"
}
