<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss'><id>tag:blogger.com,1999:blog-8312357079004758364</id><updated>2009-12-07T05:58:03.182-08:00</updated><title type='text'>Software Testing Guide for Beginners</title><subtitle type='html'>Learn basics of software testing, Testing Techniques, Levels of Testing, Types of Testing, Test Planning,   Test Development, performance testing, load testing, unit testing, stress testing, application testing, product testing, usability testing, web testing, Test Design Techniques,winrunner .</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://softwaretesting-guide.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8312357079004758364/posts/default'/><link rel='alternate' type='text/html' href='http://softwaretesting-guide.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><link rel='next' type='application/atom+xml' href='http://www.blogger.com/feeds/8312357079004758364/posts/default?start-index=26&amp;max-results=25'/><author><name>MuraliMohanReddy</name><uri>http://www.blogger.com/profile/04574108783911915562</uri><email>manualtestingmaterial@gmail.com</email></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>202</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-8312357079004758364.post-1622285499970993149</id><published>2009-12-05T21:55:00.000-08:00</published><updated>2009-12-05T21:56:11.149-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='software testing'/><category scheme='http://www.blogger.com/atom/ns#' term='Interface Testing'/><title type='text'>Why Software Engineers Use Interface Testing</title><content type='html'>In software development, testing is a crucial part of the whole process. Many software engineers have considered interface testing as one of the most important tests they have to conduct in order to guarantee the quality of their products.&lt;br /&gt;&lt;br /&gt;There are many kinds of software testing, but generally, they can be classified into automated and manual. Engineers appreciate automated testing, as such helps them save time. With this option, they would not have to go through a manual quality assurance procedure. Likewise, automated testing is widely used nowadays by software engineers.&lt;br /&gt;&lt;br /&gt;But there is a problem though with automated testing. This is because a prior manual test is needed for software automation. The said manual testing should be in unison to a systematized testing procedure. Take note that special software should be utilized to automate the system, too. The software is intended to control test implementations, to prepare test requirements, and to assess actual results against the predicted outcome.&lt;br /&gt;&lt;br /&gt;Despite the benefits of automated testing, software engineers understand that manual testing is something that cannot be avoided, especially in complex projects. According to them, the software interface test is an example of a testing type that cannot be automated a full 100 percent.&lt;br /&gt;&lt;br /&gt;You might wonder what an interface is. It is actually the interface that makes it possible for an individual to communicate with computer hardware. The interface is also referred to as software. It is made up of commands, messages, features, and images that permit communication to flow between the device and end user.&lt;br /&gt;&lt;br /&gt;Software companies normally adopt interface tests. This is because such type of testing is the best way to ensure that buyers of their software products will be guaranteed high quality. But you might ask why opting the interface test is considered a good strategy for software businesses. The reason for this is feedback. With this type of testing, software developers are allowed to introduce revisions through an application. They may note feedback issued by users, which could help improve their software product. What happens here is that users are given a task. The flow of the software program is being assessed during the testing process. &lt;br /&gt;&lt;br /&gt;The aim is to find out whether the flow goes hand in hand with the manner that the user navigates within the program. Likewise, interface test evaluates the impact of the application to users, especially on how easy or difficult they find the program. Meanwhile, a moderator is assigned to conduct the test. He or she needs to only record the feedback of the user regarding the software application. After the whole testing process, the moderator is bound to give the comments of the user to the software developer so revisions can then be incorporated into the application.&lt;br /&gt;&lt;br /&gt;As earlier mentioned, there are still several kinds of software testing that developers can use other than interface testing. Some of these are namely system, component, release, and acceptance. For the part of software businesses, the important thing to remember is the choice of software testing they wish to adopt. Quality should be of utmost concern here. Remember that the fewer problems that end users encounter in using your software application, the better it is for the company.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8312357079004758364-1622285499970993149?l=softwaretesting-guide.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8312357079004758364/posts/default/1622285499970993149'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8312357079004758364/posts/default/1622285499970993149'/><link rel='alternate' type='text/html' href='http://softwaretesting-guide.blogspot.com/2009/12/why-software-engineers-use-interface.html' title='Why Software Engineers Use Interface Testing'/><author><name>MuraliMohanReddy</name><uri>http://www.blogger.com/profile/04574108783911915562</uri><email>manualtestingmaterial@gmail.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='08378751378402803726'/></author></entry><entry><id>tag:blogger.com,1999:blog-8312357079004758364.post-6949762175429643805</id><published>2009-12-05T21:43:00.001-08:00</published><updated>2009-12-05T21:54:10.464-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Software Testing Tools'/><title type='text'>Benefits and Types of Software Testing Tools</title><content type='html'>Types of Software Testing Tools Software testing tools can be categorized by the testing activity or the process they are utilized in, e.g. test planning, test execution, data comparison, defect capture, etc. Categorizing tools by the process they are utilized in leads to categories along the following lines:&lt;br /&gt;&lt;br /&gt;  &lt;span style="font-weight:bold;"&gt;Source Code&lt;/span&gt; (AdaTEST, AQtime, BoundsChecker, CMT++, CodeCheck, CodeWizard, GlowCode, OSPC, Panorama, TBGEN)&lt;br /&gt;&lt;br /&gt;· &lt;span style="font-weight:bold;"&gt;Functional&lt;/span&gt; (.TEST, AberroTest, Automate!Test Manager, CitraTest, Eggplant, GUITAR, QACenter, Silktest, TestComplete, WinRunner®)&lt;br /&gt;&lt;br /&gt;· &lt;span style="font-weight:bold;"&gt;Performance&lt;/span&gt; (BugTimer, LoadRunner®, Monitor Master, SilkPerformer, TestLoad, WinFeedback, XtremeLoad)&lt;br /&gt;&lt;br /&gt;· &lt;span style="font-weight:bold;"&gt;Java&lt;/span&gt; (Abbot, AgileTest, Agitator, Cactus, GJ-Coverage, JCover, JMeter, JUnit, Marathon, QEngine, TCAT/Java)&lt;br /&gt;&lt;br /&gt;· &lt;span style="font-weight:bold;"&gt;Embedded software&lt;/span&gt; (Message Magic, Reactis Tester, TBrun, Tessy, TestQuest Pro, USBTester, VectorCAST)&lt;br /&gt;&lt;br /&gt;· &lt;span style="font-weight:bold;"&gt;Database&lt;/span&gt; (AETG, Data Generator, Datatect, ER/Datagen, Jumpstart, SQL DB Validator, TestIt!, TurboData)&lt;br /&gt;&lt;br /&gt;· &lt;span style="font-weight:bold;"&gt;Bug tracking tools&lt;/span&gt; (Bugzilla, DevTrack, Dragonfly, Footprints, Mantis, Perfect Tracker, QEngine, Squish, TrackStudio)&lt;br /&gt;&lt;br /&gt;· &lt;span style="font-weight:bold;"&gt;Test management tools&lt;/span&gt; (ApTest Manager, QaTraq, Extended Test Plan, QADirector, SilkPlan Pro, TestLog)&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;&lt;br /&gt;Software Testing Tools, Testing script &amp; Testing software&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;NET Testing Tools&lt;/span&gt;&lt;br /&gt;Best .NET testing tools, .Net Application testing tools online&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Ant Test Framework&lt;/span&gt;&lt;br /&gt;Tools for Testing the Ant Test Framework&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;&lt;br /&gt;Benchmarking Tools&lt;/span&gt;&lt;br /&gt;Scripts and Tools for Benchmarking performance&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Cloud Based Testing Tools&lt;/span&gt;&lt;br /&gt;Tools for testing Cloud Based Testing Tools applications&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;&lt;br /&gt;Data Generators&lt;/span&gt;&lt;br /&gt;Tools for testing Data Generators applications&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Flash Testing Framework&lt;/span&gt;&lt;br /&gt;A Framwork for Testing Flash Tools &lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;GUI Testing Tools&lt;/span&gt;&lt;br /&gt;Web and GUI Based Testing Tools&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Identity Management Testing Framework&lt;/span&gt;&lt;br /&gt;Tools to test the Identity Management Framework&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Java GUI Test Framework&lt;/span&gt;&lt;br /&gt;Java Based tools for Testing GUI’s&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Javascript&lt;/span&gt;&lt;br /&gt;Tools for testing Javascript applications&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;&lt;br /&gt;Linux Testing tools&lt;/span&gt;&lt;br /&gt;Linux based Test tools&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Oracle Database Test Tools&lt;/span&gt;&lt;br /&gt;A Framwork for Testing Oracle Testing Tools&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;&lt;br /&gt;Perl Testing Tools&lt;/span&gt;&lt;br /&gt;Tools for testing Perl applications&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Python Testing Tools&lt;/span&gt;&lt;br /&gt;Tools for testing Python applications&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Security Systems&lt;/span&gt;&lt;br /&gt;security testing tool guide&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;SQL Testing Tools&lt;/span&gt;&lt;br /&gt;Tools for testing SQL applications&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Test Documentation Tools&lt;/span&gt;&lt;br /&gt;Tools for Test Documentation&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Test Management&lt;/span&gt;&lt;br /&gt;Tools for testing Test Management applications&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Web Traffic Analysis&lt;/span&gt;&lt;br /&gt;Online Web Traffic Analysis Tools&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;XML Testing Tools&lt;/span&gt;&lt;br /&gt;Tools for testing XML applications&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;&lt;br /&gt;WinRunner Testing Tools&lt;/span&gt;&lt;br /&gt;WinRunner Based Testing Tools&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;&lt;br /&gt;Web Hosting Tools&lt;/span&gt;&lt;br /&gt;Online resource of web hosting tools&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;&lt;br /&gt;Test Environment Management&lt;/span&gt;&lt;br /&gt;tool list for test environment management&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;&lt;br /&gt;TCl testing tools&lt;/span&gt;&lt;br /&gt;Tools for testing TCl testing tools applications&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Server Management&lt;/span&gt;&lt;br /&gt;website monitoring solutions&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Ruby Testing Tools&lt;/span&gt;&lt;br /&gt;Tools for testing Ruby applications&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;&lt;br /&gt;PHP Testing Tools&lt;/span&gt;&lt;br /&gt;Tools for testing PHP applications&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Performance Testing Tools&lt;/span&gt;&lt;br /&gt;Performance Testing Execution Tools&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Networking Tools&lt;/span&gt;&lt;br /&gt;IP management and tracking tools&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;C/C++&lt;/span&gt;&lt;br /&gt;online database of C/C++ Testing tool&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Automated Testing Framework&lt;/span&gt;&lt;br /&gt;Largest list of automated testing tools&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8312357079004758364-6949762175429643805?l=softwaretesting-guide.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8312357079004758364/posts/default/6949762175429643805'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8312357079004758364/posts/default/6949762175429643805'/><link rel='alternate' type='text/html' href='http://softwaretesting-guide.blogspot.com/2009/12/benefits-and-types-of-software-testing_05.html' title='Benefits and Types of Software Testing Tools'/><author><name>MuraliMohanReddy</name><uri>http://www.blogger.com/profile/04574108783911915562</uri><email>manualtestingmaterial@gmail.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='08378751378402803726'/></author></entry><entry><id>tag:blogger.com,1999:blog-8312357079004758364.post-5764392329749383818</id><published>2009-12-05T21:43:00.000-08:00</published><updated>2009-12-05T21:45:17.360-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Software Testing Tools'/><title type='text'>Benefits and Types of Software Testing Tools</title><content type='html'>Types of Software Testing Tools Software testing tools can be categorized by the testing activity or the process they are utilized in, e.g. test planning, test execution, data comparison, defect capture, etc. Categorizing tools by the process they are utilized in leads to categories along the following lines:&lt;br /&gt;&lt;br /&gt;  &lt;span style="font-weight:bold;"&gt;Source Code&lt;/span&gt; (AdaTEST, AQtime, BoundsChecker, CMT++, CodeCheck, CodeWizard, GlowCode, OSPC, Panorama, TBGEN)&lt;br /&gt;&lt;br /&gt;· &lt;span style="font-weight:bold;"&gt;Functional&lt;/span&gt; (.TEST, AberroTest, Automate!Test Manager, CitraTest, Eggplant, GUITAR, QACenter, Silktest, TestComplete, WinRunner®)&lt;br /&gt;&lt;br /&gt;· &lt;span style="font-weight:bold;"&gt;Performance&lt;/span&gt; (BugTimer, LoadRunner®, Monitor Master, SilkPerformer, TestLoad, WinFeedback, XtremeLoad)&lt;br /&gt;&lt;br /&gt;· &lt;span style="font-weight:bold;"&gt;Java&lt;/span&gt; (Abbot, AgileTest, Agitator, Cactus, GJ-Coverage, JCover, JMeter, JUnit, Marathon, QEngine, TCAT/Java)&lt;br /&gt;&lt;br /&gt;· &lt;span style="font-weight:bold;"&gt;Embedded software&lt;/span&gt; (Message Magic, Reactis Tester, TBrun, Tessy, TestQuest Pro, USBTester, VectorCAST)&lt;br /&gt;&lt;br /&gt;· &lt;span style="font-weight:bold;"&gt;Database&lt;/span&gt; (AETG, Data Generator, Datatect, ER/Datagen, Jumpstart, SQL DB Validator, TestIt!, TurboData)&lt;br /&gt;&lt;br /&gt;· &lt;span style="font-weight:bold;"&gt;Bug tracking tools&lt;/span&gt; (Bugzilla, DevTrack, Dragonfly, Footprints, Mantis, Perfect Tracker, QEngine, Squish, TrackStudio)&lt;br /&gt;&lt;br /&gt;· &lt;span style="font-weight:bold;"&gt;Test management tools&lt;/span&gt; (ApTest Manager, QaTraq, Extended Test Plan, QADirector, SilkPlan Pro, TestLog)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8312357079004758364-5764392329749383818?l=softwaretesting-guide.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8312357079004758364/posts/default/5764392329749383818'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8312357079004758364/posts/default/5764392329749383818'/><link rel='alternate' type='text/html' href='http://softwaretesting-guide.blogspot.com/2009/12/benefits-and-types-of-software-testing.html' title='Benefits and Types of Software Testing Tools'/><author><name>MuraliMohanReddy</name><uri>http://www.blogger.com/profile/04574108783911915562</uri><email>manualtestingmaterial@gmail.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='08378751378402803726'/></author></entry><entry><id>tag:blogger.com,1999:blog-8312357079004758364.post-8367555569424419437</id><published>2009-11-26T08:54:00.000-08:00</published><updated>2009-11-26T08:55:43.606-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Testing Frameworks'/><title type='text'>Testing Frameworks for Java with Code Samples</title><content type='html'>Some while back I was preparing a presentation on mocking and testing frameworks for Java. As part of the aim was to demonstrate some real, running code, I ended up spending quite some time copying, pasting, extending and correcting various examples gleaned from readmes, Javadoc, Wiki pages and blog posts. Since then, this codebase has been extended with various new features I've come across, and I've often referred to it for experiments, as a helpful reference, and suchlike.&lt;br /&gt;More details: http://java.dzone.com/news/code-samples-test-framework&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8312357079004758364-8367555569424419437?l=softwaretesting-guide.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8312357079004758364/posts/default/8367555569424419437'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8312357079004758364/posts/default/8367555569424419437'/><link rel='alternate' type='text/html' href='http://softwaretesting-guide.blogspot.com/2009/11/testing-frameworks-for-java-with-code.html' title='Testing Frameworks for Java with Code Samples'/><author><name>MuraliMohanReddy</name><uri>http://www.blogger.com/profile/04574108783911915562</uri><email>manualtestingmaterial@gmail.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='08378751378402803726'/></author></entry><entry><id>tag:blogger.com,1999:blog-8312357079004758364.post-941504073542263673</id><published>2009-11-19T07:51:00.000-08:00</published><updated>2009-11-19T07:52:36.953-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Software Testing Automation Framework'/><title type='text'>Software Testing Automation Framework</title><content type='html'>The Software Testing Automation Framework (STAF) is an open source, multi-platform, multi-language framework designed around the idea of reusable components, called services (such as process invocation, resource management, logging, and monitoring). &lt;br /&gt;&lt;br /&gt;STAF removes the tedium of building an automation infrastructure, thus enabling you to focus on building your automation solution. The STAF framework provides the foundation upon which to build higher level solutions, and provides a pluggable approach supported across a large variety of platforms and languages.&lt;br /&gt;&lt;br /&gt;Visit More details: &lt;a href="http://staf.sourceforge.net/"&gt;STAF&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8312357079004758364-941504073542263673?l=softwaretesting-guide.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8312357079004758364/posts/default/941504073542263673'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8312357079004758364/posts/default/941504073542263673'/><link rel='alternate' type='text/html' href='http://softwaretesting-guide.blogspot.com/2009/11/software-testing-automation-framework.html' title='Software Testing Automation Framework'/><author><name>MuraliMohanReddy</name><uri>http://www.blogger.com/profile/04574108783911915562</uri><email>manualtestingmaterial@gmail.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='08378751378402803726'/></author></entry><entry><id>tag:blogger.com,1999:blog-8312357079004758364.post-3795791993623155307</id><published>2009-11-19T07:39:00.000-08:00</published><updated>2009-11-19T07:48:36.228-08:00</updated><title type='text'>Testing Cookies in Web Applications</title><content type='html'>A "cookie" is a small piece of information sent by a web server to store on a web browser so it can later be read back from that browser. This is useful for having the browser remember some specific information. These are small data files which act as unique identifiers and allow our site to remember a particular user. Cookies do not harm computer. Certain areas of our web site, such as our forums use cookies.  Some times user’s personal information is stored in cookies and if someone hacks the cookie then hacker can get access to your personal information. Even corrupted cookies can be read by different domains and lead to security issues. This is why testing of website cookies is very important.&lt;br /&gt;&lt;br /&gt;In this white paper, we will focus on basics of cookies world and also how to test the website cookies.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;INTRODUCTION&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;In today’s world we use websites for numerous activities, like shopping, travel ticket booking. And here comes an important word “cookie” in the picture. Almost, everywhere cookies are used to store the information sent by web servers.&lt;br /&gt;&lt;br /&gt;So, we will first focus on what exactly cookies are and how they work. What are cookies?&lt;br /&gt;&lt;br /&gt;Cookie is small information stored in text file on user’s hard drive by web server. This information is later used by web browser to retrieve information from that machine. Generally cookie contains personalized user data or information that is used to communicate between different web pages. An example is when a browser stores your passwords and user ID's. They are also used to store preferences of start pages, both Microsoft and Netscape use cookies to create personal start pages.&lt;br /&gt;&lt;br /&gt;Cookies are nothing but the user’s identity and used to track where the user navigated throughout the web site pages.Why Cookie?&lt;br /&gt;&lt;br /&gt;The communication between web browser and web server is stateless. For example if you are accessing domain http://www.example.com/1.html then web browser will simply query to example.com web server for the page 1.html. Next time if you type page as http://www.example.com/2.html then new request is send to example.com web server for sending 2.html page and web server don’t know anything about to whom the previous page 1.html served.&lt;br /&gt;&lt;br /&gt;What if you want the previous history of this user communication with the web server? You need to maintain the user state and interaction between web browser and web server somewhere. This is where cookie comes into picture. Cookies serve the purpose of maintaining the user interactions with web server.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;How cookies work?&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;To exchange information files on the web, the HTTP protocol is used. There are two types of HTTP protocol: Stateless HTTP and Stateful HTTP protocol.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Stateless system&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;A stateless system has no record of previous interactions and each interaction request has to be handled based entirely on the information comes with it. For eg, if we enter http://www.example.com/sample.html  into our web browser’s address bar and press Enter, then conversation between the browser and the example.com web server goes like this : Web browser will simply query to example.com web server for the page sample.html.&lt;br /&gt;&lt;br /&gt;Once the browser receives the last byte of information using HTTP, the example.com web server essentially forgets about the request data.  If now, we send some other request to the web server, it will execute upon the request, without memory of the earlier request.    It does not need to remember the earlier request for the response of the new request. This isn’t bad for example.com website; no harm, no foul.&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;&lt;br /&gt;Stateful system&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Are there are cases where state does matter for a web based system? The answer is YES, and here comes the Stateful system. Stateful HTTP protocols do keep some history of previous web browser and web server interactions and this protocol is used by cookies to maintain the user interactions.&lt;br /&gt;&lt;br /&gt;Whenever user visits the site or page that is using cookie, small code inside that HTML page writes a text file on users machine called cookie. When user visits the same page or domain later time this cookie is read from disk and used to identify the second visit of the same user on that domain. Expiration time is set while writing the cookie. This time is decided by the application that is going to use the cookie.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Applications where cookies are used&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;    * Online Ordering Systems: An online ordering system could be developed using cookies that would remember what a person wants to buy, this way if a person spends three hours ordering CDs at your site and suddenly has to get off the net they could quit the browser and return weeks or even years later and still have those items in their shopping basket.&lt;br /&gt;&lt;br /&gt;    * Website Tracking: Site tracking can show you places in your website that people go to and then wander off because they don't have any more interesting links to hit. It can also give you more accurate counts of how many people have been to pages on your site.&lt;br /&gt;&lt;br /&gt;    * Shopping: Cookies are used for maintaining online ordering system. Cookies remember what user wants to buy. What if user adds some products in their shopping cart and closes the browser window? When next time same user visits the purchase page he can see all the products he added in shopping cart in his last visit.&lt;br /&gt;&lt;br /&gt;    * Marketing: Some companies use cookies to display advertisements on user machines. Cookies control these advertisements.&lt;br /&gt;&lt;br /&gt;    * UserIds: Cookies can track user sessions to particular domain using user ID and password.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Death of a cookie!&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;When a web server sets a cookie into the system, it was optionally give it a “death” expiration date.  When the date reaches, then the cookie gets deleted from the system.&lt;br /&gt;&lt;br /&gt;If the web server does not give an expiration date to a cookie, then the cookie is a per-session cookie.  Per-session cookies are deleted as soon as you close the current session of the browser. So, if the cookie is not having any death date, then as soon as the browser is closed, the cookie is no longer into your system.&lt;br /&gt;Browser Cookie Settings&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Listed below are examples of the steps taken to view your browser's cookies settings:&lt;br /&gt;Changing cookie settings for Mozilla Firefox 1.5 (Adapted from the Firefox 1.5 integrated help system)&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;By default Firefox 1.5 accepts all cookies, including cookies which would allow a site to recognize you effectively forever. If you want to grant sites you trust the ability to store cookies permanently&lt;br /&gt;&lt;br /&gt;Click Exceptions&lt;br /&gt;&lt;br /&gt;Enter the site address (In this case it would be americanadoptions.com)&lt;br /&gt;&lt;br /&gt;Click Allow.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Changing cookie settings for Internet Explorer 7&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Click on the Tools menu and then click Internet Options&lt;br /&gt;&lt;br /&gt;Click the Privacy tab, and then click Sites.&lt;br /&gt;&lt;br /&gt;Type americanadoptions.com in the Address of Web site field.&lt;br /&gt;&lt;br /&gt;Click Allow to always allow cookies from americanadoptions.com&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Changing cookie settings for Internet Explorer 6&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Click on the Tools menu and then click Internet Options&lt;br /&gt;&lt;br /&gt;Click the Privacy tab, and then click Sites.&lt;br /&gt;&lt;br /&gt;Type americanadoptions.com in the Address of Web site field.&lt;br /&gt;&lt;br /&gt;Click Allow to always allow cookies from americanadoptions.com&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;&lt;br /&gt;Changing cookie settings for Netscape 6&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Click Edit Menu&lt;br /&gt;&lt;br /&gt;Click Preferences&lt;br /&gt;&lt;br /&gt;Select Privacy &amp; Security&lt;br /&gt;&lt;br /&gt;Select Cookies&lt;br /&gt;&lt;br /&gt;To view your cookie settings on a browser not listed above, refer to your browser's documentation.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Drawbacks of cookies&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;    * Loss of site traffic:  Site containing cookie will be completely disabled and can not perform any operation, if user has set browser options to warn before writing any cookie or disabled the cookies completely. And this results in loss of site traffic.&lt;br /&gt;&lt;br /&gt;    * Loads of cookies: If too many cookies are present on every page navigation and user has turned on option to warn before writing cookie, in that case this could turn away user from the web site and this could result in loss of site traffic and eventually loss of business.&lt;br /&gt;&lt;br /&gt;    * Valuable hard drive space: Cookies take up valuable hard drive space, so it may be to your advantage to delete a few on occasion, especially third-party cookies. Third-party cookies are placed on your computer by sites you haven’t visited. They usually come from companies who place ads on sites you have visited. Luckily, most browsers give you the option of rejecting only third-party cookies.&lt;br /&gt;&lt;br /&gt;    * Security: Some times user’s personal information is stored in cookies and if someone hacks the cookie then hacker can get access to your personal information. Even corrupted cookies can be read by different domains and lead to security issues. Some sites may write and store your sensitive information in cookies, which should not be allowed due to privacy concerns.&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;&lt;br /&gt;Cookie Testing&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Now when we know the basics of cookie world, let’s address how to test sites that use cookies.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Disabling Cookies&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;This is probably the easiest way of cookie testing. What happens when all cookies are disabled? Start like this: Close all browsers delete all cookies from PC.&lt;br /&gt;&lt;br /&gt;Now, open the website which uses cookies for actions. Now, perform the major functions in the website. Most of the time, these will not work because cookies are disabled. This isn’t a bug: disabling cookies on a site that requires cookies, disables the site’s functionality.&lt;br /&gt;&lt;br /&gt;Is it obvious to the website user that he must have the cookies enables? Web servers are recognizing that attempts are made with disabled cookies, so, does it send a page with a normal message that cookies needs to be enabled before working?&lt;br /&gt;&lt;br /&gt;There should not be any page crash due to disabling the cookies.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Selectively rejecting cookies&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;What happens when some of the cookies are accepted and some are rejected? If there are 10 cookies in web application then randomly accept some cookies say accept 5 and reject 5 cookies. For executing this test case you can set browser options to prompt whenever cookie is being written to disk, delete all previously saved cookies, close all open browsers and then start the test. Try to access major functionality of web site. On the prompt window you can either accept or reject cookie. What’s happening:  pages are getting crashed or data is getting corrupted?&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;&lt;br /&gt;Corrupting cookies&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;This is the test which will test the site! For this, we need to know the cookies the web site is saving and the information that is stored in the text files. Manually edit the cookie in notepad and change the parameters to some vague values. For eg, change the content of the cookie, change the name of the cookie, and then perform actions in the website.  In some cases corrupted cookies allow to read the data inside it for any other domain. This should not happen in case of your web site cookies. Note that the cookies written by one domain say rediff.com can’t be accessed by other domain say yahoo.com.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Cookie Encryption&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;There are websites, where we have no option other than saving sensitive data in cookie. Here it needs to be tested that the data stored in cookie is also getting stored in encrypted format.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Deletion of cookies&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Access a website and allow it to write cookie. Now close all the browsers and manually delete the cookies. Again open the same website and try to work on it. Is it crashing?&lt;br /&gt;&lt;br /&gt;Some times cookie written by domain say ABC.com may be deleted by same domain but by different page under that domain. This is the common case if you are testing some ‘action tracking’ web portal. Action tracking or purchase tracking is placed on the action web page and when any action or purchase occurs by user the cookie written on disk get deleted to avoid multiple action logging from same cookie. Check if reaching to your action or purchase page deletes the cookie properly and no more invalid actions or purchase get logged from same user.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Multi Browser testing&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;This is an important case to check if web application page is writing the cookies properly on different browsers and also the web site works properly using these stored cookies.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;CONCLUSION&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Cookies shouldn’t be put in the same category as the viruses, spam, or spyware that are often created to wreak havoc and chaos on computers. They are mostly benign tools to help you manage your time more efficiently on the Web. Plus, you have totally control over them if you think your secrecy is being violated. Therefore, accept or reject cookies as you want. And the testing should be done properly to check that website is working with different cookie setting. For demo Amazon.com is a very good website for good quality cookie usage.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Author:This article is written by Anamika Chowdhury from HCL.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8312357079004758364-3795791993623155307?l=softwaretesting-guide.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8312357079004758364/posts/default/3795791993623155307'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8312357079004758364/posts/default/3795791993623155307'/><link rel='alternate' type='text/html' href='http://softwaretesting-guide.blogspot.com/2009/11/testing-cookies-in-web-applications.html' title='Testing Cookies in Web Applications'/><author><name>MuraliMohanReddy</name><uri>http://www.blogger.com/profile/04574108783911915562</uri><email>manualtestingmaterial@gmail.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='08378751378402803726'/></author></entry><entry><id>tag:blogger.com,1999:blog-8312357079004758364.post-412859022567510275</id><published>2009-11-19T07:30:00.000-08:00</published><updated>2009-11-19T07:31:49.416-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Automated Open-Source Unit Testing Software'/><title type='text'>Automated Open-Source Unit Testing Software</title><content type='html'>The most widely used Java unit testing software is JUnit(&lt;a href="http://jakarta.apache.org"&gt;http://jakarta.apache.org&lt;/a&gt;), an open-source package from the Apache Jakarta project (http://jakarta.apache.org). Because of its simplicity and popularity, IDE's, such as Borland JBuilder, have integrated JUnit into their IDE. JUnit is a foundation for unit testing Java software. It provides a framework for common functions required for unit testing such as asserting results, gathering success and failures from multiple tests, and reporting mechanism. JUnit is designed to test individual pieces of code, i.e., specific methods, and assert their expected results.&lt;br /&gt;&lt;br /&gt;One limitation of JUnit is that it cannot test server-side java code (backend components in a J2EE container, i.e. EJBs, Tag Libs, Filters, etc.). Jakarta Cactus (&lt;a href="http://jakarta.apache.org/cactus/"&gt;http://jakarta.apache.org/cactus/&lt;/a&gt;) was developed to solve this challenge. Cactus is built on top up JUnit, and provides functionality to test in-container objects.&lt;br /&gt;&lt;br /&gt;HttpUnit (&lt;a href="http://jakarta.apache.org/httpunit/"&gt;http://jakarta.apache.org/httpunit/&lt;/a&gt;) is another example of a package built on top of JUnit, which provides an API to handle web conversations (stateful information such as cookies).&lt;br /&gt;&lt;br /&gt;Like Cactus and HttpUnit, there are many other unit testing packages which are built on top of JUnit, as it provides a fertile infrastructure to create and run automated unit testing for java software. Examples can be found in the Jakarta project, as well as &lt;a href="http://opensource.sourceforge.net"&gt;http://opensource.sourceforge.net&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;visit:www.livrona.com&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8312357079004758364-412859022567510275?l=softwaretesting-guide.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8312357079004758364/posts/default/412859022567510275'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8312357079004758364/posts/default/412859022567510275'/><link rel='alternate' type='text/html' href='http://softwaretesting-guide.blogspot.com/2009/11/automated-open-source-unit-testing.html' title='Automated Open-Source Unit Testing Software'/><author><name>MuraliMohanReddy</name><uri>http://www.blogger.com/profile/04574108783911915562</uri><email>manualtestingmaterial@gmail.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='08378751378402803726'/></author></entry><entry><id>tag:blogger.com,1999:blog-8312357079004758364.post-5579525995241014471</id><published>2009-11-19T07:22:00.000-08:00</published><updated>2009-11-19T07:23:00.478-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Automated Unit Testing'/><title type='text'>Automated Unit Testing</title><content type='html'>Methods (public) are to be concise, decoupled working blocks for effective programming. As such, public methods can be tested to ensure that they process (and sometimes return) correctly. Unit tests ensure the behavior of these components are correct prior to system integration, both with correct and incorrect/invalid inputs. During the lifecycle of classes, methods are added, changed, renamed, and removed constantly. &lt;br /&gt;&lt;br /&gt;At the end of the day, regardless of functional changes, new requirements, etc, these classes and methods should continue to function. Automated Unit Testing can ensure this component functionality without tedious/repetitive testing! Quite often, developer's changes to add new functionality causes errors to show up in previous code! With automated testing in place, if a specific development efforts missed the big picture, developers will know quickly, as the automated tests can run with nightly builds. Managing additions and changes now becomes much clearer and easier.&lt;br /&gt;&lt;br /&gt;Visit:www.livrona.com&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8312357079004758364-5579525995241014471?l=softwaretesting-guide.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8312357079004758364/posts/default/5579525995241014471'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8312357079004758364/posts/default/5579525995241014471'/><link rel='alternate' type='text/html' href='http://softwaretesting-guide.blogspot.com/2009/11/automated-unit-testing.html' title='Automated Unit Testing'/><author><name>MuraliMohanReddy</name><uri>http://www.blogger.com/profile/04574108783911915562</uri><email>manualtestingmaterial@gmail.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='08378751378402803726'/></author></entry><entry><id>tag:blogger.com,1999:blog-8312357079004758364.post-8071072627313759272</id><published>2009-11-19T07:06:00.000-08:00</published><updated>2009-11-19T07:22:04.329-08:00</updated><title type='text'>Testing BEA Portal Applications: Open-Source Automated Unit and Functional Testing</title><content type='html'>Testing is often a last-thought, last-minute process at the end of a project life-cycle. However, designing tests first, and automating them will leave your code bug free, and your boss smiling.&lt;br /&gt;&lt;br /&gt;I want this functionality done by Monday.Unfortunately, Monday (formerly PwC Consulting) was bought out by IBM Global Services. So, the Monday isn't who's doing it.. it's when the code is due! Faced with that deadline, the first thing a developer has in mind is getting code done as quickly as possible. What they might miss, however, is that the most effective task they could do first is creating a test plan. Even better, an automated one.&lt;br /&gt;&lt;br /&gt;Often with a rapidly approaching deadline, developers are very focused on delivering specific pieces of functionality. As such, the greater picture is sometimes lost. Developing a test plan before coding helps lay out complete functionality needs and system responses to the designated requirements. Creating automated test plans offer an even greater pay back: they not only offer the benefit of helping a developer think through the design, but also ensure that each build has working code. With automated testing in place, developers can focus on developing individual components, ensuring they meet the test parameters, and ultimately integrate these classes to meet the functional requirements. As a developer thinks through application design via an upfront test plan design, the developer will have a head start on meeting the code deadline.&lt;br /&gt;&lt;br /&gt;Automated testing offers a number of advantages to manual, repetitive testing. Not only do automated test plans help test new requirements, they also help ensure old ones continue to be met. Manual testing is tedious, and many mistakes are made as testers re-run the same scripts over and over. Automated testing frees up resources, allowing testers to ensure new functionality matches its specifications, while allowing developers the freedom to continue product enhancements. As new releases bring new functionality and new developers, previous code implementation design may have been forgotten/lost. Automated testing ensures that previous functionality continues to work, despite code changes, allowing for a robust, rapid response environment.&lt;br /&gt;&lt;br /&gt;Many developers are unsure of the test phases and their purposes, as there several stages of testing. Listed below are typical stages that many software development firms follow:&lt;br /&gt;&lt;br /&gt;Test Stage Name What does it Mean&lt;br /&gt;Unit - Testing individual methods/classes.&lt;br /&gt;&lt;br /&gt;* System - Testing group of classes which interface with a particular system (usually with the system stubbed out).&lt;br /&gt;&lt;br /&gt;* Integration (End-To-End) - Testing system integration, ensuring data integrity and expected responses between systems.&lt;br /&gt;&lt;br /&gt;* Functional - Testing that an application meets all functional specifications given, including positive and negative cases.&lt;br /&gt;&lt;br /&gt;* Load - Testing systems to ensure they can handle expected volumes while still meeting response times.&lt;br /&gt;&lt;br /&gt;* Stress - Testing systems to see where their limits are and identify bottlenecks.&lt;br /&gt;&lt;br /&gt;* User Acceptance Testing (UAT) - Final testing by the business user community.&lt;br /&gt;&lt;br /&gt;The foundation of each stage is based on two components, performing an action or actions and assertion of the result. With this simplistic approach, automated tests can be used to run an action and evaluate the systems response.&lt;br /&gt;&lt;br /&gt;for more details visit:www.livrona.com&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8312357079004758364-8071072627313759272?l=softwaretesting-guide.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8312357079004758364/posts/default/8071072627313759272'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8312357079004758364/posts/default/8071072627313759272'/><link rel='alternate' type='text/html' href='http://softwaretesting-guide.blogspot.com/2009/11/testing-bea-portal-applications-open.html' title='Testing BEA Portal Applications: Open-Source Automated Unit and Functional Testing'/><author><name>MuraliMohanReddy</name><uri>http://www.blogger.com/profile/04574108783911915562</uri><email>manualtestingmaterial@gmail.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='08378751378402803726'/></author></entry><entry><id>tag:blogger.com,1999:blog-8312357079004758364.post-6998013380053388850</id><published>2009-11-19T07:01:00.000-08:00</published><updated>2009-11-19T07:03:03.405-08:00</updated><title type='text'>CodeProject: White Box Testing Technique. Free source code and programming help</title><content type='html'>Software is tested from two different perspectives:&lt;br /&gt;(1) Internal program logic is exercised using “white box” test case design techniques.&lt;br /&gt;(2) Software requirements are exercised using “black box” test case design techniques.&lt;br /&gt;&lt;br /&gt;In both cases, the intent is to find the maximum number of errors with the minimum amount of effort and time.&lt;br /&gt;&lt;br /&gt;White-box testing of software is predicated on close examination of procedural detail. Logical paths through the software are tested by providing test cases that exercise specific sets of conditions and/or loops. The "status of the program" may be examined at various points to determine if the expected or asserted status corresponds to the actual status. &lt;br /&gt;&lt;br /&gt;Visit More details:&lt;a href="http://www.codeproject.com/KB/testing/white-box-testing.aspx"&gt;White Box Testing Technique&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8312357079004758364-6998013380053388850?l=softwaretesting-guide.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8312357079004758364/posts/default/6998013380053388850'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8312357079004758364/posts/default/6998013380053388850'/><link rel='alternate' type='text/html' href='http://softwaretesting-guide.blogspot.com/2009/11/codeproject-white-box-testing-technique.html' title='CodeProject: White Box Testing Technique. Free source code and programming help'/><author><name>MuraliMohanReddy</name><uri>http://www.blogger.com/profile/04574108783911915562</uri><email>manualtestingmaterial@gmail.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='08378751378402803726'/></author></entry><entry><id>tag:blogger.com,1999:blog-8312357079004758364.post-4088354220605249070</id><published>2009-10-05T06:45:00.000-07:00</published><updated>2009-10-05T07:21:44.191-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Acceptance Test Plan'/><title type='text'>Acceptance Test Plan</title><content type='html'>The client at their place performs the acceptance testing. It will be very similar to the system test performed by the &lt;span style="font-weight:bold;"&gt;Software Development Unit&lt;/span&gt;. Since the client is the one who decides the format and testing methods and testing methods as part of acceptance testing,there is no specific clue on the way they will carry out the testing.&lt;br /&gt;&lt;br /&gt;But it will not differ much from the system testing.Assume that all the rules,which are applicable to system test,can be implemented to acceptance also.&lt;br /&gt;&lt;br /&gt;Since this is just one level of testing done by the client for the overall product,it may include test cases including the unit and integration test level details.&lt;br /&gt;&lt;br /&gt;A sample Test Plan Outline along with their description is as shown below:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Test Plan Outline&lt;/span&gt;:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;1. BACKGROUND&lt;/span&gt;: This item summarizes the functions of the application system and the tests to be performed.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;2.INTRODUCTION:&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;3.ASSUMPTIONS:&lt;/span&gt;Indicates any anticipated assumptions which will be made while testing the application.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;4.TEST ITEMS:&lt;/span&gt;List each of the items (programs) to be tested.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;5.FEATURES TO BE TESTED:&lt;/span&gt; List each of the features (functions or requirements),which will be tested or demonstrated by the test.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;6.FEATURES NOT TO BE TESTED:&lt;/span&gt;Explicitly lists each feature,function,or requirement which won't be tested and why not.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;7.APPROACH:&lt;/span&gt;Describe the data flows and test philosophy.Simulation or Live execution,etc. This section also mentions all the approaches,which will be followed at the various stages of the test execution.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;8.ITEM PASS/FAIL CRITERIA:&lt;/span&gt;Itemized list of expected output and tolerances.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;9.SUSPENSION/RESUMPTION CRITERIA:&lt;/span&gt;Must the test run from start to completion? under what circumstances it may be resumed in the middle? Establish check-points in long tests.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;10.TEST DELIVERABLES:&lt;/span&gt;What,besides software,will be delivered? We have to identify all possible deliverables to the customer and should be clearly documented,the typical deliverables could be&lt;br /&gt;&lt;br /&gt;a)Test Requirement document&lt;br /&gt;b)Test Strategy&lt;br /&gt;c)Test Plan&lt;br /&gt;d)Test case design docs and RTM's&lt;br /&gt;e)Test execution Results and Reporting&lt;br /&gt;f)Metrics Report&lt;br /&gt;g)Test summary report&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;11.TESTING TASKS:&lt;/span&gt;Functional tasks(example.,equipment set up) Administrative tasks&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;12.ENVIRONMENTAL NEEDS:&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;a)Security clearance&lt;br /&gt;b)Office space &amp; equipment&lt;br /&gt;c)Hardware/software requirements&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;13.RESPONSIBILITIES:&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;a)who does the tasks in section 10?&lt;br /&gt;b)what does the user do?&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;14.STAFFING &amp; TRAINING:&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;15.SCHEDULE:&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;16.RESOURCES:&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;17.RISKS &amp; CONTINGENCIES:&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;18.APPROVALS:&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;The schedule details of the various test passes such as Unit tests,Integration tests,System Test should be clearly mentioned along with the estimated efforts.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8312357079004758364-4088354220605249070?l=softwaretesting-guide.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8312357079004758364/posts/default/4088354220605249070'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8312357079004758364/posts/default/4088354220605249070'/><link rel='alternate' type='text/html' href='http://softwaretesting-guide.blogspot.com/2009/10/acceptance-test-plan.html' title='Acceptance Test Plan'/><author><name>MuraliMohanReddy</name><uri>http://www.blogger.com/profile/04574108783911915562</uri><email>manualtestingmaterial@gmail.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='08378751378402803726'/></author></entry><entry><id>tag:blogger.com,1999:blog-8312357079004758364.post-8901286905868858935</id><published>2009-10-05T06:33:00.000-07:00</published><updated>2009-10-05T06:44:59.461-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Special Testing Methods'/><title type='text'>Special Testing Methods</title><content type='html'>This covers the different special tests like load/volume testing,stress testing,interoperability testing etc.These testing are to be done based on the nature of the product and it is not mandatory that every one of these special test must be performed for every product.&lt;br /&gt;&lt;br /&gt;Apart from the above sections,the following sections are addressed,very specific to system testing.&lt;br /&gt;&lt;br /&gt;1.System Testing Tools&lt;br /&gt;2.Priority of functional groups&lt;br /&gt;3.Naming convention for test cases&lt;br /&gt;4.Status reporting mechanism&lt;br /&gt;5.ETVX criteria&lt;br /&gt;6.Build/Refresh criteria&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8312357079004758364-8901286905868858935?l=softwaretesting-guide.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8312357079004758364/posts/default/8901286905868858935'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8312357079004758364/posts/default/8901286905868858935'/><link rel='alternate' type='text/html' href='http://softwaretesting-guide.blogspot.com/2009/10/special-testing-methods.html' title='Special Testing Methods'/><author><name>MuraliMohanReddy</name><uri>http://www.blogger.com/profile/04574108783911915562</uri><email>manualtestingmaterial@gmail.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='08378751378402803726'/></author></entry><entry><id>tag:blogger.com,1999:blog-8312357079004758364.post-4570094702144689463</id><published>2009-10-05T06:29:00.000-07:00</published><updated>2009-10-05T06:44:59.464-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Functional Groups and the Sequence'/><title type='text'>Functional Groups and the Sequence</title><content type='html'>The requirements can be grouped in terms of the functionality.Based on this,there may be prosperities also among the functional groups.&lt;br /&gt;&lt;br /&gt;For Example:In a banking application,anything related to customer accounts can be grouped into one are,anything related to inter-branch transactions may be grouped into one area etc.&lt;br /&gt;&lt;br /&gt;Same way for the product being tested,these areas are to be mentioned here and the suggested sequence of testing of these areas,based on the priorities are to be described.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8312357079004758364-4570094702144689463?l=softwaretesting-guide.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8312357079004758364/posts/default/4570094702144689463'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8312357079004758364/posts/default/4570094702144689463'/><link rel='alternate' type='text/html' href='http://softwaretesting-guide.blogspot.com/2009/10/functional-groups-and-sequence.html' title='Functional Groups and the Sequence'/><author><name>MuraliMohanReddy</name><uri>http://www.blogger.com/profile/04574108783911915562</uri><email>manualtestingmaterial@gmail.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='08378751378402803726'/></author></entry><entry><id>tag:blogger.com,1999:blog-8312357079004758364.post-8624970356768263271</id><published>2009-10-05T06:26:00.001-07:00</published><updated>2009-10-05T06:44:59.466-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Inscope'/><category scheme='http://www.blogger.com/atom/ns#' term='Outscope'/><title type='text'>What is to be tested?</title><content type='html'>This section defines the scope of system testing,very specific to the project.Normally the system testing is based on the requirements.All requirements are to be verified in the scope of system testing.This covers the functionality of the product.A part from this what special testing is performed are also stated here.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8312357079004758364-8624970356768263271?l=softwaretesting-guide.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8312357079004758364/posts/default/8624970356768263271'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8312357079004758364/posts/default/8624970356768263271'/><link rel='alternate' type='text/html' href='http://softwaretesting-guide.blogspot.com/2009/10/what-is-to-be-tested.html' title='What is to be tested?'/><author><name>MuraliMohanReddy</name><uri>http://www.blogger.com/profile/04574108783911915562</uri><email>manualtestingmaterial@gmail.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='08378751378402803726'/></author></entry><entry><id>tag:blogger.com,1999:blog-8312357079004758364.post-8417017268557132722</id><published>2009-10-05T06:21:00.000-07:00</published><updated>2009-10-05T06:44:59.471-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='System Test Plan'/><title type='text'>System Test Plan</title><content type='html'>The system test plan is the overall plan carrying out the system test level activities.In the system test,apart from testing the functional aspects of the system,there are some special testing activities carried out,such as stress testing etc.The following are the the sections normally present in system test plan.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8312357079004758364-8417017268557132722?l=softwaretesting-guide.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8312357079004758364/posts/default/8417017268557132722'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8312357079004758364/posts/default/8417017268557132722'/><link rel='alternate' type='text/html' href='http://softwaretesting-guide.blogspot.com/2009/10/system-test-plan.html' title='System Test Plan'/><author><name>MuraliMohanReddy</name><uri>http://www.blogger.com/profile/04574108783911915562</uri><email>manualtestingmaterial@gmail.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='08378751378402803726'/></author></entry><entry><id>tag:blogger.com,1999:blog-8312357079004758364.post-3039105009757426923</id><published>2009-08-01T21:45:00.000-07:00</published><updated>2009-08-01T21:58:19.685-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Quality Center'/><title type='text'>Objectives of Quality Center</title><content type='html'>1. Using Business process testing quality process.&lt;br /&gt;2. With quality center we can maintain all details of all projects, which are currently   in company.&lt;br /&gt;3. we prepare defect reports, which are identified by testing team.&lt;br /&gt;4. Quality center helps you organize and manage all phases of the application testing process, including specifying testing requirements, planning tests,executing tests, and tracking defects.&lt;br /&gt;5.Quality center simplifies and organizes test management by giving you systematic control over the testing process. It helps you create a framework and foundation for your testing work flow.&lt;br /&gt;6. Quality center helps you maintain a project database of tests that cover all aspects of your application's functionality including tests created,tests executed,defects identified by testing team.&lt;br /&gt;7. Quality center provides an intuitive and efficient method for scheduling and executing test sets,collecting test results, and analyzing the data.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Test Management Process&lt;/span&gt;&lt;br /&gt;A) Requirements&lt;br /&gt;B) Business Components&lt;br /&gt;C) Test Plan&lt;br /&gt;D) Test Lab&lt;br /&gt;E) Defects&lt;br /&gt;&lt;br /&gt;A) &lt;span style="font-weight:bold;"&gt;Requirements&lt;/span&gt;: We can specify all requirements necessary for current application&lt;br /&gt;&lt;br /&gt;B) &lt;span style="font-weight:bold;"&gt;Business Components&lt;/span&gt;: Specifies all components needed to verify the current application.&lt;br /&gt;&lt;br /&gt;C) &lt;span style="font-weight:bold;"&gt;Test Plan&lt;/span&gt;: With this we can created no.of test cases and no.of automated test scripts based on your testing requirements.&lt;br /&gt;&lt;br /&gt;D) &lt;span style="font-weight:bold;"&gt;Test Lab&lt;/span&gt;: We can create no.of test sets and can execute no.of. test cases including automated tests.&lt;br /&gt;&lt;br /&gt;E) &lt;span style="font-weight:bold;"&gt;Reports&lt;/span&gt;: Report all defects detected in your application and track how repairs are progressing.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8312357079004758364-3039105009757426923?l=softwaretesting-guide.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8312357079004758364/posts/default/3039105009757426923'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8312357079004758364/posts/default/3039105009757426923'/><link rel='alternate' type='text/html' href='http://softwaretesting-guide.blogspot.com/2009/08/objectives-of-quality-center.html' title='Objectives of Quality Center'/><author><name>MuraliMohanReddy</name><uri>http://www.blogger.com/profile/04574108783911915562</uri><email>manualtestingmaterial@gmail.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='08378751378402803726'/></author></entry><entry><id>tag:blogger.com,1999:blog-8312357079004758364.post-2436646707985161666</id><published>2009-08-01T21:22:00.000-07:00</published><updated>2009-08-01T21:44:44.342-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Quality Center'/><title type='text'>Quality Center</title><content type='html'>It is Web based Test Management tool and advanced to Test Director.It supports in windows and Linux platforms and Vista Operating systems and supports on IIS &amp; Jboss Servers.Also,it supports client server,web server applications and all types of automated tools.Reduce testing and test maintenance costs.It provides the ability to copy and paste the components across the components and the ability to increase efficiency and productivity.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8312357079004758364-2436646707985161666?l=softwaretesting-guide.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8312357079004758364/posts/default/2436646707985161666'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8312357079004758364/posts/default/2436646707985161666'/><link rel='alternate' type='text/html' href='http://softwaretesting-guide.blogspot.com/2009/08/quality-center.html' title='Quality Center'/><author><name>MuraliMohanReddy</name><uri>http://www.blogger.com/profile/04574108783911915562</uri><email>manualtestingmaterial@gmail.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='08378751378402803726'/></author></entry><entry><id>tag:blogger.com,1999:blog-8312357079004758364.post-4317572314085713123</id><published>2009-08-01T21:06:00.000-07:00</published><updated>2009-08-01T21:19:12.551-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Quality Center'/><title type='text'>Four Primary Functions of Quality Center</title><content type='html'>1. Capturing business requirements.&lt;br /&gt;2. Building Test Plan,Test Cases and Tracking defects.&lt;br /&gt;3. Creating test sets and test results in Test Lab.&lt;br /&gt;4. Tracking and managing.&lt;br /&gt;&lt;br /&gt;1. &lt;span style="font-weight:bold;"&gt;Capturing business requirements&lt;/span&gt;:&lt;br /&gt;&lt;br /&gt;A) Group requirements by business function.&lt;br /&gt;B) Link requirements to test cases and defects.&lt;br /&gt;C) Import/Export facility from/to MS Word or MS Excel&lt;br /&gt;D) view defects associated with a requirement.&lt;br /&gt;&lt;br /&gt;2. &lt;span style="font-weight:bold;"&gt;Building Test Plan,Test Cases and Tracking defects&lt;/span&gt;:&lt;br /&gt;&lt;br /&gt;A) Define test Parameters (Add/Delete/Modify test steps to conform with business rules.)&lt;br /&gt;B) Validate test coverage for all requirements.&lt;br /&gt;C) Provide a centralized repository that can store all automated tests.&lt;br /&gt;D) Integrate with Winrunner/QTP for automated testing.&lt;br /&gt;&lt;br /&gt;3. &lt;span style="font-weight:bold;"&gt;Creating test sets and test results in Test Lab&lt;/span&gt;:&lt;br /&gt;&lt;br /&gt;A) Group test scripts to achieve testing goals (module functionality).&lt;br /&gt;B) Schedule tests.&lt;br /&gt;C) Record expected and actual results for each step.&lt;br /&gt;D) Record Pass/Fail results for each test step.&lt;br /&gt;&lt;br /&gt;4. &lt;span style="font-weight:bold;"&gt;Tracking and managing&lt;/span&gt;:&lt;br /&gt;&lt;br /&gt;A) Add and Tract defects&lt;br /&gt;B) Follow up with the defect management life cycle.&lt;br /&gt;C) Links with Email system for defect notification.&lt;br /&gt;D) Save graphs in MS Word or MS Excel.&lt;br /&gt;E) Generate reports as MS Word documents.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8312357079004758364-4317572314085713123?l=softwaretesting-guide.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8312357079004758364/posts/default/4317572314085713123'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8312357079004758364/posts/default/4317572314085713123'/><link rel='alternate' type='text/html' href='http://softwaretesting-guide.blogspot.com/2009/08/four-primary-functions-of-quality.html' title='Four Primary Functions of Quality Center'/><author><name>MuraliMohanReddy</name><uri>http://www.blogger.com/profile/04574108783911915562</uri><email>manualtestingmaterial@gmail.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='08378751378402803726'/></author></entry><entry><id>tag:blogger.com,1999:blog-8312357079004758364.post-5691905872633075486</id><published>2009-07-20T07:00:00.000-07:00</published><updated>2009-07-20T07:05:30.074-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Camcorders'/><category scheme='http://www.blogger.com/atom/ns#' term='Cameras'/><category scheme='http://www.blogger.com/atom/ns#' term='Backup Software'/><category scheme='http://www.blogger.com/atom/ns#' term='Audio Players'/><category scheme='http://www.blogger.com/atom/ns#' term='Cell Phones'/><title type='text'>How We Test Products</title><content type='html'>PC World does two major forms of testing of all products under consideration for review: hands-on testing by editors and writers who are experts in the product category, and formal lab testing by the PC World Test Center.&lt;br /&gt;&lt;br /&gt;In the near future we will publish all of the methodology we use for our hands-on testing, which, like lab testing, follows rigorous guidelines to ensure fair and impartial analysis.&lt;br /&gt;&lt;br /&gt;Following is a synopsis of the tests that the PC World Test Center performs for major product categories. Other major categories will be added soon, including our procedures for testing televisions.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.pcworld.com/article/122812/how_we_test.html"&gt;ReadMore&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8312357079004758364-5691905872633075486?l=softwaretesting-guide.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8312357079004758364/posts/default/5691905872633075486'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8312357079004758364/posts/default/5691905872633075486'/><link rel='alternate' type='text/html' href='http://softwaretesting-guide.blogspot.com/2009/07/how-we-test-products.html' title='How We Test Products'/><author><name>MuraliMohanReddy</name><uri>http://www.blogger.com/profile/04574108783911915562</uri><email>manualtestingmaterial@gmail.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='08378751378402803726'/></author></entry><entry><id>tag:blogger.com,1999:blog-8312357079004758364.post-6334779018508675726</id><published>2009-07-12T06:13:00.000-07:00</published><updated>2009-07-12T06:32:48.912-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Database Regression Testing'/><title type='text'>Database Regression Testing</title><content type='html'>Database testing is new to many people, and as a result you are likely to face several challenges:&lt;br /&gt;&lt;br /&gt;1. Insufficient testing skills.&lt;br /&gt;2. Insufficient unit tests for existing databases.&lt;br /&gt;3. Insufficient database testing tools.&lt;br /&gt;4. Reticent DM groups.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Database Testing and Data Inspection&lt;/span&gt;:&lt;br /&gt;&lt;br /&gt;A common quality technique is to use data inspection tools to examine existing data within a database. You might use something as simple as a SQL based Query tool such as DB Inspect to select a subset of the data within a database to visually inspect the results. &lt;br /&gt;&lt;br /&gt;For Example: You may choose to view the unique values in a column to determine what values are stored in it, or compare the row count of a table with the count of the resulting rows from joining the table with another one. If the two counts are the same then you don't have an RI problem across the join.&lt;br /&gt;&lt;br /&gt;As Richard Dallaway points out, the problem with data inspection is that it is often done manually and on an irregular basis. When you make changes later, sometimes months or years later, you need to redo your inspection efforts. This is costly, time consuming, and error prone.&lt;br /&gt;&lt;br /&gt;Data inspection is more of a debugging technique than it is a testing technique. It is  clearly an important technique, but it's not something that will greatly contribute to your efforts to ensure data quality within you organization.&lt;br /&gt;&lt;br /&gt;Best Practices:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Use an in-memory database for regression testing&lt;/span&gt;: You can dramatically speed up your database tests by running them, or at least portions of them, against an in-memory database such as HSQLDB. The challenge with this approach is that because database methods are implemented differently across database vendors that any method tests will still need to run against the actual database server.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Start fresh each major test run&lt;/span&gt;: To ensure a clean database, a common strategy is that at the beginning of each test run you drop the database, then rebuild it from scratch taking into account all database re factorings and transformations to that point,then reload the test data, and then run your tests. Of course, you wouldn't do this to your production database.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Take a connection approach to regression testing&lt;/span&gt;: TDD approach to development is an incredibly effective way to work.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Train people in testing&lt;/span&gt;: Many developers and DBAs have not been trained in testing skills, and they almost certainly haven't been trained in database testing skills. Invest in your people, and give them the training and education they need to do their jobs.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Pair with novices with people that have database testing experience&lt;/span&gt;: One of the easiest ways to gain database testing skills is to pair program with someone who already has them.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8312357079004758364-6334779018508675726?l=softwaretesting-guide.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8312357079004758364/posts/default/6334779018508675726'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8312357079004758364/posts/default/6334779018508675726'/><link rel='alternate' type='text/html' href='http://softwaretesting-guide.blogspot.com/2009/07/database-regression-testing.html' title='Database Regression Testing'/><author><name>MuraliMohanReddy</name><uri>http://www.blogger.com/profile/04574108783911915562</uri><email>manualtestingmaterial@gmail.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='08378751378402803726'/></author></entry><entry><id>tag:blogger.com,1999:blog-8312357079004758364.post-8037722510118473329</id><published>2009-06-06T22:00:00.000-07:00</published><updated>2009-06-06T22:01:19.584-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Unstructured Loops'/><title type='text'>Unstructured Loops</title><content type='html'>Whenever possible, this class of loops should be redesigned to reflect the use of the structural programming constructs.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8312357079004758364-8037722510118473329?l=softwaretesting-guide.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8312357079004758364/posts/default/8037722510118473329'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8312357079004758364/posts/default/8037722510118473329'/><link rel='alternate' type='text/html' href='http://softwaretesting-guide.blogspot.com/2009/06/unstructured-loops.html' title='Unstructured Loops'/><author><name>MuraliMohanReddy</name><uri>http://www.blogger.com/profile/04574108783911915562</uri><email>manualtestingmaterial@gmail.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='08378751378402803726'/></author></entry><entry><id>tag:blogger.com,1999:blog-8312357079004758364.post-2317341554209312869</id><published>2009-06-06T21:56:00.000-07:00</published><updated>2009-06-06T21:59:13.284-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Concatenated Loops'/><title type='text'>Concatenated Loops</title><content type='html'>Concatenated Loops can be tested using the approach defined for simple loops,if each of the loops is independent of the other. However, if two loops are concatenated and the loop counter for loop 1 is used as the initial value for loop 2, then the loops are not independent.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8312357079004758364-2317341554209312869?l=softwaretesting-guide.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8312357079004758364/posts/default/2317341554209312869'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8312357079004758364/posts/default/2317341554209312869'/><link rel='alternate' type='text/html' href='http://softwaretesting-guide.blogspot.com/2009/06/concatenated-loops.html' title='Concatenated Loops'/><author><name>MuraliMohanReddy</name><uri>http://www.blogger.com/profile/04574108783911915562</uri><email>manualtestingmaterial@gmail.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='08378751378402803726'/></author></entry><entry><id>tag:blogger.com,1999:blog-8312357079004758364.post-5381505655482144463</id><published>2009-06-06T21:51:00.000-07:00</published><updated>2009-06-06T21:56:19.720-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Nested Loops'/><title type='text'>Nested Loops</title><content type='html'>If we extend the test approach from simple loops to nested loops, the number of possible tests would grow geometrically as the level of nesting increases.&lt;br /&gt;&lt;br /&gt;1. Start at the innermost loop. Set all other loops to minimum values.&lt;br /&gt;&lt;br /&gt;2. Conduct simple loop tests for the innermost loop while holding the outer loops at their minimum iteration parameter values. Add other tests for out-of-range or exclude values.&lt;br /&gt;&lt;br /&gt;3. Work outward, conducting tests for the next loop, but keep all other outer loops at minimum values and other nested loops to "typical" values.&lt;br /&gt;&lt;br /&gt;4. Continue until all loops have been tested.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8312357079004758364-5381505655482144463?l=softwaretesting-guide.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8312357079004758364/posts/default/5381505655482144463'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8312357079004758364/posts/default/5381505655482144463'/><link rel='alternate' type='text/html' href='http://softwaretesting-guide.blogspot.com/2009/06/nested-loops.html' title='Nested Loops'/><author><name>MuraliMohanReddy</name><uri>http://www.blogger.com/profile/04574108783911915562</uri><email>manualtestingmaterial@gmail.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='08378751378402803726'/></author></entry><entry><id>tag:blogger.com,1999:blog-8312357079004758364.post-198144575431203559</id><published>2009-06-06T21:39:00.000-07:00</published><updated>2009-06-06T21:50:11.557-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Control Structural Testing'/><title type='text'>Control Structural Testing</title><content type='html'>There are some of the variations of Control Structural Testing is described below.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Conditional Testing&lt;/span&gt;: Conditional testing is a test case design method that exercises the logical conditions contained in a program module.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Data Flow Testing&lt;/span&gt;: The data flow testing method selects test paths of a program according to the locations of definitions and uses of variables in the program.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Loop Testing&lt;/span&gt;:It is a White Box Testing technique that focuses exclusively on the validity of loop constructs. Four classes of loops can be defined: Simple loops, Concatenated loops,nested loops, and unstructured loops.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Simple Loops&lt;/span&gt;: The following sets of tests can be applied to simple loops, where 'n' is the maximum number of allowable passes through the loop.&lt;br /&gt;&lt;br /&gt;1. Skip the loop entirely.&lt;br /&gt;&lt;br /&gt;2. Only one pass through the loop.&lt;br /&gt;&lt;br /&gt;3. Two passes through the loop.&lt;br /&gt;&lt;br /&gt;4. 'm' passes the loop where m &lt; n&lt;br /&gt;&lt;br /&gt;5. n-1, n, n+1 passes through the loop.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8312357079004758364-198144575431203559?l=softwaretesting-guide.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8312357079004758364/posts/default/198144575431203559'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8312357079004758364/posts/default/198144575431203559'/><link rel='alternate' type='text/html' href='http://softwaretesting-guide.blogspot.com/2009/06/control-structural-testing.html' title='Control Structural Testing'/><author><name>MuraliMohanReddy</name><uri>http://www.blogger.com/profile/04574108783911915562</uri><email>manualtestingmaterial@gmail.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='08378751378402803726'/></author></entry><entry><id>tag:blogger.com,1999:blog-8312357079004758364.post-5894197044306416091</id><published>2009-06-06T21:33:00.000-07:00</published><updated>2009-06-06T21:39:09.547-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Graph Matrices'/><title type='text'>Graph Matrices</title><content type='html'>The procedure for deriving the flow graph and even determining a set of basis paths is amenable to mechanization. To develop a software tool that assists in basis path testing, a data structure, called a graph matrix can be quite useful.&lt;br /&gt;&lt;br /&gt;A Graph Matrix is a square matrix whose size is equal to the number of nodes on the flow graph. Each row and column corresponds to an identified node, and matrix entries correspond to connections between nodes.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8312357079004758364-5894197044306416091?l=softwaretesting-guide.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8312357079004758364/posts/default/5894197044306416091'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8312357079004758364/posts/default/5894197044306416091'/><link rel='alternate' type='text/html' href='http://softwaretesting-guide.blogspot.com/2009/06/graph-matrices.html' title='Graph Matrices'/><author><name>MuraliMohanReddy</name><uri>http://www.blogger.com/profile/04574108783911915562</uri><email>manualtestingmaterial@gmail.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='08378751378402803726'/></author></entry></feed>