<?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: Basic Blocks Aren&#8217;t So Basic</title>
	<atom:link href="http://www.testingmentor.com/imtesty/2009/11/18/basic-blocks-arent-so-basic/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.testingmentor.com/imtesty/2009/11/18/basic-blocks-arent-so-basic/</link>
	<description>Treatises on the practice of software testing</description>
	<lastBuildDate>Sat, 03 Jul 2010 11:49:32 -0400</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
		<item>
		<title>By: I.M. Testy &#8250; Reconsidering Code Coverage</title>
		<link>http://www.testingmentor.com/imtesty/2009/11/18/basic-blocks-arent-so-basic/comment-page-1/#comment-314</link>
		<dc:creator>I.M. Testy &#8250; Reconsidering Code Coverage</dc:creator>
		<pubDate>Wed, 25 Nov 2009 10:44:22 +0000</pubDate>
		<guid isPermaLink="false">http://testingmentor.com/imtesty/2009/11/18/basic-blocks-arent-so-basic/#comment-314</guid>
		<description>[...] the same code differently depending on how it is compiled (debug, retail, etc.) and previously wrote about my study. Some of the basic ways to measure code coverage (not test coverage) [...]</description>
		<content:encoded><![CDATA[<p>[...] the same code differently depending on how it is compiled (debug, retail, etc.) and previously wrote about my study. Some of the basic ways to measure code coverage (not test coverage) [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: testingmentor</title>
		<link>http://www.testingmentor.com/imtesty/2009/11/18/basic-blocks-arent-so-basic/comment-page-1/#comment-278</link>
		<dc:creator>testingmentor</dc:creator>
		<pubDate>Thu, 19 Nov 2009 03:22:35 +0000</pubDate>
		<guid isPermaLink="false">http://testingmentor.com/imtesty/2009/11/18/basic-blocks-arent-so-basic/#comment-278</guid>
		<description>Hi Javier,

I would say just the reverse; that statement coverage is a sub-class of basic block coverage.

Thursday, May 14, 2009 12:26 PM by I.M.Testy</description>
		<content:encoded><![CDATA[<p>Hi Javier,</p>
<p>I would say just the reverse; that statement coverage is a sub-class of basic block coverage.</p>
<p>Thursday, May 14, 2009 12:26 PM by I.M.Testy</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: testingmentor</title>
		<link>http://www.testingmentor.com/imtesty/2009/11/18/basic-blocks-arent-so-basic/comment-page-1/#comment-277</link>
		<dc:creator>testingmentor</dc:creator>
		<pubDate>Thu, 19 Nov 2009 03:22:23 +0000</pubDate>
		<guid isPermaLink="false">http://testingmentor.com/imtesty/2009/11/18/basic-blocks-arent-so-basic/#comment-277</guid>
		<description>Hello BJ,

Based on the defintion of a basic block, can it be a sub-class of statement code coverage testing?

Thanks,

Javier Andrés Cáceres Alvis

Blog Personal: http://speechflow.spaces.live.com/

Blog Intel: http://software.intel.com/en-us/blogs/author/javierandrescaceres/

Monday, May 11, 2009 10:23 PM by JavierCaceresAlvis</description>
		<content:encoded><![CDATA[<p>Hello BJ,</p>
<p>Based on the defintion of a basic block, can it be a sub-class of statement code coverage testing?</p>
<p>Thanks,</p>
<p>Javier Andrés Cáceres Alvis</p>
<p>Blog Personal: <a href="http://speechflow.spaces.live.com/" rel="nofollow">http://speechflow.spaces.live.com/</a></p>
<p>Blog Intel: <a href="http://software.intel.com/en-us/blogs/author/javierandrescaceres/" rel="nofollow">http://software.intel.com/en-us/blogs/author/javierandrescaceres/</a></p>
<p>Monday, May 11, 2009 10:23 PM by JavierCaceresAlvis</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: testingmentor</title>
		<link>http://www.testingmentor.com/imtesty/2009/11/18/basic-blocks-arent-so-basic/comment-page-1/#comment-276</link>
		<dc:creator>testingmentor</dc:creator>
		<pubDate>Thu, 19 Nov 2009 03:22:04 +0000</pubDate>
		<guid isPermaLink="false">http://testingmentor.com/imtesty/2009/11/18/basic-blocks-arent-so-basic/#comment-276</guid>
		<description>No book on testing would be complete without a bug list. HWTSAM is no exception! Some “book people” call

Tuesday, April 07, 2009 7:28 PM by notes and rants</description>
		<content:encoded><![CDATA[<p>No book on testing would be complete without a bug list. HWTSAM is no exception! Some “book people” call</p>
<p>Tuesday, April 07, 2009 7:28 PM by notes and rants</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: testingmentor</title>
		<link>http://www.testingmentor.com/imtesty/2009/11/18/basic-blocks-arent-so-basic/comment-page-1/#comment-275</link>
		<dc:creator>testingmentor</dc:creator>
		<pubDate>Thu, 19 Nov 2009 03:21:45 +0000</pubDate>
		<guid isPermaLink="false">http://testingmentor.com/imtesty/2009/11/18/basic-blocks-arent-so-basic/#comment-275</guid>
		<description>I look forward to your post on measuring test coverage. Thanks for the tip on the UT book. I&#039;m also looking to xUnit Test Patterns book to beef up my argument for unit tests in our Rome-like projects for exactly the same reasons as you mentioned - reduce build breaks, assurance to system testers that they are not the first and last defence, and to show managers that shifting some test funds upstream will really save money downstream.

Thanks for sharing your thoughts, B.J!

Monday, March 16, 2009 3:14 AM by chai</description>
		<content:encoded><![CDATA[<p>I look forward to your post on measuring test coverage. Thanks for the tip on the UT book. I&#8217;m also looking to xUnit Test Patterns book to beef up my argument for unit tests in our Rome-like projects for exactly the same reasons as you mentioned &#8211; reduce build breaks, assurance to system testers that they are not the first and last defence, and to show managers that shifting some test funds upstream will really save money downstream.</p>
<p>Thanks for sharing your thoughts, B.J!</p>
<p>Monday, March 16, 2009 3:14 AM by chai</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: testingmentor</title>
		<link>http://www.testingmentor.com/imtesty/2009/11/18/basic-blocks-arent-so-basic/comment-page-1/#comment-274</link>
		<dc:creator>testingmentor</dc:creator>
		<pubDate>Thu, 19 Nov 2009 03:21:32 +0000</pubDate>
		<guid isPermaLink="false">http://testingmentor.com/imtesty/2009/11/18/basic-blocks-arent-so-basic/#comment-274</guid>
		<description>Hi Chai,

We must remember that block coverage is a very simple measure of structural coverage, but it is usually sufficient for unit level testing. It certainly is not a comprehensive measure structural testing effectiveness of complex code. Of course, the greatest value of measuring block and arc coverage of the source code is to help the tester identify areas of the code that have NOT been tested. 

Also, code coverage (block, decision, condition, path, etc.) can be measured. Unfortunately, many people assume code coverage and test coverage are synonomous. However, I disagree and think that assumption is very dangerous and misleading. In the book How We Test Software At Microsoft I try to explain how a few tests can achieve high code coverage measures without effective testing of the algorithm.

Unlike code coverage measures which are based on various control flow patterns there is no effective way to accurately measure test coverage. (This is a discussion unto itself, so I will leave that for a later post.)

Unfortunately, I don&#039;t have any hard figures that I can share; however, Watts Humphrey has presented some interesting data in his TSP/PSP documentation and studies. I will also say that the Agile community puts a huge emphasis on the importance of unit testing for good reason, and inside Microsoft unit testing is a best practice in our product groups. In fact, I can&#039;t think of any situation where unit testing would not be considered a best practice. I have encountered a few developers who were resistant to doing unit testing, and I just hand them a copy of Pragmatic Unit Testing by Andrews and Hunt and remind them they get paid for writing code that works, not code riddled with bugs. Not that I expect them to find all their bugs (because they won&#039;t), but I don&#039;t expect them to simply sit in their office and throw completely untested crap code at testers. (Of course, most developers that I know are professionals who are just as concerned with the quality of their work as are the testers who help assess the overall quality through more extensive testing.)

One way to convince management to schedule time for unit testing is to measure the cost of build breaks. At Microsoft we have daily builds in most of our product groups. If an untested dev check-in caused a build break the costs were pretty high. In one case that I am familiar with one team went from several build breaks per month to less than one build break per quarter by implementing a regimented unit testing strategy. This literally saved hundreds of thousands of dollars within the first year. Management really pays attention to numbers when there is a dollar sign in front of them.

Friday, March 13, 2009 2:33 AM by I.M.Testy</description>
		<content:encoded><![CDATA[<p>Hi Chai,</p>
<p>We must remember that block coverage is a very simple measure of structural coverage, but it is usually sufficient for unit level testing. It certainly is not a comprehensive measure structural testing effectiveness of complex code. Of course, the greatest value of measuring block and arc coverage of the source code is to help the tester identify areas of the code that have NOT been tested. </p>
<p>Also, code coverage (block, decision, condition, path, etc.) can be measured. Unfortunately, many people assume code coverage and test coverage are synonomous. However, I disagree and think that assumption is very dangerous and misleading. In the book How We Test Software At Microsoft I try to explain how a few tests can achieve high code coverage measures without effective testing of the algorithm.</p>
<p>Unlike code coverage measures which are based on various control flow patterns there is no effective way to accurately measure test coverage. (This is a discussion unto itself, so I will leave that for a later post.)</p>
<p>Unfortunately, I don&#8217;t have any hard figures that I can share; however, Watts Humphrey has presented some interesting data in his TSP/PSP documentation and studies. I will also say that the Agile community puts a huge emphasis on the importance of unit testing for good reason, and inside Microsoft unit testing is a best practice in our product groups. In fact, I can&#8217;t think of any situation where unit testing would not be considered a best practice. I have encountered a few developers who were resistant to doing unit testing, and I just hand them a copy of Pragmatic Unit Testing by Andrews and Hunt and remind them they get paid for writing code that works, not code riddled with bugs. Not that I expect them to find all their bugs (because they won&#8217;t), but I don&#8217;t expect them to simply sit in their office and throw completely untested crap code at testers. (Of course, most developers that I know are professionals who are just as concerned with the quality of their work as are the testers who help assess the overall quality through more extensive testing.)</p>
<p>One way to convince management to schedule time for unit testing is to measure the cost of build breaks. At Microsoft we have daily builds in most of our product groups. If an untested dev check-in caused a build break the costs were pretty high. In one case that I am familiar with one team went from several build breaks per month to less than one build break per quarter by implementing a regimented unit testing strategy. This literally saved hundreds of thousands of dollars within the first year. Management really pays attention to numbers when there is a dollar sign in front of them.</p>
<p>Friday, March 13, 2009 2:33 AM by I.M.Testy</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: testingmentor</title>
		<link>http://www.testingmentor.com/imtesty/2009/11/18/basic-blocks-arent-so-basic/comment-page-1/#comment-273</link>
		<dc:creator>testingmentor</dc:creator>
		<pubDate>Thu, 19 Nov 2009 03:21:21 +0000</pubDate>
		<guid isPermaLink="false">http://testingmentor.com/imtesty/2009/11/18/basic-blocks-arent-so-basic/#comment-273</guid>
		<description>Totally agree on the dangers in just relying on code coverage to say the job&#039;s done. People seldom catch sight of test coverage when they say they do code coverage. However, in companies such as mine, such a miopic view is largely a fallout of the budgeting constraints of a project - its hard enough to get effort for code coverage based developer tests budgeted, let alone the effort to guarantee quality when the code leaves the door for downstream testing. And the reason for this budget constraint? - a lack of belief in unit test ROI - not that much is tried out to form this prejudice anyway - it is just a dark continent of sorts and no one is willing to set aside a budget to explore for one&#039;s own what it has to offer.

To this end, I&#039;m inclined to believe that the availability of &quot;on-the-field&quot; ROI figures showing the benefits of unit tests in large development projects would go a long way in winning the debate on whether it is worthwhile to perform unit tests as a planned and budgeted activity. 

It would be great if you could shed some light on this topic -- in many cases this may translate to embark on an almost sisyphusian task -- but I&#039;m somehow optimistic that you may have some figures to share :-)

Cheers,

Chai

P.S.: I haven&#039;t yet read your book (but your posts and Alan&#039;s are compelling me ever more to 

order a copy :-)

Thursday, March 12, 2009 4:48 AM by chai</description>
		<content:encoded><![CDATA[<p>Totally agree on the dangers in just relying on code coverage to say the job&#8217;s done. People seldom catch sight of test coverage when they say they do code coverage. However, in companies such as mine, such a miopic view is largely a fallout of the budgeting constraints of a project &#8211; its hard enough to get effort for code coverage based developer tests budgeted, let alone the effort to guarantee quality when the code leaves the door for downstream testing. And the reason for this budget constraint? &#8211; a lack of belief in unit test ROI &#8211; not that much is tried out to form this prejudice anyway &#8211; it is just a dark continent of sorts and no one is willing to set aside a budget to explore for one&#8217;s own what it has to offer.</p>
<p>To this end, I&#8217;m inclined to believe that the availability of &#8220;on-the-field&#8221; ROI figures showing the benefits of unit tests in large development projects would go a long way in winning the debate on whether it is worthwhile to perform unit tests as a planned and budgeted activity. </p>
<p>It would be great if you could shed some light on this topic &#8212; in many cases this may translate to embark on an almost sisyphusian task &#8212; but I&#8217;m somehow optimistic that you may have some figures to share <img src='http://testingmentor.com/imtesty/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
<p>Cheers,</p>
<p>Chai</p>
<p>P.S.: I haven&#8217;t yet read your book (but your posts and Alan&#8217;s are compelling me ever more to </p>
<p>order a copy <img src='http://testingmentor.com/imtesty/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
<p>Thursday, March 12, 2009 4:48 AM by chai</p>
]]></content:encoded>
	</item>
</channel>
</rss>
