<?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>Five Testers From VC : VC IDE Testing</title><link>http://blogs.msdn.com/fivetestersfromvc/archive/tags/VC+IDE+Testing/default.aspx</link><description>Tags: VC IDE Testing</description><dc:language>en-US</dc:language><generator>CommunityServer 2.1 SP1 (Build: 61025.2)</generator><item><title>VC IDE Testing Tactics (and a beta1 plug!)</title><link>http://blogs.msdn.com/fivetestersfromvc/archive/2004/07/29/201223.aspx</link><pubDate>Fri, 30 Jul 2004 03:30:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:201223</guid><dc:creator>FiveTestersFromVc</dc:creator><slash:comments>0</slash:comments><comments>http://blogs.msdn.com/fivetestersfromvc/comments/201223.aspx</comments><wfw:commentRss>http://blogs.msdn.com/fivetestersfromvc/commentrss.aspx?PostID=201223</wfw:commentRss><description>&lt;P&gt;[Rob]&lt;/P&gt;
&lt;P&gt;You've probably had enough time to read the last post...Ok, so maybe we were reallllly busy getting our beta product release squared away so you can all get your free Visual Studio 2005 Express Beta1 downloads!&amp;nbsp; Grab it, have fun, win an &lt;?xml:namespace prefix = st1 ns = "urn:schemas-microsoft-com:office:smarttags" /&gt;&lt;st1:mswterms w:st="on"&gt;Xbox&lt;/st1:mswterms&gt;, tell me about what was good and what needs more! (There are also versions focusing on other programming languages and even web development!). &lt;A href="http://lab.msdn.microsoft.com/express/default.aspx"&gt;http://lab.msdn.microsoft.com/express/default.aspx&lt;/A&gt;&lt;?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P&gt;***&lt;/P&gt;
&lt;P&gt;&lt;EM&gt;Tactical thoughts&lt;/EM&gt;&lt;/P&gt;
&lt;P&gt;Thinking about all the things that go into&amp;nbsp;testing feature...is the API working? Are there any attack paths through this feature (is it secure)? Does it integrate with existing features? Does it depend on features (our group or another?!) that might change before lock down? Is the UI compliant with suite requirements?&amp;nbsp; Is the UI clear?&amp;nbsp; Are UI redundancies appropriate? What will our users think about our answers to these questions?&amp;nbsp; What happens to the UI when the product is localized (translated to another language)? What happens to the behavior of the feature when the product is localized? (Add a number of other questions from networking to user permission levels depending on the feature category...).&lt;o:p&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P&gt;The list appears endless, but luckily we have limited time (some&amp;nbsp;sarcasm on that&amp;nbsp;use of 'luckily', if you didn't notice)&amp;nbsp;to do our testing so we work with a finite set that makes sense for the feature in question.&lt;o:p&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P&gt;The highest urgency task is to get the feature tested for main stream functionality.&amp;nbsp; What will our customers need this to do?&amp;nbsp; What will our customers want this to do?&amp;nbsp; What assumptions may be made that could get this feature into trouble (and put the user into a confused or frustrated state)?&lt;o:p&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P&gt;We also want to see that the feature discoverable and useable.&amp;nbsp; The UI needs to indicate what will happen and let users know about progress if this takes time.&amp;nbsp; Keeping UI consistent so different tasks at least 'feel' familiar in the welcoming sense is valuable...but difficult when taking legacy features into a new arena (a challenge for many still useful feature sets now housed in a building of &lt;st1:mswterms w:st="on"&gt;.NET&lt;/st1:mswterms&gt; splendor).&amp;nbsp; Is there a point to upgrading old UI to match the new style if the old features are stable as is (and use the resources instead for new features and to fix bugs)?&amp;nbsp; Is old UI style a bug or an acceptable artifact of evolution?&lt;o:p&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P&gt;These questions are what test cases are all about.&amp;nbsp; Each test case seeks an answer. Customer feedback, experience,&amp;nbsp;and research help us to ask the right questions for our current product.&amp;nbsp; Once we have a base set of questions (Test Case Planning is a cyclical process, just as implementation is) we can move forward to measure the status of product drops based on the answers we get on test passes.&amp;nbsp;&amp;nbsp; We build our automation library which allows us to gather answers faster and feel more secure against regressions that could be introduced every time developers touch the product.&amp;nbsp; At the end of the cycle, we have an automation set that allows us to have a level of confidence that sustained engineering will be able to do service pack work while maintaining a high level of regression test coverage (while the front line team moves to the next generation product).&lt;o:p&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P&gt;[This posting is provided "AS IS" with no warranties, and confers no rights.&amp;nbsp;Use of any included script samples are subject to the terms specified at &lt;SPAN style="FONT-FAMILY: Arial"&gt;&lt;A title=http://www.microsoft.com/info/cpyright.htm href="http://www.microsoft.com/info/cpyright.htm" target=_blank&gt;&lt;SPAN style="COLOR: #002c99; FONT-FAMILY: 'Times New Roman'"&gt;&lt;SPAN title=http://www.microsoft.com/info/cpyright.htm&gt;http://www.microsoft.com/info/cpyright.htm&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/A&gt;&lt;/SPAN&gt;.]&lt;o:p&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=201223" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/fivetestersfromvc/archive/tags/VC+IDE+Testing/default.aspx">VC IDE Testing</category></item><item><title>well, since you asked twice...</title><link>http://blogs.msdn.com/fivetestersfromvc/archive/2004/05/27/143455.aspx</link><pubDate>Fri, 28 May 2004 03:05:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:143455</guid><dc:creator>FiveTestersFromVc</dc:creator><slash:comments>1</slash:comments><comments>http://blogs.msdn.com/fivetestersfromvc/comments/143455.aspx</comments><wfw:commentRss>http://blogs.msdn.com/fivetestersfromvc/commentrss.aspx?PostID=143455</wfw:commentRss><description>&lt;P&gt;[Rob]&lt;/P&gt;
&lt;P&gt;Woon asked in his comment about the % automation we have with our IDE tests.&lt;/P&gt;
&lt;P&gt;Currently, we are at roughly 50% automated in the IDE compared to the total number of active test cases.&amp;nbsp; These tests range from DTE manipulations to actual UI interations the way the user would (drag and drop, button clicking, resizing, ...).&amp;nbsp; One way to get at the UI elements is through MSAA.&amp;nbsp; This works fairly well for standard controls.&amp;nbsp; Custom controls make the story more difficult (which is why we resourt to DTE calls if our test harness can't handle certain controls).&lt;/P&gt;
&lt;P&gt;It takes about 2-3 weeks for 15 people to cover all the manual test cases we currently have for the VC IDE.&amp;nbsp; And this doesn't include common shell features that the VS team handles.&amp;nbsp; &lt;/P&gt;
&lt;P&gt;Our automation's primary purpose is to give us rapid general status on build drops each day (although our automation is split up between daily and weekly test sets).&amp;nbsp; The automation set does find bugs, but by far the most bugs are found through manual testing of new features.&amp;nbsp; Automation is our 'security blanket'&amp;nbsp;&amp;nbsp;as we can get a breadth of coverage in 24 hrs with a second depth after ~72 hours (looking for regressions from the previous known state) rather than waiting for three weeks (which also uses up the whole team's attention) with manual.&amp;nbsp; Both are vital.&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=143455" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/fivetestersfromvc/archive/tags/VC+IDE+Testing/default.aspx">VC IDE Testing</category></item><item><title>VC IDE Testing: cycle check points</title><link>http://blogs.msdn.com/fivetestersfromvc/archive/2004/04/15/114289.aspx</link><pubDate>Fri, 16 Apr 2004 04:14:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:114289</guid><dc:creator>FiveTestersFromVc</dc:creator><slash:comments>2</slash:comments><comments>http://blogs.msdn.com/fivetestersfromvc/comments/114289.aspx</comments><wfw:commentRss>http://blogs.msdn.com/fivetestersfromvc/commentrss.aspx?PostID=114289</wfw:commentRss><description>&lt;P class=MsoNormal&gt;&lt;FONT face=Arial size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;[Rob]&amp;nbsp; &lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;FONT face=Arial size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;B&gt;&lt;FONT face=Arial size=2&gt;&lt;SPAN style="FONT-WEIGHT: bold; FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;General IDE testing cycle status points (iterations on/between any two points&amp;#8230;)&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/B&gt;&lt;/P&gt;
&lt;OL style="MARGIN-TOP: 0in" type=1&gt;
&lt;LI class=MsoNormal&gt;&lt;FONT face=Arial size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;Specification review&lt;/SPAN&gt;&lt;/FONT&gt; 
&lt;LI class=MsoNormal&gt;&lt;FONT face=Arial size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;Test Plan Design&lt;/SPAN&gt;&lt;/FONT&gt; 
&lt;LI class=MsoNormal&gt;&lt;FONT face=Arial size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;Test Plan Review&lt;/SPAN&gt;&lt;/FONT&gt; 
&lt;LI class=MsoNormal&gt;&lt;FONT face=Arial size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;Developer Implementation design&lt;/SPAN&gt;&lt;/FONT&gt; 
&lt;LI class=MsoNormal&gt;&lt;FONT face=Arial size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;Developer Implementation design review&lt;/SPAN&gt;&lt;/FONT&gt; 
&lt;LI class=MsoNormal&gt;&lt;FONT face=Arial size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;Test case design&lt;/SPAN&gt;&lt;/FONT&gt;&amp;nbsp;&lt;SPAN class=734340501-16042004&gt;[exploratory, user feedback, regression]&lt;/SPAN&gt; 
&lt;LI class=MsoNormal&gt;&lt;FONT face=Arial size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;Automation Design&lt;/SPAN&gt;&lt;/FONT&gt; 
&lt;LI class=MsoNormal&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;Automation Implementation and review&lt;/SPAN&gt; 
&lt;LI class=MsoNormal&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;Manual&lt;/SPAN&gt;&lt;FONT face=Arial size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt; Test Pass&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face="Times New Roman" size=3&gt; &lt;/FONT&gt;&lt;/SPAN&gt;
&lt;LI class=MsoNormal&gt;&lt;FONT face=Arial size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;Automation run&lt;/SPAN&gt;&lt;/FONT&gt; 
&lt;LI class=MsoNormal&gt;&lt;FONT face=Arial size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;Project status evaluation and reporting&lt;/SPAN&gt;&lt;/FONT&gt; &lt;/LI&gt;&lt;/OL&gt;
&lt;P class=MsoNormal&gt;&lt;FONT face=Arial size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;Since the organization is broken up between disciplines (Program management, Development, and Test), cross discipline communication helps deal with the implied dependencies in the eleven points above.&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;B&gt;&lt;FONT face=Arial size=2&gt;&lt;SPAN style="FONT-WEIGHT: bold; FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;A typical cycle contains zero or more of the following obstacles based on the above points:&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/B&gt;&lt;/P&gt;
&lt;OL style="MARGIN-TOP: 0in" type=1&gt;
&lt;LI class=MsoNormal&gt;&lt;FONT face=Arial size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;PM (program manager group) delivers spec(s) late, preventing review by schedule&lt;/SPAN&gt;&lt;/FONT&gt; 
&lt;LI class=MsoNormal&gt;&lt;FONT face=Arial size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;test plans delayed by changing specs/parallel product cycle effort lowering priority&lt;/SPAN&gt;&lt;/FONT&gt; 
&lt;LI class=MsoNormal&gt;&lt;FONT face=Arial size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;test plan reviews are cursory, resulting in missed holes fund later which cost more to correct&lt;/SPAN&gt;&lt;/FONT&gt; 
&lt;LI class=MsoNormal&gt;&lt;FONT face=Arial size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;the design is the code&lt;/SPAN&gt;&lt;/FONT&gt; 
&lt;LI class=MsoNormal&gt;&lt;FONT face=Arial size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;well, we can review the code&amp;#8230;or just use the feature&amp;#8230;&lt;/SPAN&gt;&lt;/FONT&gt; 
&lt;LI class=MsoNormal&gt;&lt;FONT face=Arial size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;test cases ended up being designed without complete specifications&amp;#8230;requires revisions regularly at added cost&lt;/SPAN&gt;&lt;/FONT&gt; 
&lt;LI class=MsoNormal&gt;&lt;FONT face=Arial size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;automation gets pushed back due to UI/feature churn making tests obsolete an hour before they are checked in&lt;/SPAN&gt;&lt;/FONT&gt; 
&lt;LI class=MsoNormal&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;Automation harness issues; changing requirements; dogfooding delays (a good thing, but causes progress trade-off) [dogfooding:&amp;nbsp; using VC drops to develop automation for testing VC drops&amp;#8230;]&lt;/SPAN&gt; 
&lt;LI class=MsoNormal&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;Manual Test Pass: can always count on them, but they take too long if automation not strategic or complete (temptation is to delay automation to get complete manual coverage creating an ever deepening hole&amp;#8230;bite the bullet and do the automation right so manual is only what can&amp;#8217;t/shouldn&amp;#8217;t be automated).&lt;/SPAN&gt; 
&lt;LI class=MsoNormal&gt;&lt;FONT face=Arial size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;matrix explosion (platforms * SKU&amp;#8217;s * architectures * permission levels;&amp;nbsp; pair wise testing save us!)&lt;/SPAN&gt;&lt;/FONT&gt; 
&lt;LI class=MsoNormal&gt;&lt;FONT face=Arial size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;What do you mean, &amp;#8220;make it green&amp;#8221;?!&amp;nbsp; [balancing quality driven vs. date driven product requirements]&lt;/SPAN&gt;&lt;/FONT&gt; &lt;/LI&gt;&lt;/OL&gt;
&lt;P class=MsoNormal&gt;&lt;B&gt;&lt;FONT face=Arial size=2&gt;&lt;SPAN style="FONT-WEIGHT: bold; FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;Some random elaborations:&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/B&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;FONT face=Arial size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;There&amp;#8217;s a lot of overlap at the beginning/end of product cycles.&amp;nbsp; This really prevents any one discipline from getting a &amp;#8216;fresh start&amp;#8217;, as wrap up work often takes priority over new work (reverse that for PM).&amp;nbsp; Thus, the new work gets delayed quite often.&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;FONT face=Arial size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;A note on &amp;#8216;priority&amp;#8217;:&amp;nbsp; Everything is &amp;#8216;pri 1&amp;#8217;, because if it wasn&amp;#8217;t, it was cut.&amp;nbsp; This is because there isn&amp;#8217;t enough time to do everything that &amp;#8216;has to happen before we ship&amp;#8217;.&amp;nbsp; So, &amp;#8216;priority&amp;#8217; has no meaning.&amp;nbsp; Just ignore it.&amp;nbsp; Treat it as someone saying, &amp;#8216;um&amp;#8230;&amp;#8217; or &amp;#8216;er&amp;#8230;&amp;#8217;.&amp;nbsp; I&amp;#8217;m making it a priority to remove that word from tester vocabulary&amp;#8230;.&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;FONT face=Arial size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;At one point, our team had fallen significantly behind our goals for automation development.&amp;nbsp; We found ourselves in a position where we needed to keep testing up on implementation churn by providing immediate testing of any dev patch/check in.&amp;nbsp; This constant impromptu testing continuously delayed automation development between formal test passes.&amp;nbsp; We are in a much better state at this time because we followed through on the difficult decision (made with the dev org) to forego the interrupt driven manual testing completely for several milestones and focus on automation (formal test passes still occurred, of course, to cover all test cases for each milestone).&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;FONT face=Arial size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;One angle which has been used with automating IDE features can be summed up with a call to &amp;#8220;do everything as the user would&amp;#8221;.&amp;nbsp; Reality set in as conflicts with shared UI continuously broke tests over multiple groups.&amp;nbsp; Since feature innovation can&amp;#8217;t be stalled just to maintain an automation test bed, it became necessary to follow an academic rule:&amp;nbsp; &amp;#8220;a test should test only what it tests&amp;#8221;.&amp;nbsp; In other words, if you aren&amp;#8217;t specifically testing the UI, if at all possible, the test should not fail because of a UI change.&amp;nbsp; Praise be the DTE!&amp;nbsp; (&lt;A title=http://msdn.microsoft.com/library/en-us/vsintro7/html/vxgrfAutomationObjectModelChart.asp href="http://msdn.microsoft.com/library/en-us/vsintro7/html/vxgrfAutomationObjectModelChart.asp"&gt;http://msdn.microsoft.com/library/en-us/vsintro7/html/vxgrfAutomationObjectModelChart.asp&lt;/A&gt;).&amp;nbsp; For visual studio, feature area automation authors can often bypass UI that they don&amp;#8217;t need to directly test and get at what does need to be addressed with the current test.&amp;nbsp; This has made automation faster and more reliable for our current test harness.&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;FONT size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;&lt;SPAN style="FONT-SIZE: 12pt"&gt;&lt;FONT face="Times New Roman"&gt;[This posting is provided "AS IS" with no warranties, and confers no rights.&amp;nbsp;Use of any included script samples are subject to the terms specified at &lt;/FONT&gt;&lt;A title=http://www.microsoft.com/info/cpyright.htm href="http://www.microsoft.com/info/cpyright.htm" target=_blank&gt;&lt;FONT title=http://www.microsoft.com/info/cpyright.htm face="Times New Roman" color=#002c99&gt;&lt;SPAN title=http://www.microsoft.com/info/cpyright.htm style="COLOR: #002c99"&gt;http://www.microsoft.com/info/cpyright.htm&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/A&gt;&lt;FONT face="Times New Roman"&gt;.]&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=114289" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/fivetestersfromvc/archive/tags/VC+IDE+Testing/default.aspx">VC IDE Testing</category></item><item><title>What kind of people are testing this stuff anyhow?</title><link>http://blogs.msdn.com/fivetestersfromvc/archive/2004/03/25/96488.aspx</link><pubDate>Fri, 26 Mar 2004 03:58:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:96488</guid><dc:creator>FiveTestersFromVc</dc:creator><slash:comments>3</slash:comments><comments>http://blogs.msdn.com/fivetestersfromvc/comments/96488.aspx</comments><wfw:commentRss>http://blogs.msdn.com/fivetestersfromvc/commentrss.aspx?PostID=96488</wfw:commentRss><description>&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;[Rob] I know I said the next installment would be on tactics&amp;#8230;but I think in response to feedback&lt;SPAN style="COLOR: navy"&gt; &lt;/SPAN&gt;Woon Kiat I&amp;#8217;ll go with &amp;#8216;resources' first.&lt;?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;Before that, very quickly, there was a comment from &lt;/SPAN&gt;&lt;B&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Verdana"&gt;&lt;A href="http://24.odessa.ua/" target=_blank&gt;AT&lt;/A&gt; &lt;/SPAN&gt;&lt;/B&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;on alpha/beta users submitting automation test cases along with bugs.&amp;nbsp; Generally speaking, repro steps for bugs are added to the regression test case set and automated where appropriate.&amp;nbsp;&amp;nbsp;Directly accepting scripts, however, would cause security concerns.&amp;nbsp; It would be a nice world though to just be able to build a customer &amp;#8216;drop acceptance&amp;#8217; automation test case database&amp;#8230;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Wingdings"&gt;J&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;&amp;nbsp; Now you have me thinking about a tool to allow steps to be entered through a web page that would build a safe script to run against the product...hmmmm&amp;#8230;.I could build that using the VC++ IDE once I figure out the design&amp;#8230;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;B&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;Resources for Test&lt;SPAN style="COLOR: navy"&gt; &lt;/SPAN&gt;in VC&lt;/SPAN&gt;&lt;/B&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;Test candidates right out of school rarely have formal test training.&amp;nbsp; The experience level is also limited to personal code and maybe a few small group projects. &amp;nbsp;This gives us the challenge of identifying those candidates that have a rough talent for &amp;#8216;finding bugs&amp;#8217; or &amp;#8216;breaking things&amp;#8217; &lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Wingdings"&gt;J&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt; along with a way to navigate through a product and identify where priority bugs may hide.&amp;nbsp; We also look for people who can adapt quickly and apply techniques &amp;#8216;just learned&amp;#8217; to new problem areas.&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;We write test automation and our product is a development tool.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;Therefore we also look for people who have development proficiency with C++ (knowledge, style, problem solving, &amp;#8230; pretty much our customer base).&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;Our company has training courses (all disciplines) that supplement on the job experience.&amp;nbsp; Everyone on the team is a mentor to some degree or another for every new hire we get. &amp;nbsp;Formal and informal mentors are encouraged in addition to an individual&amp;#8217;s team lead.&amp;nbsp; Acquiring a mentor from outside the team is one way we continue to mix ideas, technologies, and techniques throughout the company.&amp;nbsp; We also like to occasionally reorganize teams to allow people to move to new feature areas and &amp;#8216;stay fresh&amp;#8217; by providing new challenges.&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;Product specific training is hands on.&amp;nbsp; For Visual C++ we focus heavily on dogfooding (use the current drops for real world coding of team tools and personal hobby projects) the product.&amp;nbsp; Plenty of texts exist on previous versions of the product to help people understand where we&amp;#8217;ve been. &amp;nbsp;Specification documents (or, when not available, talks with program managers and feature developers) bring us up to date for what to expect in the current version.&amp;nbsp; When one is new to a feature area, reviewing the old test case base and the bug database helps bring you up to date on the current status and where testing has gone before.&amp;nbsp; Particularly interesting are those bugs found by customers, as they show where customers went with the product that the previous test plans did not anticipate (allowing us to learn better what to give priority to in the limited time we have to test).&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;Some books found on my office shelf today (more at home where I have a bigger shelf&lt;SPAN style="COLOR: navy"&gt;&amp;#8230;&lt;/SPAN&gt;oh, and I&amp;#8217;m not saying these are all &amp;#8216;fantastic&amp;#8217; books, though some are, I&amp;#8217;m just giving a snapshot of what&amp;#8217;s behind me): &amp;nbsp;&amp;nbsp;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; TEXT-INDENT: 0.5in"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;Various language books (C++, VB, C#) &lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; TEXT-INDENT: 0.5in"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;Various manuals from internal microsoft training courses&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; TEXT-INDENT: 0.5in"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;Various manuals from Test conferences (most recent:&amp;nbsp; PNSQC and SQE)&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; TEXT-INDENT: 0.5in"&gt;&lt;U&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;Debugging Applications for &lt;?xml:namespace prefix = st1 ns = "urn:schemas-microsoft-com:office:smarttags" /&gt;&lt;st1:mswterms w:st="on"&gt;.NET&lt;/st1:mswterms&gt; and Windows&lt;/SPAN&gt;&lt;/U&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;, Robbins&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; TEXT-INDENT: 0.5in"&gt;&lt;U&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;Lessons Learned in Software Testing&lt;/SPAN&gt;&lt;/U&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;, Kaner et al&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; TEXT-INDENT: 0.5in"&gt;&lt;U&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;How to Break Software&lt;/SPAN&gt;&lt;/U&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;, Whittaker&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; TEXT-INDENT: 0.5in"&gt;&lt;U&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;Design Patterns&lt;/SPAN&gt;&lt;/U&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;, Gamma et al&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; TEXT-INDENT: 0.5in"&gt;&lt;U&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;Quality Software Management&lt;/SPAN&gt;&lt;/U&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;, Weinberg&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; TEXT-INDENT: 0.5in"&gt;&lt;U&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;Writing Secure Code&lt;/SPAN&gt;&lt;/U&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;, Howard et al&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; TEXT-INDENT: 0.5in"&gt;&lt;U&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;Automation Programmer&amp;#8217;s Reference&lt;/SPAN&gt;&lt;/U&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;, Microsoft Press&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; TEXT-INDENT: 0.5in"&gt;&lt;U&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;Applied Microsoft &lt;st1:mswterms w:st="on"&gt;.NET&lt;/st1:mswterms&gt; Framework Programming,&lt;/SPAN&gt;&lt;/U&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt; Richter&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; TEXT-INDENT: 0.5in"&gt;&lt;U&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;Programming with Visual C++ &lt;st1:mswterms w:st="on"&gt;.NET&lt;/st1:mswterms&gt;&lt;/SPAN&gt;&lt;/U&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;, Shepherd et al&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; TEXT-INDENT: 0.5in"&gt;&lt;U&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;Programming Windows&lt;/SPAN&gt;&lt;/U&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;, Petzold&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; TEXT-INDENT: 0.5in"&gt;&lt;U&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;Inside COM&lt;/SPAN&gt;&lt;/U&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;, Rogerson&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial"&gt;&lt;o:p&gt;;-)&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;[This posting is provided "AS IS" with no warranties, and confers no rights.&amp;nbsp;Use of any included script samples are subject to the terms specified at &lt;A title=http://www.microsoft.com/info/cpyright.htm href="http://www.microsoft.com/info/cpyright.htm" target=_blank&gt;&lt;SPAN style="COLOR: #002c99"&gt;&lt;SPAN title=http://www.microsoft.com/info/cpyright.htm&gt;http://www.microsoft.com/info/cpyright.htm&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/A&gt;.]&lt;SPAN style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=96488" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/fivetestersfromvc/archive/tags/VC+IDE+Testing/default.aspx">VC IDE Testing</category></item><item><title>VC IDE testing (issues and processes)</title><link>http://blogs.msdn.com/fivetestersfromvc/archive/2004/03/18/92408.aspx</link><pubDate>Fri, 19 Mar 2004 04:26:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:92408</guid><dc:creator>FiveTestersFromVc</dc:creator><slash:comments>6</slash:comments><comments>http://blogs.msdn.com/fivetestersfromvc/comments/92408.aspx</comments><wfw:commentRss>http://blogs.msdn.com/fivetestersfromvc/commentrss.aspx?PostID=92408</wfw:commentRss><description>&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;[rob] Since Ron has been entering thoughts and comments on compiler testing, I&amp;#8217;d like to add a perspective on IDE testing from VC.&amp;nbsp; I&amp;#8217;ll leave it in notation format to encourage discussion of points for which readers would like more clarification.&lt;/SPAN&gt;&lt;?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;Issues to address through IDE testing:&lt;/SPAN&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;UL style="MARGIN-TOP: 0in" type=disc&gt;
&lt;LI class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-list: l0 level1 lfo1; tab-stops: list .5in"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;Changing specifications over time (some features are completely ambiguous until devs implement, others have varying levels of specs prior to implementation)&lt;/SPAN&gt;&lt;o:p&gt;&lt;/o:p&gt; 
&lt;LI class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-list: l0 level1 lfo1; tab-stops: list .5in"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;Library of regression test cases, authors having moved to other teams;&amp;nbsp;QA work is more cumulative than dev work in that regression testing currently takes a larger toll than code base maintenance.&lt;/SPAN&gt; 
&lt;LI class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-list: l0 level1 lfo1; tab-stops: list .5in"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;Dependecies (teams depend on us, we depend on them)&lt;/SPAN&gt;&lt;o:p&gt;&lt;/o:p&gt; 
&lt;LI class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-list: l0 level1 lfo1; tab-stops: list .5in"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;Platform coverage&lt;/SPAN&gt;&lt;o:p&gt;&lt;/o:p&gt; 
&lt;LI class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-list: l0 level1 lfo1; tab-stops: list .5in"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;SKU coverage&lt;/SPAN&gt;&lt;o:p&gt;&lt;/o:p&gt; 
&lt;LI class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-list: l0 level1 lfo1; tab-stops: list .5in"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;Multiple paths through UI&lt;/SPAN&gt;&lt;o:p&gt;&lt;/o:p&gt; 
&lt;LI class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-list: l0 level1 lfo1; tab-stops: list .5in"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;CodeModel path around UI&lt;/SPAN&gt;&lt;o:p&gt;&lt;/o:p&gt; 
&lt;LI class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-list: l0 level1 lfo1; tab-stops: list .5in"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;Localization; Data handling and UI&lt;/SPAN&gt;&lt;o:p&gt;&lt;/o:p&gt; 
&lt;LI class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-list: l0 level1 lfo1; tab-stops: list .5in"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;SxS, Compatability&lt;/SPAN&gt;&lt;o:p&gt;&lt;/o:p&gt; 
&lt;LI class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-list: l0 level1 lfo1; tab-stops: list .5in"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;Performance&lt;/SPAN&gt;&lt;o:p&gt;&lt;/o:p&gt; 
&lt;LI class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-list: l0 level1 lfo1; tab-stops: list .5in"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;XP Logo&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/LI&gt;&lt;/UL&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;Process:&lt;/SPAN&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;UL style="MARGIN-TOP: 0in" type=disc&gt;
&lt;LI class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-list: l1 level1 lfo2; tab-stops: list .5in"&gt;&lt;B&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;Theory&lt;/SPAN&gt;&lt;/B&gt;&lt;o:p&gt;&lt;/o:p&gt; 
&lt;UL style="MARGIN-TOP: 0in" type=circle&gt;
&lt;LI class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-list: l1 level2 lfo2; tab-stops: list 1.0in"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;Schedule and cost for the milestone before you begin (sounds like a line from Willy Wonka: [school teacher] &amp;#8220;&amp;#8230;switch our Friday schedule to Monday, which means that the test we take each Friday on what we learned during the week will now take place on Monday before we&amp;#8217;ve learned it.&amp;#8221;)&amp;nbsp; Update schedule as milestone progresses to measure against target dates.&lt;/SPAN&gt;&lt;o:p&gt;&lt;/o:p&gt; 
&lt;LI class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-list: l1 level2 lfo2; tab-stops: list 1.0in"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;Review feature specifications from PM team, providing feedback (expect updates during cycle).&lt;/SPAN&gt;&lt;o:p&gt;&lt;/o:p&gt; 
&lt;LI class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-list: l1 level2 lfo2; tab-stops: list 1.0in"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;Review implementation specification from Dev team, providing feedback (updates expected).&lt;/SPAN&gt;&lt;o:p&gt;&lt;/o:p&gt; 
&lt;LI class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-list: l1 level2 lfo2; tab-stops: list 1.0in"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;QA drafts high level test plan and submit to review by Dev and PM teams; update.&lt;/SPAN&gt;&lt;o:p&gt;&lt;/o:p&gt; 
&lt;UL style="MARGIN-TOP: 0in" type=square&gt;
&lt;LI class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-list: l1 level3 lfo2; tab-stops: list 1.5in"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;Reference previous product and similar feature test plans&lt;/SPAN&gt;&lt;o:p&gt;&lt;/o:p&gt; 
&lt;LI class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-list: l1 level3 lfo2; tab-stops: list 1.5in"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;Incorporate customer feedback and market expectations for setting priorities&lt;/SPAN&gt; 
&lt;LI class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-list: l1 level3 lfo2; tab-stops: list 1.5in"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;Test team contracts attempt to prevent assumptions from&amp;nbsp;leading to test holes across team boundries&lt;/SPAN&gt;&lt;/LI&gt;&lt;/UL&gt;
&lt;LI class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-list: l1 level2 lfo2; tab-stops: list 1.0in"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;Author test cases according to test plan; update plan as needed.&lt;/SPAN&gt;&lt;o:p&gt;&lt;/o:p&gt; 
&lt;LI class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-list: l1 level2 lfo2; tab-stops: list 1.0in"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;Author test case automation&lt;/SPAN&gt;&lt;o:p&gt;&lt;/o:p&gt; 
&lt;LI class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-list: l1 level2 lfo2; tab-stops: list 1.0in"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;Run automation test passes on coverage matrix&lt;/SPAN&gt;&lt;o:p&gt;&lt;/o:p&gt; 
&lt;LI class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-list: l1 level2 lfo2; tab-stops: list 1.0in"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;Run manual test passes on matrix subset&lt;/SPAN&gt;&lt;o:p&gt;&lt;/o:p&gt; 
&lt;LI class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-list: l1 level2 lfo2; tab-stops: list 1.0in"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;Log bugs, analyze trends, verify fixes.&lt;/SPAN&gt;&lt;o:p&gt;&lt;/o:p&gt; 
&lt;LI class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-list: l1 level2 lfo2; tab-stops: list 1.0in"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;Analyze automation code coverage (block level) results from instrumented builds. &lt;/SPAN&gt;&lt;o:p&gt;&lt;/o:p&gt;
&lt;UL style="MARGIN-TOP: 0in" type=square&gt;
&lt;LI class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-list: l1 level3 lfo2; tab-stops: list 1.5in"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;Combine results with test plan holes to target next automation set.&lt;/SPAN&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/LI&gt;&lt;/UL&gt;
&lt;LI class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-list: l1 level2 lfo2; tab-stops: list 1.0in"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;&amp;#8216;Dogfood&amp;#8217; the product&lt;/SPAN&gt;&lt;o:p&gt;&lt;/o:p&gt; 
&lt;UL style="MARGIN-TOP: 0in" type=square&gt;
&lt;LI class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-list: l1 level3 lfo2; tab-stops: list 1.5in"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;(Semi-)stable builds are selected by individual testers to use for developing automation (some data driven, some code).&lt;/SPAN&gt;&lt;o:p&gt;&lt;/o:p&gt; 
&lt;LI class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-list: l1 level3 lfo2; tab-stops: list 1.5in"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;App week:&amp;nbsp; break into teams and develop short term projects (some become team tools).&lt;/SPAN&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/LI&gt;&lt;/UL&gt;
&lt;LI class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-list: l1 level2 lfo2; tab-stops: list 1.0in"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;Themed bug hunts:&amp;nbsp; &amp;#8220;Bug Bash&amp;#8221;&lt;/SPAN&gt;&lt;o:p&gt;&lt;/o:p&gt; 
&lt;UL style="MARGIN-TOP: 0in" type=square&gt;
&lt;LI class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-list: l1 level3 lfo2; tab-stops: list 1.5in"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;team targeting of a specific Logo, accessibility, localization,.... categories.&lt;/SPAN&gt;&lt;o:p&gt;&lt;/o:p&gt; 
&lt;LI class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-list: l1 level3 lfo2; tab-stops: list 1.5in"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;Periodic re-education of feature owners on testing aspects&lt;/SPAN&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/LI&gt;&lt;/UL&gt;
&lt;LI class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-list: l1 level2 lfo2; tab-stops: list 1.0in"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;Iterate and ship!&lt;/SPAN&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/LI&gt;&lt;/UL&gt;
&lt;LI class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-list: l1 level1 lfo2; tab-stops: list .5in"&gt;&lt;B&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;Reality, as enforced by those pesky&lt;/SPAN&gt;&lt;/B&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt; &lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Wingdings"&gt;J&lt;/SPAN&gt;&lt;B&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt; market needs and restrictions&amp;#8230;&lt;/SPAN&gt;&lt;/B&gt;&lt;o:p&gt;&lt;/o:p&gt; 
&lt;UL style="MARGIN-TOP: 0in" type=circle&gt;
&lt;LI class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-list: l1 level2 lfo2; tab-stops: list 1.0in"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;Level of clear specifications varies greatly by feature and product cycle.&amp;nbsp; This is not something QA can (historically) count on.&amp;nbsp; Working closely with the PM team allows for the necessary information to be focused on creating effective test plans.&amp;nbsp; Various unexpected needs (from marketing to division to group to feature)&lt;SPAN style="COLOR: navy"&gt; &lt;/SPAN&gt;continuously challenge the proposed schedule (you know, that thing we all agreed to before the first feature specification was actually written?).&amp;nbsp; Adapt and overcome; priority trade off.&lt;/SPAN&gt;&lt;o:p&gt;&lt;/o:p&gt; 
&lt;LI class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-list: l1 level2 lfo2; tab-stops: list 1.0in"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;Implementation plans tend to be the actual code from Dev.&amp;nbsp; Monitoring check-ins and dev check-in test reviews helps to prepare for proper coverage&lt;/SPAN&gt;&lt;o:p&gt;&lt;/o:p&gt; 
&lt;LI class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-list: l1 level2 lfo2; tab-stops: list 1.0in"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;Some high level test plans get bogged down from lack of feature specifications and test cases develop &lt;I&gt;ad hoc&lt;/I&gt; during exploratory test passes.&lt;/SPAN&gt;&lt;o:p&gt;&lt;/o:p&gt; 
&lt;LI class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-list: l1 level2 lfo2; tab-stops: list 1.0in"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;Authoring automation competes with running manual test cases.&amp;nbsp; The need to report the current product status, in a sense, delays the ability to report a more complete status more often... (Catch 22, but without the airplanes).&lt;/SPAN&gt;&lt;o:p&gt;&lt;/o:p&gt; 
&lt;LI class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-list: l1 level2 lfo2; tab-stops: list 1.0in"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;Automation requires a test harness.&amp;nbsp; &lt;/SPAN&gt;&lt;o:p&gt;&lt;/o:p&gt;
&lt;UL style="MARGIN-TOP: 0in" type=square&gt;
&lt;LI class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-list: l1 level3 lfo2; tab-stops: list 1.5in"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;A test harness requires development and maintenance.&lt;/SPAN&gt;&lt;o:p&gt;&lt;/o:p&gt; 
&lt;LI class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-list: l1 level3 lfo2; tab-stops: list 1.5in"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;VC has moved from an internal tool to a divisional tool &lt;/SPAN&gt;&lt;o:p&gt;&lt;/o:p&gt;
&lt;UL style="MARGIN-TOP: 0in" type=disc&gt;
&lt;LI class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-list: l1 level4 lfo2; tab-stops: list 2.0in"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;Still requires development/maintenance participation&lt;/SPAN&gt;&lt;o:p&gt;&lt;/o:p&gt; 
&lt;LI class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-list: l1 level4 lfo2; tab-stops: list 2.0in"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;Supporting/following the gander isn&amp;#8217;t what the goose used to do&lt;/SPAN&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/LI&gt;&lt;/UL&gt;
&lt;LI class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-list: l1 level2 lfo2; tab-stops: list 1.0in"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;Coverage matrix bulges and balloons;&amp;nbsp; OS varieties, SKU variations, Side by side installations, run time compatibility issues, pre-release forks, internal drops, priority customer drops, priority customer quick fixes, alphas, betas, somewhere in there we have the primary branch we plan to ship&amp;#8230;&lt;/SPAN&gt;&lt;o:p&gt;&lt;/o:p&gt; 
&lt;LI class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-list: l1 level2 lfo2; tab-stops: list 1.0in"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;Again and again activities we want to do (Pri 2 and 3 test cases; driving pri 2 and 3 bug fixes; driving pri 2 and 3 features) are restricted by schedule needs (competing in the market).&lt;/SPAN&gt; 
&lt;LI class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-list: l1 level2 lfo2; tab-stops: list 1.0in"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;dependencies get out of sync and one team may be blocked on another team&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/LI&gt;&lt;/UL&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;Next installment:&amp;nbsp; Tactics...&lt;/SPAN&gt;&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=92408" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/fivetestersfromvc/archive/tags/VC+IDE+Testing/default.aspx">VC IDE Testing</category></item></channel></rss>