<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://blogs.msdn.com/utility/FeedStylesheets/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/"><channel><title>So What Should A Test Case Look Like?</title><link>http://blogs.msdn.com/b/micahel/archive/2005/05/20/sowhatshouldatestcaselooklike.aspx</link><description>What if you had a test case that looked like this? (Assuming a shape-drawing application such as Microsoft Visio...) 
 Logical.Projects.CreateNewProject(); 
 Point rectangleStart = DataManager.ScenePointProvider.GetNextValue(); Point rectangleEnd =</description><dc:language>en-US</dc:language><generator>Telligent Evolution Platform Developer Build (Build: 5.6.50428.7875)</generator><item><title>From Accountant To Scientist</title><link>http://blogs.msdn.com/b/micahel/archive/2005/05/20/sowhatshouldatestcaselooklike.aspx#447254</link><pubDate>Wed, 03 Aug 2005 20:45:44 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:447254</guid><dc:creator>The Braidy Tester</dc:creator><description>In many of my posts I have alluded to the automation stack my team is building, but I have not provided...&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=447254" width="1" height="1"&gt;</description></item><item><title>From Accountant To Scientist</title><link>http://blogs.msdn.com/b/micahel/archive/2005/05/20/sowhatshouldatestcaselooklike.aspx#441018</link><pubDate>Wed, 20 Jul 2005 20:32:09 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:441018</guid><dc:creator>The Braidy Tester</dc:creator><description>In many of my posts I have alluded to the automation stack my team is building, but I have not provided...&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=441018" width="1" height="1"&gt;</description></item><item><title>New Team System Stuff - 2005-05-25</title><link>http://blogs.msdn.com/b/micahel/archive/2005/05/20/sowhatshouldatestcaselooklike.aspx#421916</link><pubDate>Thu, 26 May 2005 01:35:27 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:421916</guid><dc:creator>Rob Caron's Blog</dc:creator><description>Visual Studio Team System&lt;br&gt;&lt;br&gt;Yesterday marked the one-year anniversary of the public announcement of...&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=421916" width="1" height="1"&gt;</description></item><item><title>re: So What Should A Test Case Look Like?</title><link>http://blogs.msdn.com/b/micahel/archive/2005/05/20/sowhatshouldatestcaselooklike.aspx#421875</link><pubDate>Thu, 26 May 2005 00:38:04 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:421875</guid><dc:creator>humbugreality</dc:creator><description>Michael: It sounds like you are asking &amp;quot;What are you verifying?&amp;quot; One of my next posts will talk about how we've (mostly) decoupled verification from execution, allowing the test case to be completely ignorant about what is being verified and what that verification involves. This lets us reuse a single test in multiple contexts: it can be a Build Verification Test by turning off much of the verification, or it can be a comprehensive test by running it multiple times and having Execution Behavior Manager (&lt;a rel="nofollow" target="_new" href="http://blogs.msdn.com/micahel/archive/2005/05/25/OneMethodToRuleThemAll.aspx"&gt;http://blogs.msdn.com/micahel/archive/2005/05/25/OneMethodToRuleThemAll.aspx&lt;/a&gt;) run through the various implementations of each method with all verification enabled. Memory leaks can be caught or not by switching that part of the verification model on or off. Any number of microbehaviors (e.g., drawing a rectangle, then deleting it, then drawing a new one, then moving it to the proper location) could be injected along the way to fulfilling the semantics of an LFM method. What a test case is testing depends largely on its context.&lt;br&gt;&lt;br&gt;Many other aspects I think are simply setup details - which is to say context in a different context. &amp;lt;g/&amp;gt; Running the test case at multiple resolutions could be as easy as looping through a series of resolutions, setting the screen to each resolution and then executing this test.&lt;br&gt;&lt;br&gt;Separating the semantics of a test (what it does) from its implementation (how it does it) from its verification (what it is checking) can complicate matters when you want to know all of this at once. Maintenance of each piece, however, is much simpler. Also, we have found that once you get your head wrapped around dealing with each of these separately (which takes some doing, for sure!) it is pretty rare to actually need to smush everything back together again.&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=421875" width="1" height="1"&gt;</description></item><item><title>re: So What Should A Test Case Look Like?</title><link>http://blogs.msdn.com/b/micahel/archive/2005/05/20/sowhatshouldatestcaselooklike.aspx#421868</link><pubDate>Thu, 26 May 2005 00:12:55 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:421868</guid><dc:creator>humbugreality</dc:creator><description>Tester: We've decoupled (well, mostly anyway) verification from execution, so the test case doesn't have to worry about verification at all. I'll post more on that soon!&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=421868" width="1" height="1"&gt;</description></item><item><title>re: So What Should A Test Case Look Like?</title><link>http://blogs.msdn.com/b/micahel/archive/2005/05/20/sowhatshouldatestcaselooklike.aspx#421310</link><pubDate>Tue, 24 May 2005 08:51:10 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:421310</guid><dc:creator>Michael Bolton</dc:creator><description>The attributes that you mention are worthy, but shouldn't the list contain something about the risk that you're trying to test for, or the theory of error that might be at work?&lt;br&gt;&lt;br&gt;I mean:  this test could identify a memory leak (especially if run a sufficient number of times); it could run through big sets of values; it could trigger a crash.  But suppose that the user that you're simulating tried to create a rectangle, and then changed her mind and deleted it.  Could this test make sure that the SceneElements object can handle the deletion properly, free the memory correctly, display the data in an appropriate way on display resolutions of various sizes?  Maybe not--and that would be okay.  I see to some degree what the test is supposed to DO.  I find it harder to see what the test is supposed to TEST.&lt;br&gt;&lt;br&gt;Cheers,&lt;br&gt;&lt;br&gt;---Michael B.&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=421310" width="1" height="1"&gt;</description></item><item><title>re: So What Should A Test Case Look Like?</title><link>http://blogs.msdn.com/b/micahel/archive/2005/05/20/sowhatshouldatestcaselooklike.aspx#420764</link><pubDate>Sat, 21 May 2005 22:24:59 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:420764</guid><dc:creator>Tester</dc:creator><description>How is this test confirming for expected results?  What if the rectangle isn't drawn?&lt;br&gt;What if the app blows up, where do you test for unexpected failures?&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=420764" width="1" height="1"&gt;</description></item><item><title>re: So What Should A Test Case Look Like?</title><link>http://blogs.msdn.com/b/micahel/archive/2005/05/20/sowhatshouldatestcaselooklike.aspx#420490</link><pubDate>Fri, 20 May 2005 19:25:45 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:420490</guid><dc:creator>AndrewSeven</dc:creator><description>&amp;quot;Now let me explain the technology we are building to help us reach that vision.&amp;quot;&lt;br&gt;&lt;br&gt;The Friday cliff hanger! :D&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=420490" width="1" height="1"&gt;</description></item></channel></rss>