<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
		>
<channel>
	<title>Comments on: How not to implement a failing test</title>
	<atom:link href="http://lostechies.com/jimmybogard/2009/10/19/how-not-to-implement-a-failing-test/feed/" rel="self" type="application/rss+xml" />
	<link>http://lostechies.com/jimmybogard/2009/10/19/how-not-to-implement-a-failing-test/</link>
	<description>Strong opinions, weakly held</description>
	<lastBuildDate>Sun, 19 May 2013 03:22:18 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.4.2</generator>
	<item>
		<title>By: Arnis L.</title>
		<link>http://lostechies.com/jimmybogard/2009/10/19/how-not-to-implement-a-failing-test/#comment-1951</link>
		<dc:creator>Arnis L.</dc:creator>
		<pubDate>Thu, 22 Oct 2009 13:20:26 +0000</pubDate>
		<guid isPermaLink="false">/blogs/jimmy_bogard/archive/2009/10/19/how-not-to-implement-a-failing-test.aspx#comment-1951</guid>
		<description>You should add those comments to your post. Now it sounds much more reasonable.

Btw - thanks for presentation. It was really nice.</description>
		<content:encoded><![CDATA[<p>You should add those comments to your post. Now it sounds much more reasonable.</p>
<p>Btw &#8211; thanks for presentation. It was really nice.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: bogardj</title>
		<link>http://lostechies.com/jimmybogard/2009/10/19/how-not-to-implement-a-failing-test/#comment-1950</link>
		<dc:creator>bogardj</dc:creator>
		<pubDate>Wed, 21 Oct 2009 15:49:26 +0000</pubDate>
		<guid isPermaLink="false">/blogs/jimmy_bogard/archive/2009/10/19/how-not-to-implement-a-failing-test.aspx#comment-1950</guid>
		<description>@James

The point is to get to a failing assertion - not just a failing test.  Assertion failures tell me if my code under test is working or not.  Exceptions tell me nothing.  It has nothing to do environmental constraints - it&#039;s the critical &quot;Red&quot; step to prove my test is correct.  Exceptions prove nothing.</description>
		<content:encoded><![CDATA[<p>@James</p>
<p>The point is to get to a failing assertion &#8211; not just a failing test.  Assertion failures tell me if my code under test is working or not.  Exceptions tell me nothing.  It has nothing to do environmental constraints &#8211; it&#8217;s the critical &#8220;Red&#8221; step to prove my test is correct.  Exceptions prove nothing.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: James Gregory</title>
		<link>http://lostechies.com/jimmybogard/2009/10/19/how-not-to-implement-a-failing-test/#comment-1949</link>
		<dc:creator>James Gregory</dc:creator>
		<pubDate>Wed, 21 Oct 2009 13:42:39 +0000</pubDate>
		<guid isPermaLink="false">/blogs/jimmy_bogard/archive/2009/10/19/how-not-to-implement-a-failing-test.aspx#comment-1949</guid>
		<description>I&#039;m failing to see the distinction between a NotImplementedException and returning a default value. Both are simply a stop-gap mechanism for getting your code to compile so you can -see- the failure. In a less strict language you wouldn&#039;t need this step, because your test would be immediately runnable, but without this luxury we&#039;re stuck with either default values or exceptions. To favour one is personal preference, but decrying one over the other seems pedantic for a step that&#039;s only necessary due to environmental constraints.</description>
		<content:encoded><![CDATA[<p>I&#8217;m failing to see the distinction between a NotImplementedException and returning a default value. Both are simply a stop-gap mechanism for getting your code to compile so you can -see- the failure. In a less strict language you wouldn&#8217;t need this step, because your test would be immediately runnable, but without this luxury we&#8217;re stuck with either default values or exceptions. To favour one is personal preference, but decrying one over the other seems pedantic for a step that&#8217;s only necessary due to environmental constraints.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: bogardj</title>
		<link>http://lostechies.com/jimmybogard/2009/10/19/how-not-to-implement-a-failing-test/#comment-1948</link>
		<dc:creator>bogardj</dc:creator>
		<pubDate>Wed, 21 Oct 2009 13:18:29 +0000</pubDate>
		<guid isPermaLink="false">/blogs/jimmy_bogard/archive/2009/10/19/how-not-to-implement-a-failing-test.aspx#comment-1948</guid>
		<description>@James

The test failure provides no meaning.  If a test fails because of the Execute step borking, my only recourse is debugging.  Assertion failures provide the most documentation.

If your first goal in RGR is to fail a test, why bother writing the assertions yet?  Seems like a waste of time if all you want to see is a failure, no matter where the source.</description>
		<content:encoded><![CDATA[<p>@James</p>
<p>The test failure provides no meaning.  If a test fails because of the Execute step borking, my only recourse is debugging.  Assertion failures provide the most documentation.</p>
<p>If your first goal in RGR is to fail a test, why bother writing the assertions yet?  Seems like a waste of time if all you want to see is a failure, no matter where the source.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: bogardj</title>
		<link>http://lostechies.com/jimmybogard/2009/10/19/how-not-to-implement-a-failing-test/#comment-1947</link>
		<dc:creator>bogardj</dc:creator>
		<pubDate>Wed, 21 Oct 2009 13:15:27 +0000</pubDate>
		<guid isPermaLink="false">/blogs/jimmy_bogard/archive/2009/10/19/how-not-to-implement-a-failing-test.aspx#comment-1947</guid>
		<description>@Jaco

But now you&#039;ve never shown that your &quot;Assert&quot; part of AAA works correctly.  If &quot;Red&quot; is to do &quot;Setup Execute&quot; but never &quot;Verify&quot;, the &quot;Green&quot; part now has two points of failure.</description>
		<content:encoded><![CDATA[<p>@Jaco</p>
<p>But now you&#8217;ve never shown that your &#8220;Assert&#8221; part of AAA works correctly.  If &#8220;Red&#8221; is to do &#8220;Setup Execute&#8221; but never &#8220;Verify&#8221;, the &#8220;Green&#8221; part now has two points of failure.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: bogardj</title>
		<link>http://lostechies.com/jimmybogard/2009/10/19/how-not-to-implement-a-failing-test/#comment-1946</link>
		<dc:creator>bogardj</dc:creator>
		<pubDate>Wed, 21 Oct 2009 13:14:10 +0000</pubDate>
		<guid isPermaLink="false">/blogs/jimmy_bogard/archive/2009/10/19/how-not-to-implement-a-failing-test.aspx#comment-1946</guid>
		<description>@Brendan

That&#039;s why you write a failing test first - you need to calibrate your test to make sure your test is correct.</description>
		<content:encoded><![CDATA[<p>@Brendan</p>
<p>That&#8217;s why you write a failing test first &#8211; you need to calibrate your test to make sure your test is correct.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: James Gregory</title>
		<link>http://lostechies.com/jimmybogard/2009/10/19/how-not-to-implement-a-failing-test/#comment-1945</link>
		<dc:creator>James Gregory</dc:creator>
		<pubDate>Wed, 21 Oct 2009 09:38:53 +0000</pubDate>
		<guid isPermaLink="false">/blogs/jimmy_bogard/archive/2009/10/19/how-not-to-implement-a-failing-test.aspx#comment-1945</guid>
		<description>Playing devils advocate. What&#039;s not meaningful about throwing a NotImplementedException? It fails because it&#039;s not implemented, certainly seems meaningful.</description>
		<content:encoded><![CDATA[<p>Playing devils advocate. What&#8217;s not meaningful about throwing a NotImplementedException? It fails because it&#8217;s not implemented, certainly seems meaningful.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Jaco Pretorius</title>
		<link>http://lostechies.com/jimmybogard/2009/10/19/how-not-to-implement-a-failing-test/#comment-1944</link>
		<dc:creator>Jaco Pretorius</dc:creator>
		<pubDate>Wed, 21 Oct 2009 06:12:08 +0000</pubDate>
		<guid isPermaLink="false">/blogs/jimmy_bogard/archive/2009/10/19/how-not-to-implement-a-failing-test.aspx#comment-1944</guid>
		<description>I don&#039;t think I really agree with you - where is the rule that says the Red in RGR should be a meaningful failure?  When I&#039;m designing my tests I want to write the least amount of code possible to get the code compiling.  That&#039;s the first step - I just want to be able to run the test and see it fail. The next step is to write the simplest code to get the test to pass - this is usually something along the lines of &#039;return 5;&#039;

I suppose we are arguing semantics but my point is that this is such a short step in your design process that I would suggest that you do whatever you feel comfortable with. </description>
		<content:encoded><![CDATA[<p>I don&#8217;t think I really agree with you &#8211; where is the rule that says the Red in RGR should be a meaningful failure?  When I&#8217;m designing my tests I want to write the least amount of code possible to get the code compiling.  That&#8217;s the first step &#8211; I just want to be able to run the test and see it fail. The next step is to write the simplest code to get the test to pass &#8211; this is usually something along the lines of &#8216;return 5;&#8217;</p>
<p>I suppose we are arguing semantics but my point is that this is such a short step in your design process that I would suggest that you do whatever you feel comfortable with. </p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Mike Murray</title>
		<link>http://lostechies.com/jimmybogard/2009/10/19/how-not-to-implement-a-failing-test/#comment-1943</link>
		<dc:creator>Mike Murray</dc:creator>
		<pubDate>Tue, 20 Oct 2009 22:22:12 +0000</pubDate>
		<guid isPermaLink="false">/blogs/jimmy_bogard/archive/2009/10/19/how-not-to-implement-a-failing-test.aspx#comment-1943</guid>
		<description>I like how in Aaron Jensen&#039;s MSpec, not implemented specs are considered neither passing nor failing; they are considered Not Implemented yet!  The yellow of Red and Green testing. :)</description>
		<content:encoded><![CDATA[<p>I like how in Aaron Jensen&#8217;s MSpec, not implemented specs are considered neither passing nor failing; they are considered Not Implemented yet!  The yellow of Red and Green testing. <img src='http://lostechies.com/jimmybogard/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Bill Sorensen</title>
		<link>http://lostechies.com/jimmybogard/2009/10/19/how-not-to-implement-a-failing-test/#comment-1942</link>
		<dc:creator>Bill Sorensen</dc:creator>
		<pubDate>Tue, 20 Oct 2009 17:31:36 +0000</pubDate>
		<guid isPermaLink="false">/blogs/jimmy_bogard/archive/2009/10/19/how-not-to-implement-a-failing-test.aspx#comment-1942</guid>
		<description>@scott: In ReSharper 4.5, this is in Options, Languages, Generated members.</description>
		<content:encoded><![CDATA[<p>@scott: In ReSharper 4.5, this is in Options, Languages, Generated members.</p>
]]></content:encoded>
	</item>
</channel>
</rss>
