<?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>Managing Product Development &#187; testing</title>
	<atom:link href="http://www.jrothman.com/blog/mpd/category/testing/feed" rel="self" type="application/rss+xml" />
	<link>http://www.jrothman.com/blog/mpd</link>
	<description>Management, especially good management, is hard to do. This blog is for people who want to think about how they manage people, projects, and risk.</description>
	<lastBuildDate>Thu, 24 May 2012 13:28:53 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.2</generator>
		<item>
		<title>Roy&#8217;s Analogy for Unit and Integration Testing</title>
		<link>http://www.jrothman.com/blog/mpd/2008/06/roys-analogy-for-unit-and-integration-testing.html</link>
		<comments>http://www.jrothman.com/blog/mpd/2008/06/roys-analogy-for-unit-and-integration-testing.html#comments</comments>
		<pubDate>Mon, 02 Jun 2008 15:00:30 +0000</pubDate>
		<dc:creator>Johanna</dc:creator>
				<category><![CDATA[testing]]></category>

		<guid isPermaLink="false">http://jrothman.com/blog/mpd/2008/06/roys-analogy-for-unit-and-integration-testing.html</guid>
		<description><![CDATA[I like Roy&#8217;s analogy about the difference between unit and integration testing: Unit testing vs. Integration Testing : The Restaurant Analogy.]]></description>
			<content:encoded><![CDATA[<p>I like Roy&#8217;s analogy about the difference between unit and integration testing: <a href="http://weblogs.asp.net/rosherove/archive/2008/05/31/unit-testing-vs-integration-testing-the-restaurant-analogy.aspx" target="_blank">Unit testing vs. Integration Testing : The Restaurant Analogy</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.jrothman.com/blog/mpd/2008/06/roys-analogy-for-unit-and-integration-testing.html/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>A Sometimes Useful Practice: One Automated Test per Feature</title>
		<link>http://www.jrothman.com/blog/mpd/2005/08/a-sometimes-useful-practice-one-automated-test-per-feature.html</link>
		<comments>http://www.jrothman.com/blog/mpd/2005/08/a-sometimes-useful-practice-one-automated-test-per-feature.html#comments</comments>
		<pubDate>Thu, 18 Aug 2005 15:31:00 +0000</pubDate>
		<dc:creator>Johanna</dc:creator>
				<category><![CDATA[testing]]></category>
		<category><![CDATA[automated tests]]></category>

		<guid isPermaLink="false">http://jrothman.com/blog/mpd/?p=8121</guid>
		<description><![CDATA[&#160; Not every product has smoke tests (a series of tests you can run after each build to make sure the product works well enough to continue development and testing). Smoke tests provide early feedback to developers about their work. &#8230; <a href="http://www.jrothman.com/blog/mpd/2005/08/a-sometimes-useful-practice-one-automated-test-per-feature.html">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>&nbsp;</p>
<p>Not every product has smoke tests (a series of tests you can run after each build to make sure the product works well enough to continue development and testing). Smoke tests provide early feedback to developers about their work. So, for the last several years, I&#8217;ve been suggesting to my clients that as they develop a feature, they include one short automated test for that feature in the smoke test. This test allows the developers to know their changes didn&#8217;t break the product.</p>
<p>Most of the time, that suggestion works. Some groups have found that just the discussion of what they wanted to insert into a smoke test was a great way to discuss the exceptions and make sure they&#8217;d handled the exceptions. And building a smoke test this way seemed relatively painless.</p>
<p>But one group has had trouble with this suggestion. A few of their developers are quite happy to create lots of automated tests per feature. And, their automated tests carefully tiptoe around the feature, avoiding anything that anyone would remotely call testing of the feature. The result is they have a large automated smoke test that tells them nothing. So for them, this is not a useful practice&#8211;as it stands.</p>
<p>I&#8217;ve suggested that each developer limit the number of smoke tests he or she develops to one per use case. Each developer gets to choose, and presents that choice, along with the smoke test to the rest of the group during a walkthrough.</p>
<p>This isn&#8217;t optimal, but the people in the group are becoming accustomed to receiving feedback about their work. With the way they&#8217;d been implementing &#8220;smoke&#8221; tests, they prevented themselves from seeing any feedback about their work. This technique might help.</p>
<p>So consider creating one automated test per feature as you implement. It might be a useful practice. But if people are preventing themselves from seeing feedback on their code, consider some other practice.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.jrothman.com/blog/mpd/2005/08/a-sometimes-useful-practice-one-automated-test-per-feature.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Extended Random Regression Testing</title>
		<link>http://www.jrothman.com/blog/mpd/2004/05/extended-random-regression-testing.html</link>
		<comments>http://www.jrothman.com/blog/mpd/2004/05/extended-random-regression-testing.html#comments</comments>
		<pubDate>Fri, 21 May 2004 08:14:00 +0000</pubDate>
		<dc:creator>Johanna</dc:creator>
				<category><![CDATA[testing]]></category>
		<category><![CDATA[product development]]></category>

		<guid isPermaLink="false">http://jrothman.com/blog/mpd/?p=8252</guid>
		<description><![CDATA[&#160; I&#8217;ve been at the STAR conference this week, and Cem Kaner&#8216;s keynote talk yesterday discussed the idea of extended random regression testing &#8212; take all your programmatic tests, and run them in random sequences for a long time. You&#8217;ll &#8230; <a href="http://www.jrothman.com/blog/mpd/2004/05/extended-random-regression-testing.html">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>&nbsp;</p>
<p>I&#8217;ve been at the <a href="http://www.sqe.com/stareast">STAR</a> conference this week, and <a href="http://blackbox.cs.fit.edu/blog/kaner/">Cem Kaner</a>&#8216;s keynote talk yesterday discussed the idea of extended random regression testing &#8212; take all your programmatic tests, and run them in random sequences for a long time. You&#8217;ll find defects you cannot find just running the tests by themselves. Here&#8217;s the logic behind this technique:</p>
<ul>
<li>The systems we develop and test today are more frequently many thousands or millions of lines of code, rather than only single-digit thousands of lines of code.</li>
<li>You can&#8217;t adequately (and note, that&#8217;s not fully, that just adequately) test such a system with only manual testing, you need programmatic testing to adequately cover a large system.</li>
<li>Once you have created programmatic tests, you can string the tests together in long sequences, and find problems that don&#8217;t show up when you test with each test on its own.</li>
</ul>
<p>I used this technique (unknowingly) when I tested library calls for an application many years ago. I was surprised at what I did find. I expected to find functional errors in the library code. But I didn&#8217;t. Each library call was successful. But the program that ran the calls crashed. I had unknowingly perturbed memory leaks, memory corruption (uninitialized counters and pointers), things I had (naively) not expected to find. (You need testers who can write small programs to perform this kind of testing. If none of your testers have this capability, you may have <a href="http://www.jrothman.com/Papers/Nomoresecondclasstesters.html">second class testers</a>. )</p>
<p>I can&#8217;t imagine a large system that wouldn&#8217;t benefit from using this technique. (Please tell me the circumstances under which you think this technique is not useful.) Even if you&#8217;re working in a test-driven environment, developing tests before developing code, you can still benefit from this technique as your system grows.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.jrothman.com/blog/mpd/2004/05/extended-random-regression-testing.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

