<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	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/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>James Grenning's Blog &#187; Test Driven Development</title>
	<atom:link href="http://www.renaissancesoftware.net/blog/archives/category/test-driven-development/feed" rel="self" type="application/rss+xml" />
	<link>http://www.renaissancesoftware.net/blog</link>
	<description>Blogging about Agile Development, especially embedded.  Follow me on twitter: jwgrenning</description>
	<lastBuildDate>Thu, 12 Jan 2012 00:59:40 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>Manual Test is Unsustainable</title>
		<link>http://www.renaissancesoftware.net/blog/archives/206</link>
		<comments>http://www.renaissancesoftware.net/blog/archives/206#comments</comments>
		<pubDate>Thu, 12 Jan 2012 00:59:40 +0000</pubDate>
		<dc:creator>jwgrenning</dc:creator>
				<category><![CDATA[automation]]></category>
		<category><![CDATA[Test Driven Development]]></category>
		<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[Unit Testing]]></category>

		<guid isPermaLink="false">http://www.renaissancesoftware.net/blog/?p=206</guid>
		<description><![CDATA[Creating automated tests can be very difficult, especially when the code has gotten long in the tooth and was not created with automated tests to begin with. Many product development teams don&#8217;t invest in automated tests. They think they cannot afford them. They think their product is different and can&#8217;t be manually tested. This thinking [...]]]></description>
		<wfw:commentRss>http://www.renaissancesoftware.net/blog/archives/206/feed</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>The Careful way is the Fast Way</title>
		<link>http://www.renaissancesoftware.net/blog/archives/151</link>
		<comments>http://www.renaissancesoftware.net/blog/archives/151#comments</comments>
		<pubDate>Thu, 25 Aug 2011 20:38:21 +0000</pubDate>
		<dc:creator>jwgrenning</dc:creator>
				<category><![CDATA[Just for fun]]></category>
		<category><![CDATA[TDD]]></category>
		<category><![CDATA[Test Driven Development]]></category>

		<guid isPermaLink="false">http://www.renaissancesoftware.net/blog/?p=151</guid>
		<description><![CDATA[After the Agile2011 conference, my wife and I took some great hikes in the mountains of Utah. We were careful as we navigated the slot canyons, rushing streams, and falling water. We were careful, we did not want a mistake to cause an injury; but we have no fear of height and love adventure. After [...]]]></description>
		<wfw:commentRss>http://www.renaissancesoftware.net/blog/archives/151/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Spying on Embedded &#8216;asm&#8217; directives</title>
		<link>http://www.renaissancesoftware.net/blog/archives/136</link>
		<comments>http://www.renaissancesoftware.net/blog/archives/136#comments</comments>
		<pubDate>Fri, 03 Jun 2011 01:06:00 +0000</pubDate>
		<dc:creator>jwgrenning</dc:creator>
				<category><![CDATA[Agile Embedded]]></category>
		<category><![CDATA[Embedded]]></category>
		<category><![CDATA[Embedded TDD]]></category>
		<category><![CDATA[TDD]]></category>
		<category><![CDATA[Test Driven Development]]></category>
		<category><![CDATA[Unit Testing]]></category>
		<category><![CDATA[Test-driven Development for embedded C]]></category>

		<guid isPermaLink="false">http://www.renaissancesoftware.net/blog/?p=136</guid>
		<description><![CDATA[Sometimes embedded developers have to use inline assembler instructions to get better control of the processor, or to improve performance. How should we deal with those when we&#8217;re doing TDD and testing off the target? What&#8217;s the problem? The embedded asm statements cause compilation errors if the assembler instructions are not part of the off-target [...]]]></description>
		<wfw:commentRss>http://www.renaissancesoftware.net/blog/archives/136/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title></title>
		<link>http://www.renaissancesoftware.net/blog/archives/113</link>
		<comments>http://www.renaissancesoftware.net/blog/archives/113#comments</comments>
		<pubDate>Thu, 24 Feb 2011 19:15:42 +0000</pubDate>
		<dc:creator>jwgrenning</dc:creator>
				<category><![CDATA[TAD]]></category>
		<category><![CDATA[TDD]]></category>
		<category><![CDATA[Test After Development]]></category>
		<category><![CDATA[Test Driven Development]]></category>
		<category><![CDATA[Unit Testing]]></category>

		<guid isPermaLink="false">http://www.renaissancesoftware.net/blog/?p=113</guid>
		<description><![CDATA[In Jeff Langr&#8217;s blog, Jeff responded to an assertion (from someone Jeff calls Schmoo) that writing tests after developing a unit of production code takes less time than using TDD to create production code and its tests. For starters, I am happy the discussion is about when to write the unit tests and not if. [...]]]></description>
		<wfw:commentRss>http://www.renaissancesoftware.net/blog/archives/113/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Boy Scout Rule Applied to Every Day Coding</title>
		<link>http://www.renaissancesoftware.net/blog/archives/90</link>
		<comments>http://www.renaissancesoftware.net/blog/archives/90#comments</comments>
		<pubDate>Mon, 02 Aug 2010 17:58:20 +0000</pubDate>
		<dc:creator>jwgrenning</dc:creator>
				<category><![CDATA[Agile Development]]></category>
		<category><![CDATA[Refactoring C]]></category>
		<category><![CDATA[Test Driven Development]]></category>

		<guid isPermaLink="false">http://www.renaissancesoftware.net/blog/?p=90</guid>
		<description><![CDATA[The Boy Scouts have a rule: leave the camp cleaner than you found it. This does not mean that all the trash has to be cleaned up now, but you can&#8217;t let it get worse, and it must get at least a little better. In Bob Martin&#8217;s book, Clean Code, he asks, &#8220;What if code [...]]]></description>
		<wfw:commentRss>http://www.renaissancesoftware.net/blog/archives/90/feed</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
		<item>
		<title>Why Test Driven Development for Embedded?</title>
		<link>http://www.renaissancesoftware.net/blog/archives/55</link>
		<comments>http://www.renaissancesoftware.net/blog/archives/55#comments</comments>
		<pubDate>Wed, 07 Oct 2009 17:02:47 +0000</pubDate>
		<dc:creator>jwgrenning</dc:creator>
				<category><![CDATA[Agile Development]]></category>
		<category><![CDATA[Agile Embedded]]></category>
		<category><![CDATA[Embedded TDD]]></category>
		<category><![CDATA[Test Driven Development]]></category>
		<category><![CDATA[Unit Testing]]></category>

		<guid isPermaLink="false">http://www.renaissancesoftware.net/blog/?p=55</guid>
		<description><![CDATA[Embedded software has all the challenges of &#8220;regular&#8221; software, like poor quality and unreliable schedules. It is just software with some additional challenges. The additional challenges do not disqualify TDD for embedded. TDD even helps with some of those uniquely embedded challenges. Leaving embedded out of it for a moment, here are benefits that TDD [...]]]></description>
		<wfw:commentRss>http://www.renaissancesoftware.net/blog/archives/55/feed</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>What Should you Expect from a Unit Test Harness</title>
		<link>http://www.renaissancesoftware.net/blog/archives/50</link>
		<comments>http://www.renaissancesoftware.net/blog/archives/50#comments</comments>
		<pubDate>Tue, 06 Oct 2009 19:43:13 +0000</pubDate>
		<dc:creator>jwgrenning</dc:creator>
				<category><![CDATA[Agile Development]]></category>
		<category><![CDATA[Agile Embedded]]></category>
		<category><![CDATA[Embedded TDD]]></category>
		<category><![CDATA[Test Driven Development]]></category>
		<category><![CDATA[Unit Testing]]></category>
		<category><![CDATA[TDD]]></category>
		<category><![CDATA[test-driven-development-tdd]]></category>

		<guid isPermaLink="false">http://www.renaissancesoftware.net/blog/?p=50</guid>
		<description><![CDATA[A unit test harness’ job is to provide: A concise common language to express test cases A concise common language to express expected results A place to collect all the unit test cases for the project, system, or subsystem The facilities to run the test cases, either in full or partial batches A concise report [...]]]></description>
		<wfw:commentRss>http://www.renaissancesoftware.net/blog/archives/50/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Extra! Extra! TDD Doubles LOC and No One Cares!</title>
		<link>http://www.renaissancesoftware.net/blog/archives/46</link>
		<comments>http://www.renaissancesoftware.net/blog/archives/46#comments</comments>
		<pubDate>Wed, 15 Jul 2009 01:52:37 +0000</pubDate>
		<dc:creator>jwgrenning</dc:creator>
				<category><![CDATA[Agile Development]]></category>
		<category><![CDATA[Test Driven Development]]></category>
		<category><![CDATA[Defect Prevention]]></category>
		<category><![CDATA[TDD]]></category>

		<guid isPermaLink="false">http://www.renaissancesoftware.net/blog/?p=46</guid>
		<description><![CDATA[Test Driven Development more than doubles the lines of code you have to write. With all that extra code to write, where will we ever find the time?! We have deadlines! Lines of code has always been a bad metric; why bring them up now? Error-free robots, programming at a constant rate, might have to [...]]]></description>
		<wfw:commentRss>http://www.renaissancesoftware.net/blog/archives/46/feed</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
		<item>
		<title>Deep Agile Panel Questions &#8211; Documentation</title>
		<link>http://www.renaissancesoftware.net/blog/archives/44</link>
		<comments>http://www.renaissancesoftware.net/blog/archives/44#comments</comments>
		<pubDate>Wed, 13 May 2009 18:21:55 +0000</pubDate>
		<dc:creator>jwgrenning</dc:creator>
				<category><![CDATA[Agile Development]]></category>
		<category><![CDATA[Documentation]]></category>
		<category><![CDATA[Test Driven Development]]></category>
		<category><![CDATA[Agile Documentation]]></category>
		<category><![CDATA[Agile Embedded]]></category>
		<category><![CDATA[Deep Agile Embedded]]></category>

		<guid isPermaLink="false">http://www.renaissancesoftware.net/blog/?p=44</guid>
		<description><![CDATA[This is the third in my Deep Agile Embedded Panel Questions series. The question is: We had a team doing agile. To them that included not doing any documentation. We need documentation once we go into maintenance. Is doing documentation allowed in Agile? The short answer is yes. Agile does allow documentation. Do you think [...]]]></description>
		<wfw:commentRss>http://www.renaissancesoftware.net/blog/archives/44/feed</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Don&#8217;t Let Embedded Tool Chain Slow You Down.</title>
		<link>http://www.renaissancesoftware.net/blog/archives/41</link>
		<comments>http://www.renaissancesoftware.net/blog/archives/41#comments</comments>
		<pubDate>Wed, 01 Apr 2009 22:55:15 +0000</pubDate>
		<dc:creator>jwgrenning</dc:creator>
				<category><![CDATA[Agile Development]]></category>
		<category><![CDATA[Embedded TDD]]></category>
		<category><![CDATA[Test Driven Development]]></category>
		<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[Embedded]]></category>
		<category><![CDATA[Hardware]]></category>
		<category><![CDATA[TDD]]></category>

		<guid isPermaLink="false">http://www.renaissancesoftware.net/blog/?p=41</guid>
		<description><![CDATA[During my TDD session at the Embedded Systems Conference yesterday, I did a demo. Before the demo, I make the case for TDD as a way to prevent bugs (see Physics of TDD). For the live demo I usually code on my mac and run the tests there as well. The question always comes up: [...]]]></description>
		<wfw:commentRss>http://www.renaissancesoftware.net/blog/archives/41/feed</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
	</channel>
</rss>

