<?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>[Dot] Code Dump &#187; QA</title>
	<atom:link href="http://www.dotcodedump.com/category/qa/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.dotcodedump.com</link>
	<description>Just another WordPress weblog</description>
	<lastBuildDate>Wed, 06 Jan 2010 12:27:53 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Shoveling Snow and Fixing Bugs</title>
		<link>http://www.dotcodedump.com/2009/12/shoveling-snow-and-fixing-bugs/</link>
		<comments>http://www.dotcodedump.com/2009/12/shoveling-snow-and-fixing-bugs/#comments</comments>
		<pubDate>Sun, 27 Dec 2009 18:09:46 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[QA]]></category>
		<category><![CDATA[bugs]]></category>

		<guid isPermaLink="false">http://www.dotcodedump.com/?p=248</guid>
		<description><![CDATA[Shoveling snow is best done early, you may have to do it again, but it is a far easier affair. The same is true of buggy or troublesome code in a project, the sooner you fix the code the easier it will be.
The longer you wait to shovel the worse it gets, besides the additional [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.dotcodedump.com/wp-content/uploads/2009/12/Uklizení_snehu.jpg"><img class="alignleft size-medium wp-image-251" style="border: 1px solid black; margin: 0px 5px;" title="Shoveling Snow" src="http://www.dotcodedump.com/wp-content/uploads/2009/12/Uklizení_snehu-300x225.jpg" alt="" width="300" height="225" /></a>Shoveling snow is best done early, you may have to do it again, but it is a far easier affair. The same is true of buggy or troublesome code in a project, the sooner you fix the code the easier it will be.</p>
<p>The longer you wait to shovel the worse it gets, besides the additional snow you have to move. The snow may get compacted, or freeze into ice.  So you will end up breaking ice, salting, besides shoveling. The same is true when maintaining a project, and you wait to fix a troublesome section of code. The problems will start to pile up and dependency may be built on top of the code. Then when you actually get to fixing it you have to fix not only the initial problem, but any dependent code.</p>
<p>Sometimes our hands as developers are tied, the budget maybe tight, but we should understand the business case for fixing something earlier, and try to estimate the cost of not fixing it if there is resistance. That being said we should also be cognizant of balance between our need as programmers for quality, and the bare minimum which will provide our customers, internal or external, the value they expect.</p>
<p>&#8220;Fix early, fix often&#8221; is my philosophy for dealing with bugs. When you delay fixing a problematic section of code, you will pay for it with  interest.  Having a clean code base is even more satisfying then having driveway and walkway clear of snow.</p>
<!-- Social Bookmarks BEGIN -->
<div class="social_bookmark">
<a><strong><em>Bookmark It</em></strong></a>
<br />
<div class="d">
<br />
<a onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://del.icio.us/post?url=http://www.dotcodedump.com/2009/12/shoveling-snow-and-fixing-bugs/&amp;title=Shoveling+Snow+and+Fixing+Bugs" rel="nofollow" title="Add to&nbsp;Del.icio.us"><img class="social_img" src="http://www.dotcodedump.com/wp-content/plugins/social-bookmarks/images/delicious.png" title="Add to&nbsp;Del.icio.us" alt="Add to&nbsp;Del.icio.us" /></a>
<a onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://digg.com/submit?phase=2&amp;url=http://www.dotcodedump.com/2009/12/shoveling-snow-and-fixing-bugs/&amp;title=Shoveling+Snow+and+Fixing+Bugs" rel="nofollow" title="Add to&nbsp;digg"><img class="social_img" src="http://www.dotcodedump.com/wp-content/plugins/social-bookmarks/images/digg.png" title="Add to&nbsp;digg" alt="Add to&nbsp;digg" /></a>
<a onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://www.dotnetkicks.com/kick/?url=http://www.dotcodedump.com/2009/12/shoveling-snow-and-fixing-bugs/&amp;title=Shoveling+Snow+and+Fixing+Bugs" rel="nofollow" title="Add to&nbsp;DotNetKicks"><img class="social_img" src="http://www.dotcodedump.com/wp-content/plugins/social-bookmarks/images/dotnetkicks.png" title="Add to&nbsp;DotNetKicks" alt="Add to&nbsp;DotNetKicks" /></a>
<a onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://www.dzone.com/links/add.html?description=Shoveling+Snow+and+Fixing+Bugs&amp;url=http://www.dotcodedump.com/2009/12/shoveling-snow-and-fixing-bugs/&amp;title=Shoveling+Snow+and+Fixing+Bugs" rel="nofollow" title="Add to&nbsp;DZone"><img class="social_img" src="http://www.dotcodedump.com/wp-content/plugins/social-bookmarks/images/dzone.png" title="Add to&nbsp;DZone" alt="Add to&nbsp;DZone" /></a>
<a onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://www.facebook.com/sharer.php?u=http://www.dotcodedump.com/2009/12/shoveling-snow-and-fixing-bugs/" rel="nofollow" title="Add to&nbsp;Facebook"><img class="social_img" src="http://www.dotcodedump.com/wp-content/plugins/social-bookmarks/images/facebook.png" title="Add to&nbsp;Facebook" alt="Add to&nbsp;Facebook" /></a>
<a onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://www.google.com/bookmarks/mark?op=edit&amp;output=popup&amp;bkmk=http://www.dotcodedump.com/2009/12/shoveling-snow-and-fixing-bugs/&amp;title=Shoveling+Snow+and+Fixing+Bugs" rel="nofollow" title="Add to&nbsp;Google Bookmarks"><img class="social_img" src="http://www.dotcodedump.com/wp-content/plugins/social-bookmarks/images/google.png" title="Add to&nbsp;Google Bookmarks" alt="Add to&nbsp;Google Bookmarks" /></a>
<a onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://reddit.com/submit?url=http://www.dotcodedump.com/2009/12/shoveling-snow-and-fixing-bugs/&amp;title=Shoveling+Snow+and+Fixing+Bugs" rel="nofollow" title="Add to&nbsp;reddit"><img class="social_img" src="http://www.dotcodedump.com/wp-content/plugins/social-bookmarks/images/reddit.png" title="Add to&nbsp;reddit" alt="Add to&nbsp;reddit" /></a>
<a onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://www.stumbleupon.com/submit.php?url=http://www.dotcodedump.com/2009/12/shoveling-snow-and-fixing-bugs/&amp;title=Shoveling+Snow+and+Fixing+Bugs" rel="nofollow" title="Add to&nbsp;Stumble Upon"><img class="social_img" src="http://www.dotcodedump.com/wp-content/plugins/social-bookmarks/images/stumbleupon.png" title="Add to&nbsp;Stumble Upon" alt="Add to&nbsp;Stumble Upon" /></a>
<a onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://www.technorati.com/faves?add=http://www.dotcodedump.com/2009/12/shoveling-snow-and-fixing-bugs/" rel="nofollow" title="Add to&nbsp;Technorati"><img class="social_img" src="http://www.dotcodedump.com/wp-content/plugins/social-bookmarks/images/technorati.png" title="Add to&nbsp;Technorati" alt="Add to&nbsp;Technorati" /></a>
<a onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://twitter.com/home/?status=Check+out+Shoveling+Snow+and+Fixing+Bugs+@+http://www.dotcodedump.com/2009/12/shoveling-snow-and-fixing-bugs/" rel="nofollow" title="Add to&nbsp;Twitter"><img class="social_img" src="http://www.dotcodedump.com/wp-content/plugins/social-bookmarks/images/twitter.png" title="Add to&nbsp;Twitter" alt="Add to&nbsp;Twitter" /></a>
<br />
</div>
</div>
<!-- Social Bookmarks END -->
]]></content:encoded>
			<wfw:commentRss>http://www.dotcodedump.com/2009/12/shoveling-snow-and-fixing-bugs/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Creative Application Testing</title>
		<link>http://www.dotcodedump.com/2008/07/creative-application-testing/</link>
		<comments>http://www.dotcodedump.com/2008/07/creative-application-testing/#comments</comments>
		<pubDate>Wed, 30 Jul 2008 19:00:00 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[QA]]></category>
		<category><![CDATA[automated testing]]></category>
		<category><![CDATA[hacking]]></category>
		<category><![CDATA[testing]]></category>
		<category><![CDATA[unit test]]></category>

		<guid isPermaLink="false">http://blog.lintnernet.com/?p=28</guid>
		<description><![CDATA[Be Inconsistent
Application testing can help improve quality.  Many types of application testing have been defined such as: unit testing, QA, regression testing. The problem is that they are too structured, and test for known actions, and inputs.  To really give an application a work out you either need a large test base, or [...]]]></description>
			<content:encoded><![CDATA[<p><a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://bp3.blogger.com/_oJ89RnXa3zM/SJC7DAwB82I/AAAAAAAAAJs/m0qialtKlnU/s1600-h/154227109_d0a9320f2e.jpg"><img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;" src="http://bp3.blogger.com/_oJ89RnXa3zM/SJC7DAwB82I/AAAAAAAAAJs/m0qialtKlnU/s320/154227109_d0a9320f2e.jpg" alt="" id="BLOGGER_PHOTO_ID_5228884827792601954" border="0" /></a><span style="font-weight: bold;font-size:130%;" >Be Inconsistent</span></p>
<p>Application testing can help improve quality.  Many types of application testing have been defined such as: unit testing, QA, regression testing. The problem is that they are too structured, and test for known actions, and inputs.  To really give an application a work out you either need a large test base, or creative developers and testers.  Creative testing should not be about testing for quality, it should be about trying to break the application.
<div xmlns="http://www.w3.org/1999/xhtml">Most developers will treat the application as there baby, and hand craft the inputs when they test, becuase they want it to work.  This is the worst way to test, if you are testing, design your testing strategy to break it every time.  This is becuase users will input what they think is needed, and have no idea about what parameters your function uses.  If the test is nothing like the real world then it&#8217;s useless.  Any test that is not useful is not worth doing.</p>
<p>If your application is going to have a general audience such as the Internet, then it must be ready for everything.  Almost none of them will be a developer (in most cases).  So if your application breaks, you probably just got punked by a soccer mom.  If this sounds like a problem you are having, then you need to re-evaluate your testing strategy.<br /><span style="font-size:130%;"><br /><span style="font-weight: bold;">Examples of creative testing:</span></span></p>
<p><b>Start Acting</b></p>
<p>As developers we have our own outlook, this includes testing.  The acting approach to application testing is when you act like a certain type of user.  It definitely helps to have seen the desired behavior model actually using a computer.  An example of this is act like your grandpa, forget where buttons are.  Squint your eyes so everything is a little blurry.  Pretend to be impatient, and click links buttons multiple times, don&#8217;t wait.</p>
<p><b>Hack the Site</b></p>
<p>Go after the security, go after everything.  Tamper with the form fields, use artificial posts.  Use the query strings to go after non privileged data.  Try to take the website down with just a browser.  Don&#8217;t just kick the tires, try to pick the locks.  By testing the security, and going beyond standard QA tests, you are finding out what errors happen when things are missing.  You will find out where you need more error handling, and input validation.</p>
<p><b>Go Crazy</b></p>
<p>Click things at random, click everything, click it twice, don&#8217;t go in with a plan.  Encounter a form, enter what every you feel like.  Do this on administrative screens.  Does it break?  Does the data remain valid? Find out if it can withstand random data entry, and mouse clicks.  What happens when I enter &#8216;%^!  _\n*%^Tjafasd&#8217; for the first name field.  Do anything, but follow the logical flow of clicks.</p>
<p><b>Unplug your mouse or keyboard</b>.</p>
<p>Can you navigate the site with only one of the input devices at the time.  Do you have text links or is your navigation ok for use with keyboard.  Do you require text input to get places.  You will find out if your site is mouse heavy, or keyboard heavy very quickly.  This gives you a sense of how your software will perform to users who may have limited support for one or the other.</p>
<p><b>Be Lazy</p>
<p></b>Some users may cross every &#8216;t&#8217; and dot every &#8216;i&#8217;, and others goal may be to do as little as possible, but still get done with your application.  It may ruin your planned workflow, but if something can be skipped it will.  Leave things out, take shortcuts.  Look for ways to cheat doing work on your application.  See what happens if you forget step 2 in your complex widget creation routine.</p>
</div>
<!-- Social Bookmarks BEGIN -->
<div class="social_bookmark">
<a><strong><em>Bookmark It</em></strong></a>
<br />
<div class="d">
<br />
<a onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://del.icio.us/post?url=http://www.dotcodedump.com/2008/07/creative-application-testing/&amp;title=Creative+Application+Testing" rel="nofollow" title="Add to&nbsp;Del.icio.us"><img class="social_img" src="http://www.dotcodedump.com/wp-content/plugins/social-bookmarks/images/delicious.png" title="Add to&nbsp;Del.icio.us" alt="Add to&nbsp;Del.icio.us" /></a>
<a onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://digg.com/submit?phase=2&amp;url=http://www.dotcodedump.com/2008/07/creative-application-testing/&amp;title=Creative+Application+Testing" rel="nofollow" title="Add to&nbsp;digg"><img class="social_img" src="http://www.dotcodedump.com/wp-content/plugins/social-bookmarks/images/digg.png" title="Add to&nbsp;digg" alt="Add to&nbsp;digg" /></a>
<a onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://www.dotnetkicks.com/kick/?url=http://www.dotcodedump.com/2008/07/creative-application-testing/&amp;title=Creative+Application+Testing" rel="nofollow" title="Add to&nbsp;DotNetKicks"><img class="social_img" src="http://www.dotcodedump.com/wp-content/plugins/social-bookmarks/images/dotnetkicks.png" title="Add to&nbsp;DotNetKicks" alt="Add to&nbsp;DotNetKicks" /></a>
<a onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://www.dzone.com/links/add.html?description=Creative+Application+Testing&amp;url=http://www.dotcodedump.com/2008/07/creative-application-testing/&amp;title=Creative+Application+Testing" rel="nofollow" title="Add to&nbsp;DZone"><img class="social_img" src="http://www.dotcodedump.com/wp-content/plugins/social-bookmarks/images/dzone.png" title="Add to&nbsp;DZone" alt="Add to&nbsp;DZone" /></a>
<a onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://www.facebook.com/sharer.php?u=http://www.dotcodedump.com/2008/07/creative-application-testing/" rel="nofollow" title="Add to&nbsp;Facebook"><img class="social_img" src="http://www.dotcodedump.com/wp-content/plugins/social-bookmarks/images/facebook.png" title="Add to&nbsp;Facebook" alt="Add to&nbsp;Facebook" /></a>
<a onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://www.google.com/bookmarks/mark?op=edit&amp;output=popup&amp;bkmk=http://www.dotcodedump.com/2008/07/creative-application-testing/&amp;title=Creative+Application+Testing" rel="nofollow" title="Add to&nbsp;Google Bookmarks"><img class="social_img" src="http://www.dotcodedump.com/wp-content/plugins/social-bookmarks/images/google.png" title="Add to&nbsp;Google Bookmarks" alt="Add to&nbsp;Google Bookmarks" /></a>
<a onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://reddit.com/submit?url=http://www.dotcodedump.com/2008/07/creative-application-testing/&amp;title=Creative+Application+Testing" rel="nofollow" title="Add to&nbsp;reddit"><img class="social_img" src="http://www.dotcodedump.com/wp-content/plugins/social-bookmarks/images/reddit.png" title="Add to&nbsp;reddit" alt="Add to&nbsp;reddit" /></a>
<a onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://www.stumbleupon.com/submit.php?url=http://www.dotcodedump.com/2008/07/creative-application-testing/&amp;title=Creative+Application+Testing" rel="nofollow" title="Add to&nbsp;Stumble Upon"><img class="social_img" src="http://www.dotcodedump.com/wp-content/plugins/social-bookmarks/images/stumbleupon.png" title="Add to&nbsp;Stumble Upon" alt="Add to&nbsp;Stumble Upon" /></a>
<a onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://www.technorati.com/faves?add=http://www.dotcodedump.com/2008/07/creative-application-testing/" rel="nofollow" title="Add to&nbsp;Technorati"><img class="social_img" src="http://www.dotcodedump.com/wp-content/plugins/social-bookmarks/images/technorati.png" title="Add to&nbsp;Technorati" alt="Add to&nbsp;Technorati" /></a>
<a onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://twitter.com/home/?status=Check+out+Creative+Application+Testing+@+http://www.dotcodedump.com/2008/07/creative-application-testing/" rel="nofollow" title="Add to&nbsp;Twitter"><img class="social_img" src="http://www.dotcodedump.com/wp-content/plugins/social-bookmarks/images/twitter.png" title="Add to&nbsp;Twitter" alt="Add to&nbsp;Twitter" /></a>
<br />
</div>
</div>
<!-- Social Bookmarks END -->
]]></content:encoded>
			<wfw:commentRss>http://www.dotcodedump.com/2008/07/creative-application-testing/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
