<?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: To Test or Not to Test? I Say Test.</title>
	<atom:link href="http://steve.vinoski.net/blog/2009/05/26/to-test-or-not-to-test-i-say-test/feed/" rel="self" type="application/rss+xml" />
	<link>http://steve.vinoski.net/blog/2009/05/26/to-test-or-not-to-test-i-say-test/</link>
	<description>Ask forgiveness, not permission.</description>
	<lastBuildDate>Sat, 19 May 2012 14:32:40 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.5.1</generator>
	<item>
		<title>By: Steve Loughran</title>
		<link>http://steve.vinoski.net/blog/2009/05/26/to-test-or-not-to-test-i-say-test/comment-page-1/#comment-1438</link>
		<dc:creator>Steve Loughran</dc:creator>
		<pubDate>Fri, 29 May 2009 18:17:41 +0000</pubDate>
		<guid isPermaLink="false">http://steve.vinoski.net/blog/?p=400#comment-1438</guid>
		<description><![CDATA[I give a lecture to the local CS undergraduates on testing every year:
http://people.apache.org/~stevel/slides/testing.pdf

One problem I&#039;ve encountered is that some people in organisations (companies, standards bodies) got into their positions before the renaissance in testing began -one which Kent Beck and colleagues deserve the credit- and as a result, they often view the time spent testing as a waste. You have to lie and say you are debugging, which is what they can relate to.]]></description>
		<content:encoded><![CDATA[<p>I give a lecture to the local CS undergraduates on testing every year:<br />
<a href="http://people.apache.org/~stevel/slides/testing.pdf" rel="nofollow">http://people.apache.org/~stevel/slides/testing.pdf</a></p>
<p>One problem I&#8217;ve encountered is that some people in organisations (companies, standards bodies) got into their positions before the renaissance in testing began -one which Kent Beck and colleagues deserve the credit- and as a result, they often view the time spent testing as a waste. You have to lie and say you are debugging, which is what they can relate to.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Darach</title>
		<link>http://steve.vinoski.net/blog/2009/05/26/to-test-or-not-to-test-i-say-test/comment-page-1/#comment-1434</link>
		<dc:creator>Darach</dc:creator>
		<pubDate>Thu, 28 May 2009 09:08:22 +0000</pubDate>
		<guid isPermaLink="false">http://steve.vinoski.net/blog/?p=400#comment-1434</guid>
		<description><![CDATA[Hi Steve,

I think you and Kent simply differ in your determination of &#039;high cost&#039; and so navigate the tradeoffs differently; perhaps as you both differ (greatly) in focus.

We can&#039;t avoid bugs. But we can do a lot to ensure that the bugs we do write are &#039;higher quality bugs&#039;. IBM&#039;s Orthogonal Defect Classification (ODC) scheme/methodology is one good example.

http://www.research.ibm.com/softeng/ODC/ODC.HTM

The trick it seems, is ensuring project teams all agree on how to navigate the cost benefit tradeoffs and are informed enough (continuously) so that these tradeoffs can be tweaked and tuned over time.

Defining an explicit test strategy on day one certainly helps focus efforts in the right direction. The maturity to follow that strategy empowers teams to meet quality demands. The wisdom to adapt/tailor it to changing needs/focus is needed to scale it over time.

Cheers,

Darach.]]></description>
		<content:encoded><![CDATA[<p>Hi Steve,</p>
<p>I think you and Kent simply differ in your determination of &#8216;high cost&#8217; and so navigate the tradeoffs differently; perhaps as you both differ (greatly) in focus.</p>
<p>We can&#8217;t avoid bugs. But we can do a lot to ensure that the bugs we do write are &#8216;higher quality bugs&#8217;. IBM&#8217;s Orthogonal Defect Classification (ODC) scheme/methodology is one good example.</p>
<p><a href="http://www.research.ibm.com/softeng/ODC/ODC.HTM" rel="nofollow">http://www.research.ibm.com/softeng/ODC/ODC.HTM</a></p>
<p>The trick it seems, is ensuring project teams all agree on how to navigate the cost benefit tradeoffs and are informed enough (continuously) so that these tradeoffs can be tweaked and tuned over time.</p>
<p>Defining an explicit test strategy on day one certainly helps focus efforts in the right direction. The maturity to follow that strategy empowers teams to meet quality demands. The wisdom to adapt/tailor it to changing needs/focus is needed to scale it over time.</p>
<p>Cheers,</p>
<p>Darach.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Gergely Orosz</title>
		<link>http://steve.vinoski.net/blog/2009/05/26/to-test-or-not-to-test-i-say-test/comment-page-1/#comment-1429</link>
		<dc:creator>Gergely Orosz</dc:creator>
		<pubDate>Tue, 26 May 2009 20:40:36 +0000</pubDate>
		<guid isPermaLink="false">http://steve.vinoski.net/blog/?p=400#comment-1429</guid>
		<description><![CDATA[Absolutely agree. I work on an open source ECMS system (http://www.sensenet.hu) having been developed for over 2 years now. We have about 500 unit tests and recently we had to make some breaking changes at the very bottom layer. I absolutely agree about tests making programmers more courageous: if we hadn&#039;t been sure that the tests had at least 95% percent of all use cases covered we wouldn&#039;t have been confident in making (all) the changes that were necessary. And it was obvious that something was wrong until even one test failed.

And the other way round: we receive the most bug reports on features not tested - the GUI and client side. Thats another story on how those kinds of tests could be automated.]]></description>
		<content:encoded><![CDATA[<p>Absolutely agree. I work on an open source ECMS system (<a href="http://www.sensenet.hu" rel="nofollow">http://www.sensenet.hu</a>) having been developed for over 2 years now. We have about 500 unit tests and recently we had to make some breaking changes at the very bottom layer. I absolutely agree about tests making programmers more courageous: if we hadn&#8217;t been sure that the tests had at least 95% percent of all use cases covered we wouldn&#8217;t have been confident in making (all) the changes that were necessary. And it was obvious that something was wrong until even one test failed.</p>
<p>And the other way round: we receive the most bug reports on features not tested &#8211; the GUI and client side. Thats another story on how those kinds of tests could be automated.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: William Pietri</title>
		<link>http://steve.vinoski.net/blog/2009/05/26/to-test-or-not-to-test-i-say-test/comment-page-1/#comment-1428</link>
		<dc:creator>William Pietri</dc:creator>
		<pubDate>Tue, 26 May 2009 16:31:05 +0000</pubDate>
		<guid isPermaLink="false">http://steve.vinoski.net/blog/?p=400#comment-1428</guid>
		<description><![CDATA[Sounds like I agree with both of you.

I develop and coach almost entirely at startups, and I teach people to test from day 1. Testing supports refactoring, and it enables rapid, radical changes in product direction, both vital in startups. If the question is &quot;test or no test&quot;, my answer is always: test, test, test!

Still, Kent&#039;s absolutely right: there are cost-benefit tradeoffs involved. If somebody has a couple years experience with TDD and they have the discipline to actually backfill tests later on, I have no problem with them leaving small things untested if they&#039;re currently hard to test. What&#039;s hard to test today may be easy to test in a couple of weeks.

More accurately, I have no problem just as long as they&#039;re working in the release-early-and-often context that Kent is. If you make it very easy to report bugs (and hopefully automatically report exceptions), then your customers will quickly tell you when you&#039;ve cut too many corners on quality. Being too cavalier for a few hours or a few days is survivable, especially, as Steve Vinoski points out, on the left edge of the adoption curve. Being sloppy for weeks or months, though, is one of the many ways to kill your startup dead.]]></description>
		<content:encoded><![CDATA[<p>Sounds like I agree with both of you.</p>
<p>I develop and coach almost entirely at startups, and I teach people to test from day 1. Testing supports refactoring, and it enables rapid, radical changes in product direction, both vital in startups. If the question is &#8220;test or no test&#8221;, my answer is always: test, test, test!</p>
<p>Still, Kent&#8217;s absolutely right: there are cost-benefit tradeoffs involved. If somebody has a couple years experience with TDD and they have the discipline to actually backfill tests later on, I have no problem with them leaving small things untested if they&#8217;re currently hard to test. What&#8217;s hard to test today may be easy to test in a couple of weeks.</p>
<p>More accurately, I have no problem just as long as they&#8217;re working in the release-early-and-often context that Kent is. If you make it very easy to report bugs (and hopefully automatically report exceptions), then your customers will quickly tell you when you&#8217;ve cut too many corners on quality. Being too cavalier for a few hours or a few days is survivable, especially, as Steve Vinoski points out, on the left edge of the adoption curve. Being sloppy for weeks or months, though, is one of the many ways to kill your startup dead.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Kent Beck</title>
		<link>http://steve.vinoski.net/blog/2009/05/26/to-test-or-not-to-test-i-say-test/comment-page-1/#comment-1427</link>
		<dc:creator>Kent Beck</dc:creator>
		<pubDate>Tue, 26 May 2009 14:31:34 +0000</pubDate>
		<guid isPermaLink="false">http://steve.vinoski.net/blog/?p=400#comment-1427</guid>
		<description><![CDATA[Ah the danger of a (slightly) clever title. In the blog I describe two one-line fixes. The one I could test in a few minutes I wrote a test for. The one that would have taken me several hours to test when it was pretty obviously correct I didn&#039;t write a test for.

Even though I am at an early stage of the product, I still write quite a few tests. The difference from my usual practice is that if the cost is high and the risk is low I don&#039;t insist on testing everything. The question I ask, because this is such an early stage product and I need customer feedback to survive, is, &quot;Will this test help me get more customer feedback sooner?&quot; In a more mature product I ask, &quot;Will this test reduce cost over time?&quot; That&#039;s the distinction I was trying to make.

I was surprised because I had thought that the &quot;correct&quot; rule wasn&#039;t flexible. Turns out everything we do as programmers should serve business purposes. That shouldn&#039;t have been a surprise but it was.]]></description>
		<content:encoded><![CDATA[<p>Ah the danger of a (slightly) clever title. In the blog I describe two one-line fixes. The one I could test in a few minutes I wrote a test for. The one that would have taken me several hours to test when it was pretty obviously correct I didn&#8217;t write a test for.</p>
<p>Even though I am at an early stage of the product, I still write quite a few tests. The difference from my usual practice is that if the cost is high and the risk is low I don&#8217;t insist on testing everything. The question I ask, because this is such an early stage product and I need customer feedback to survive, is, &#8220;Will this test help me get more customer feedback sooner?&#8221; In a more mature product I ask, &#8220;Will this test reduce cost over time?&#8221; That&#8217;s the distinction I was trying to make.</p>
<p>I was surprised because I had thought that the &#8220;correct&#8221; rule wasn&#8217;t flexible. Turns out everything we do as programmers should serve business purposes. That shouldn&#8217;t have been a surprise but it was.</p>
]]></content:encoded>
	</item>
</channel>
</rss>
