<?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 do you know your tests are good?</title>
	<atom:link href="http://www.noctovis.net/blog/index.php/2009/01/26/how-do-you-know-your-tests-are-good/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.noctovis.net/blog/index.php/2009/01/26/how-do-you-know-your-tests-are-good/</link>
	<description>A night's vision on .NET</description>
	<lastBuildDate>Sat, 17 Oct 2009 11:00:07 +0200</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.4</generator>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
		<item>
		<title>By: Nocturn vision &#187; Blog Archive &#187; Test-driven development with code generation</title>
		<link>http://www.noctovis.net/blog/index.php/2009/01/26/how-do-you-know-your-tests-are-good/comment-page-1/#comment-250</link>
		<dc:creator>Nocturn vision &#187; Blog Archive &#187; Test-driven development with code generation</dc:creator>
		<pubDate>Thu, 05 Mar 2009 20:36:46 +0000</pubDate>
		<guid isPermaLink="false">http://www.noctovis.net/blog/index.php/2009/01/27/how-do-you-know-your-tests-are-good/#comment-250</guid>
		<description>[...] got developers on your team that don&#8217;t do TDD, you&#8217;re doomed to have passing tests that don&#8217;t test anything useful or are empty. That&#8217;s why, in my opinion, all tests should fail after generation. That way the [...]</description>
		<content:encoded><![CDATA[<p>[...] got developers on your team that don&#8217;t do TDD, you&#8217;re doomed to have passing tests that don&#8217;t test anything useful or are empty. That&#8217;s why, in my opinion, all tests should fail after generation. That way the [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Nocturn vision &#187; Blog Archive &#187; Code-review with NDepend</title>
		<link>http://www.noctovis.net/blog/index.php/2009/01/26/how-do-you-know-your-tests-are-good/comment-page-1/#comment-94</link>
		<dc:creator>Nocturn vision &#187; Blog Archive &#187; Code-review with NDepend</dc:creator>
		<pubDate>Mon, 09 Feb 2009 20:31:31 +0000</pubDate>
		<guid isPermaLink="false">http://www.noctovis.net/blog/index.php/2009/01/27/how-do-you-know-your-tests-are-good/#comment-94</guid>
		<description>[...] How do you know your tests are good?  [...]</description>
		<content:encoded><![CDATA[<p>[...] How do you know your tests are good?  [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Laila</title>
		<link>http://www.noctovis.net/blog/index.php/2009/01/26/how-do-you-know-your-tests-are-good/comment-page-1/#comment-48</link>
		<dc:creator>Laila</dc:creator>
		<pubDate>Tue, 27 Jan 2009 19:36:18 +0000</pubDate>
		<guid isPermaLink="false">http://www.noctovis.net/blog/index.php/2009/01/27/how-do-you-know-your-tests-are-good/#comment-48</guid>
		<description>@Freddy: Thx for reading!
If I should cut my thinking phase into little pieces, I&#039;d ask these questions:
- What functionality do I have to create (calculate age)
- How do I write it so it&#039;s easily readable by clients (write what you want your client to be writing)
- How do I keep it extensible (applying SOLID principles)

If later I notice I have to reject future dates, consider the month of the year, or whatever other constraint or feature, I just repeat the whole iteration. 
I think in TDD even for such a small thingie as the AgeCalculator, you use different RGR-iterations.

About the multiple tests: for adding features such as fe a date to calculate against, I start with a new test.
When starting with -extensions- (such as reject future dates), I have two options: Add a new test, or refactor the old test, depending on what you need to do. 

The amount of tests I create doesn&#039;t really scare me, what scares me is having useless tests :)</description>
		<content:encoded><![CDATA[<p>@Freddy: Thx for reading!<br />
If I should cut my thinking phase into little pieces, I&#8217;d ask these questions:<br />
- What functionality do I have to create (calculate age)<br />
- How do I write it so it&#8217;s easily readable by clients (write what you want your client to be writing)<br />
- How do I keep it extensible (applying SOLID principles)</p>
<p>If later I notice I have to reject future dates, consider the month of the year, or whatever other constraint or feature, I just repeat the whole iteration.<br />
I think in TDD even for such a small thingie as the AgeCalculator, you use different RGR-iterations.</p>
<p>About the multiple tests: for adding features such as fe a date to calculate against, I start with a new test.<br />
When starting with -extensions- (such as reject future dates), I have two options: Add a new test, or refactor the old test, depending on what you need to do. </p>
<p>The amount of tests I create doesn&#8217;t really scare me, what scares me is having useless tests <img src='http://www.noctovis.net/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
]]></content:encoded>
	</item>
	<item>
		<title>By: DotNetShoutout</title>
		<link>http://www.noctovis.net/blog/index.php/2009/01/26/how-do-you-know-your-tests-are-good/comment-page-1/#comment-46</link>
		<dc:creator>DotNetShoutout</dc:creator>
		<pubDate>Tue, 27 Jan 2009 19:22:54 +0000</pubDate>
		<guid isPermaLink="false">http://www.noctovis.net/blog/index.php/2009/01/27/how-do-you-know-your-tests-are-good/#comment-46</guid>
		<description>&lt;strong&gt;Nocturn vision  » How do you know your tests are good?...&lt;/strong&gt;

Thank you for submitting this cool story - Trackback from DotNetShoutout...</description>
		<content:encoded><![CDATA[<p><strong>Nocturn vision  » How do you know your tests are good?&#8230;</strong></p>
<p>Thank you for submitting this cool story &#8211; Trackback from DotNetShoutout&#8230;</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Freddy</title>
		<link>http://www.noctovis.net/blog/index.php/2009/01/26/how-do-you-know-your-tests-are-good/comment-page-1/#comment-44</link>
		<dc:creator>Freddy</dc:creator>
		<pubDate>Tue, 27 Jan 2009 16:44:18 +0000</pubDate>
		<guid isPermaLink="false">http://www.noctovis.net/blog/index.php/2009/01/27/how-do-you-know-your-tests-are-good/#comment-44</guid>
		<description>Nice post.

I would change this:
&quot;1) Think =&gt; how should you write your test?&quot;
to:
1) Think =&gt; how do I know if I got it right / if it is working.

The thing is it isn&#039;t revealing the purpose of that step. It is not a about looking for a test without a reason. It is about looking at how we can verify the new functionality. It is just easier to be guided that way:
How do I know if the age calculation is right:
- it works in a normal case such as x.
- it rejects future dates
- it considers the month of the year
- it doesn&#039;t confuse the month of different years.
...

I am not saying write all at once, just that in each TDD iteration that would be the best first question to ask.

Of course thinking on the question up-front does the reveal what you are about to code wasn&#039;t that simple at the end and you want to use already tested stuff for the date calculations - so you don&#039;t end with a huge amount of tests :)</description>
		<content:encoded><![CDATA[<p>Nice post.</p>
<p>I would change this:<br />
&#8220;1) Think =&gt; how should you write your test?&#8221;<br />
to:<br />
1) Think =&gt; how do I know if I got it right / if it is working.</p>
<p>The thing is it isn&#8217;t revealing the purpose of that step. It is not a about looking for a test without a reason. It is about looking at how we can verify the new functionality. It is just easier to be guided that way:<br />
How do I know if the age calculation is right:<br />
- it works in a normal case such as x.<br />
- it rejects future dates<br />
- it considers the month of the year<br />
- it doesn&#8217;t confuse the month of different years.<br />
&#8230;</p>
<p>I am not saying write all at once, just that in each TDD iteration that would be the best first question to ask.</p>
<p>Of course thinking on the question up-front does the reveal what you are about to code wasn&#8217;t that simple at the end and you want to use already tested stuff for the date calculations &#8211; so you don&#8217;t end with a huge amount of tests <img src='http://www.noctovis.net/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Dew Drop - January 27, 2009 &#124; Alvin Ashcraft's Morning Dew</title>
		<link>http://www.noctovis.net/blog/index.php/2009/01/26/how-do-you-know-your-tests-are-good/comment-page-1/#comment-42</link>
		<dc:creator>Dew Drop - January 27, 2009 &#124; Alvin Ashcraft's Morning Dew</dc:creator>
		<pubDate>Tue, 27 Jan 2009 14:13:37 +0000</pubDate>
		<guid isPermaLink="false">http://www.noctovis.net/blog/index.php/2009/01/27/how-do-you-know-your-tests-are-good/#comment-42</guid>
		<description>[...] How Do You Know Your Tests Are Good? (Laila Bougria) – Link of the Day [...]</description>
		<content:encoded><![CDATA[<p>[...] How Do You Know Your Tests Are Good? (Laila Bougria) – Link of the Day [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Reflective Perspective - Chris Alcock &#187; The Morning Brew #273</title>
		<link>http://www.noctovis.net/blog/index.php/2009/01/26/how-do-you-know-your-tests-are-good/comment-page-1/#comment-38</link>
		<dc:creator>Reflective Perspective - Chris Alcock &#187; The Morning Brew #273</dc:creator>
		<pubDate>Tue, 27 Jan 2009 08:47:10 +0000</pubDate>
		<guid isPermaLink="false">http://www.noctovis.net/blog/index.php/2009/01/27/how-do-you-know-your-tests-are-good/#comment-38</guid>
		<description>[...] How do you know your tests are good? - Laila Bougria looks at how Test Driven Development can give you better certainty that your tests are good. [...]</description>
		<content:encoded><![CDATA[<p>[...] How do you know your tests are good? &#8211; Laila Bougria looks at how Test Driven Development can give you better certainty that your tests are good. [...]</p>
]]></content:encoded>
	</item>
</channel>
</rss>
