<?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: Thoughts and notes on unit testing</title>
	<atom:link href="http://blog.randell.ph/2010/04/01/thoughts-and-notes-on-unit-testing/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.randell.ph/2010/04/01/thoughts-and-notes-on-unit-testing/</link>
	<description>Software development, Fedora how-to&#039;s, and random stuff from the web</description>
	<lastBuildDate>Sun, 08 Jan 2012 00:12:48 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
	<item>
		<title>By: Todd</title>
		<link>http://blog.randell.ph/2010/04/01/thoughts-and-notes-on-unit-testing/comment-page-1/#comment-24322</link>
		<dc:creator>Todd</dc:creator>
		<pubDate>Fri, 01 Jul 2011 18:15:19 +0000</pubDate>
		<guid isPermaLink="false">http://blog.randell.ph/?p=1059#comment-24322</guid>
		<description>I always found unit tests to have more value in developing then in actually testing. To be able to write tests in first place often requires keep code more loosely coupled, and to abstract IO functions more. It did not help at all in logic bugs or memory leaks. There is still great need for good systems and regression tests.</description>
		<content:encoded><![CDATA[<p>I always found unit tests to have more value in developing then in actually testing. To be able to write tests in first place often requires keep code more loosely coupled, and to abstract IO functions more. It did not help at all in logic bugs or memory leaks. There is still great need for good systems and regression tests.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Randell</title>
		<link>http://blog.randell.ph/2010/04/01/thoughts-and-notes-on-unit-testing/comment-page-1/#comment-24315</link>
		<dc:creator>Randell</dc:creator>
		<pubDate>Fri, 01 Jul 2011 11:08:53 +0000</pubDate>
		<guid isPermaLink="false">http://blog.randell.ph/?p=1059#comment-24315</guid>
		<description>Thanks, Pau! I have updated the post to reflect the url change. =)</description>
		<content:encoded><![CDATA[<p>Thanks, Pau! I have updated the post to reflect the url change. =)</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Pau Sanchez</title>
		<link>http://blog.randell.ph/2010/04/01/thoughts-and-notes-on-unit-testing/comment-page-1/#comment-24311</link>
		<dc:creator>Pau Sanchez</dc:creator>
		<pubDate>Fri, 01 Jul 2011 10:43:46 +0000</pubDate>
		<guid isPermaLink="false">http://blog.randell.ph/?p=1059#comment-24311</guid>
		<description>The link about Effective Unit Testing is now broken. The correct link right now is:
http://ubiquity.acm.org/article.cfm?id=358976

I discovered this after trying to read that article ;)</description>
		<content:encoded><![CDATA[<p>The link about Effective Unit Testing is now broken. The correct link right now is:<br />
<a href="http://ubiquity.acm.org/article.cfm?id=358976" rel="nofollow">http://ubiquity.acm.org/article.cfm?id=358976</a></p>
<p>I discovered this after trying to read that article <img src='http://blog.randell.ph/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Chaviv</title>
		<link>http://blog.randell.ph/2010/04/01/thoughts-and-notes-on-unit-testing/comment-page-1/#comment-15092</link>
		<dc:creator>Chaviv</dc:creator>
		<pubDate>Thu, 08 Jul 2010 06:30:16 +0000</pubDate>
		<guid isPermaLink="false">http://blog.randell.ph/?p=1059#comment-15092</guid>
		<description>The Art of Unittesting is a good introduction to the why&#039;s and how&#039;s of unittesting. Though it&#039;s based on .net, the principle should apply to any language.

http://weblogs.asp.net/rosherove/default.aspx</description>
		<content:encoded><![CDATA[<p>The Art of Unittesting is a good introduction to the why&#8217;s and how&#8217;s of unittesting. Though it&#8217;s based on .net, the principle should apply to any language.</p>
<p><a href="http://weblogs.asp.net/rosherove/default.aspx" rel="nofollow">http://weblogs.asp.net/rosherove/default.aspx</a></p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Juho Vepsäläinen</title>
		<link>http://blog.randell.ph/2010/04/01/thoughts-and-notes-on-unit-testing/comment-page-1/#comment-15091</link>
		<dc:creator>Juho Vepsäläinen</dc:creator>
		<pubDate>Thu, 08 Jul 2010 05:58:32 +0000</pubDate>
		<guid isPermaLink="false">http://blog.randell.ph/?p=1059#comment-15091</guid>
		<description>I suppose the main thing about tests is that they work as scaffolding. They don&#039;t guarantee that everything works. They just give you that extra bit of confidence you need when refactoring. It&#039;s easier not to screw something up when you have plainly stated the constraints and corner cases code has to abide to. :)

Of course tests are not without their problems. If not maintained, you might end up with a mess. Now you have ~two~ issues instead of one. It&#039;s not enough just to write tests. It&#039;s important to keep them up to date and legible.

Sometimes I prefer to use testing to drive my development work. This is particularly handy if I&#039;m familiar with the tool I&#039;m using and I&#039;m just exploring some new domain constraints of which I know. Just recently I wrote a tiny tokenizer this way. I sketched out expected results and wrote the code to comply to my definition. As you might well know this approach is known as Test Driven Development (TDD).

&lt;a href=&quot;http://www.agiledata.org/essays/tdd.html&quot; rel=&quot;nofollow&quot;&gt;This article&lt;/a&gt; covers the basics of the approach well. In addition you might want to check out &lt;a href=&quot;http://www.infoq.com/presentations/Sustainable-Test-Driven-Development&quot; rel=&quot;nofollow&quot;&gt;this presentation&lt;/a&gt; to give you some further ideas.

Besides TDD there is a whole family of xDD approaches. These include behavior, documentation, domain, acceptance testing, even bug (ok, this is a joke!) etc. drivers. The key idea here is that you derive the constraints for your code somehow.

The approaches vary based on how they state their starting point. You might want to use something that the customer himself may be able to come up with (stories). Then it&#039;s up to you to map it to something more tangible. You could end up using a tracer bullet approach (Hunt, Thomas) to sketch out the whole app and just fill in the details as you go.

There are many approaches to development and testing altogether. It&#039;s up to you to find the ways that work well in your context. Good luck! :)</description>
		<content:encoded><![CDATA[<p>I suppose the main thing about tests is that they work as scaffolding. They don&#8217;t guarantee that everything works. They just give you that extra bit of confidence you need when refactoring. It&#8217;s easier not to screw something up when you have plainly stated the constraints and corner cases code has to abide to. <img src='http://blog.randell.ph/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>Of course tests are not without their problems. If not maintained, you might end up with a mess. Now you have ~two~ issues instead of one. It&#8217;s not enough just to write tests. It&#8217;s important to keep them up to date and legible.</p>
<p>Sometimes I prefer to use testing to drive my development work. This is particularly handy if I&#8217;m familiar with the tool I&#8217;m using and I&#8217;m just exploring some new domain constraints of which I know. Just recently I wrote a tiny tokenizer this way. I sketched out expected results and wrote the code to comply to my definition. As you might well know this approach is known as Test Driven Development (TDD).</p>
<p><a href="http://www.agiledata.org/essays/tdd.html" rel="nofollow">This article</a> covers the basics of the approach well. In addition you might want to check out <a href="http://www.infoq.com/presentations/Sustainable-Test-Driven-Development" rel="nofollow">this presentation</a> to give you some further ideas.</p>
<p>Besides TDD there is a whole family of xDD approaches. These include behavior, documentation, domain, acceptance testing, even bug (ok, this is a joke!) etc. drivers. The key idea here is that you derive the constraints for your code somehow.</p>
<p>The approaches vary based on how they state their starting point. You might want to use something that the customer himself may be able to come up with (stories). Then it&#8217;s up to you to map it to something more tangible. You could end up using a tracer bullet approach (Hunt, Thomas) to sketch out the whole app and just fill in the details as you go.</p>
<p>There are many approaches to development and testing altogether. It&#8217;s up to you to find the ways that work well in your context. Good luck! <img src='http://blog.randell.ph/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
]]></content:encoded>
	</item>
</channel>
</rss>

