<?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/"
	xmlns:georss="http://www.georss.org/georss" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:media="http://search.yahoo.com/mrss/"
	>

<channel>
	<title>Tester blog</title>
	<atom:link href="http://faisssal.wordpress.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://faisssal.wordpress.com</link>
	<description>We all want the Internet to be faster!</description>
	<lastBuildDate>Sun, 08 Jan 2012 15:46:22 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.com/</generator>
<cloud domain='faisssal.wordpress.com' port='80' path='/?rsscloud=notify' registerProcedure='' protocol='http-post' />
<image>
		<url>http://s2.wp.com/i/buttonw-com.png</url>
		<title>Tester blog</title>
		<link>http://faisssal.wordpress.com</link>
	</image>
	<atom:link rel="search" type="application/opensearchdescription+xml" href="http://faisssal.wordpress.com/osd.xml" title="Tester blog" />
	<atom:link rel='hub' href='http://faisssal.wordpress.com/?pushpress=hub'/>
		<item>
		<title>Software Testing in Agile Project</title>
		<link>http://faisssal.wordpress.com/2009/09/12/software-testing-in-agile-project/</link>
		<comments>http://faisssal.wordpress.com/2009/09/12/software-testing-in-agile-project/#comments</comments>
		<pubDate>Sat, 12 Sep 2009 07:58:00 +0000</pubDate>
		<dc:creator>Mohamed</dc:creator>
				<category><![CDATA[Software Tester]]></category>

		<guid isPermaLink="false">http://faisssal.wordpress.com/?p=90</guid>
		<description><![CDATA[It is needless to say that for the success of any organization, we need cooperation within the team and that the team should have the flexibility to change direction when required. The agile manifesto talks about this cooperation. I have worked with many organizations seeing a connection between the agile manifesto and how they develop [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=faisssal.wordpress.com&amp;blog=552552&amp;post=90&amp;subd=faisssal&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>It is needless to say that for the success of any organization, we need cooperation within the team and that the team should have the flexibility to change direction when required.</p>
<p>The agile manifesto talks about this cooperation. I have worked with many organizations seeing a connection between the agile manifesto and how they develop their software. But when it comes to testing, the connection is lost, and they stick to having a ‘phase’ between the point when development stops and the delivery of the product to the customer. This phase is the test phase where the QA team does their ‘stuff</p>
<p>let‘s take a closer look at the agile manifesto, which was written in February 2001 by seventeen people that needed an alternative to the document-driven, heavy-weight software development processes that were predominant at that time.</p>
<p><strong>What is agile manifesto</strong></p>
<p><strong>What make process agile are the following values:</strong></p>
<p><em> </em><strong>Individuals and interactions</strong><em> </em><em>over processes and tools</em><em>• </em><strong>Working software</strong><em> over comprehensive</em><em> </em><em>documentation</em><strong><em> </em></strong><strong>Customer collaboration</strong><em> </em><em>over contract negotiation</em><strong><em> </em></strong><strong>Responding to change</strong><em> </em><em>over following Plan</em><em> </em></p>
<p><em> </em></p>
<p>One of the principal misunderstandings of the agile manifesto is the part regarding documentation. Many think that agile processes are all about coding and not documenting anything. The agile manifesto says nothing about not writing documents, and many people in the agile community want to restore the credibility lost to the methodology due to this misunderstanding. It is about finding a balance between what documentation to write, and what not to write. In many companies large amounts of documentation is written, stored in some repository, and then left where it will often remain untouched, unread and (even worse) unmaintained.</p>
<p><em>Two of the twelve principles behind the agile manifesto are:</em><em> </em></p>
<p><em> • Working software is the primary measure of progress </em><em> </em></p>
<p><em> • Deliver working software frequently, from a couple of weeks to a couple of months,    with a preference to the shorter time scale.</em><em> </em></p>
<p>So we should deliver working software within a couple of weeks if we want to be agile. In short, we have to program and test the new features in very short time scales. Having both the development and testing teams work as one is a must and an accepted fact in the agile world.</p>
<p>The Agile Development Method is growing in popularity as it provides solutions that are quicker and simpler</p>
<p><strong>How to test in an agile project?</strong></p>
<p><strong></strong></p>
<p>Now finally the big questions: How can we make testing agile and what is agile testing?</p>
<p>The first thing, from my perspective, is that testing has to become a natural part of an agile project and not just a phase after the developers have stopped coding and before customers receives their software. It’s about reaching the same goal as a team, i.e. to deliver working software within as short a space of time as possible. With this short time scale, we as testers need to change our working methods. We need to step away from the nagging position we have in a waterfall process and become more active in the process of developing the software. Active does not mean that we should be sitting down hammering in code, but we should be involved from the beginning and be giving the developers feedback instantly on how the new feature works, instead of complaining at the end when everything is built.</p>
<p>To make this possible, we need to have frequent integration of new features, for example through nightly builds, where every morning there is new software ready to be tested. The testing should be performed manually as an exploratory test, since this is a rapid way of testing instantly, no extra documentation, no extra work, just the minimum effort required to succeed, namely testing the new features. But how can we possibly do regression testing when we have no test cases?</p>
<p>When I talk to fellow testers who are into classic testing, we soon run into disagreements:</p>
<p><em> • </em><em>We need the test cases for regression testing later on when the product has come in to maintenance’s phase, they say.</em><em></em></p>
<p><em> • Let’s spend time to automate these test cases, so we don’t need to spend time running them manually later on, I reply.</em><em></em></p>
<p>Let me explain how I see things. Assume that we have a software project that is at the beginning of its life cycle. Not too complex, the GUI has started to fall in place, let’s say it is a web application. We need to start to test automatically as soon as possible, which can be easily achieved using a tool that records our clicks and keystrokes. After each nightly run of the automated tests, we then add new test cases the next morning. This means that we get some extra time to add new automated test cases, or do some exploratory testing, since we don’t need to test the existing ones manually.</p>
<p>The profile for an agile tester is not the same as the profile of a classic tester. I see the agile tester as a person with a more technically orientated profile, a person that enjoys developing, debugging and testing. This profile is wanted in agile projects, since it will help the developers to find where the bug is, instead of just pointing out the symptom of the bug.</p>
<p>In summary, in agile testing you need to start to execute tests fast. Having working software early is a key aspect, and this means you have to have testable software early. Exploratory testing is ideal for you to be able to make a fast evaluation of the software with a minimum of preparation, and experience has shown that it is also very effective for finding problems in the software. Critical parts of the software should never fail, and you need to make sure that they are not broken in the fast development cycle. Because of this, it is worth putting effort into implementing automated regression tests.</p>
<br />Posted in Software Tester  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/faisssal.wordpress.com/90/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/faisssal.wordpress.com/90/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/faisssal.wordpress.com/90/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/faisssal.wordpress.com/90/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/faisssal.wordpress.com/90/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/faisssal.wordpress.com/90/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/faisssal.wordpress.com/90/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/faisssal.wordpress.com/90/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/faisssal.wordpress.com/90/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/faisssal.wordpress.com/90/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/faisssal.wordpress.com/90/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/faisssal.wordpress.com/90/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/faisssal.wordpress.com/90/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/faisssal.wordpress.com/90/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=faisssal.wordpress.com&amp;blog=552552&amp;post=90&amp;subd=faisssal&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://faisssal.wordpress.com/2009/09/12/software-testing-in-agile-project/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/de9b6e0205ad14a61d748e23de0ebc0b?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">faisee</media:title>
		</media:content>
	</item>
		<item>
		<title>Database Testing &#8211; Testing The Backend</title>
		<link>http://faisssal.wordpress.com/2008/09/08/database-testing-testing-the-backend/</link>
		<comments>http://faisssal.wordpress.com/2008/09/08/database-testing-testing-the-backend/#comments</comments>
		<pubDate>Mon, 08 Sep 2008 16:27:51 +0000</pubDate>
		<dc:creator>Mohamed</dc:creator>
				<category><![CDATA[Software Tester]]></category>

		<guid isPermaLink="false">http://faisssal.wordpress.com/?p=77</guid>
		<description><![CDATA[Database systems play an important role in nearly every modern organization. The ultimate objective of database analysis, design, and implementation is to establish an electronic data store corresponding to a user’s conceptual world. Functionality of the database is a very critical aspect of application’s quality; problems with the database could lead to data loss or [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=faisssal.wordpress.com&amp;blog=552552&amp;post=77&amp;subd=faisssal&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p><!--[if !mso]&gt;--></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><span style="font-size:12pt;font-family:&quot;">Database systems play an important role in nearly every modern organization. The ultimate objective of database analysis, design, and implementation is to establish an electronic data store corresponding to a user’s conceptual world.</span></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><strong><span style="font-size:12pt;font-family:&quot;"> </span></strong></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><strong><span style="font-size:12pt;font-family:&quot;">Functionality of the database </span></strong><span style="font-size:12pt;font-family:&quot;">is a very critical aspect of application’s quality; problems with the database could lead to data loss or security violation, and may put a company at legal risk depending on the type of data being stored. Applications consist of a database and improving quality of data in an organization is often a daunting task. A database should be evaluated throughout the database development lifecycle to prepare a quality database application. Data in a database may be input from and displayed on a number of different types of Systems. Each of these types of systems has unique system limitations, which may dictate how data should be formatted in your database. A database should be evaluated based on the factors such as data integrity, consistency, normalization, performance, security and very important &#8211; the expectations of its end users. </span></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><span style="font-size:12pt;font-family:&quot;"> </span></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><span style="font-size:12pt;font-family:&quot;">We can attempt to maintain the quality standards in a proactive way and it involves surveying the customer to determine their level of satisfaction with the product so that potential problems can be detected early in the development process. Once the development is over we can ensure that the database conforms to predefined standards and guidelines. It compares the required features or attributes (problem domain) with the results of development (solution domain). When deviations from the problem domain are found, they are resolved and the process is modified as needed.</span></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><span style="font-size:12pt;font-family:&quot;"> </span></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><span style="font-size:12pt;font-family:&quot;">The database design process is decided by finding the requirements and needs of the end user. Uncertainty about understanding the requirements can be reduced only after significant analysis and discussions with users. Once the user requirements are clear, the process of behavior implementation consists of the design and construction of a solution domain following the problem domain. Because of the difficulties associated with the changing requirements, the database developer must attempt to develop a database model which closely matches the perception of the user, and deliver a design that can be implemented, maintained and modified in a cost-effective way. Diagrammatic representation using entity-relationship diagrams, object models, data flow diagrams, allows the information described in a visual format in a meaningful way.</span></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><strong><span style="font-size:12pt;font-family:&quot;"> </span></strong></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><strong><span style="font-size:12pt;font-family:&quot;">Database testing </span></strong><span style="font-size:12pt;font-family:&quot;">is one of the most challenging tasks to be done by software testing team.</span></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><strong><span style="font-size:12pt;font-family:&quot;"> </span></strong></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><strong><span style="font-size:12pt;font-family:&quot;">A Database Tester</span></strong><span style="font-size:12pt;font-family:&quot;">, by understanding the referential integrity and database security, and by having a good grasp on the various technologies and data formats used to transfer and retrieving the data from the database, can test database to avoid problems. Testing should be included in various phases of database development lifecycle. The cycle typically consists\of several stages from planning to designing, testing and deployment. In the first phase of database development process, requirements are gathered; checklists can be used as part of the evaluation process for the database specification. After gathering requirement and understanding the need for the database, a preliminary list of the fields of data to be included in the database should be prepared. We should have complete information about what information is required by the client and what type of fields are required to produce that information. Next determine if the logical data model is complete and correct. Confirm the design with the business community in a design review process.</span></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><span style="font-size:12pt;font-family:&quot;"> </span></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><span style="font-size:12pt;font-family:&quot;">Create a logical Entity Relationship Diagram (ERD) to graphically represent the data store.</span></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;">
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><span style="font-size:12pt;font-family:&quot;">Determine if the data model is fully documented (entities, attributes, relationships) Attributes have correct data type, length, NULL status, default values. General discussion of business rules to be enforced by database level constraints should be carried out e.g.</span></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><span style="font-size:12pt;font-family:&quot;"> </span></p>
<p class="MsoNormal" style="margin-left:63pt;text-align:justify;line-height:normal;"><span style="font-size:12pt;font-family:&quot;">• Not null constraints</span></p>
<p class="MsoNormal" style="margin-left:63pt;text-align:justify;line-height:normal;"><span style="font-size:12pt;font-family:&quot;">• Check constraints</span></p>
<p class="MsoNormal" style="margin-left:63pt;text-align:justify;line-height:normal;"><span style="font-size:12pt;font-family:&quot;">• Unique constraints</span></p>
<p class="MsoNormal" style="margin-left:63pt;text-align:justify;line-height:normal;"><span style="font-size:12pt;font-family:&quot;">• Primary key constraints</span></p>
<p class="MsoNormal" style="margin-left:63pt;text-align:justify;line-height:normal;"><span style="font-size:12pt;font-family:&quot;">• Foreign key constraints</span></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><span style="font-size:12pt;font-family:&quot;"> </span></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><span style="font-size:12pt;font-family:&quot;">Business rules to be enforced by triggers and procedures should be discussed along with the</span></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><span style="font-size:12pt;font-family:&quot;">Business rules to be enforced by application code. After this the normal forms should be tested with the help of test data. Testing physical database design includes testing table definitions,</span></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><span style="font-size:12pt;font-family:&quot;">constraints, triggers and procedures. Black Box testing techniques like Boundary value analysis can be used. We can test the table definition by testing the column definitions and constraints that have been imposed:</span></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><span style="font-size:12pt;font-family:&quot;"> </span></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><strong><em><span style="font-size:12pt;font-family:&quot;">Database constraints can be checked as follows:</span></em></strong></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><span style="font-size:12pt;font-family:&quot;"> </span></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><span style="font-size:12pt;font-family:&quot;">1. Primary Key- Write Test Case to insert duplicate value in Primary Key column.</span></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><span style="font-size:12pt;font-family:&quot;">2. Insert record to violate Referential Integrity Constraint.</span></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><span style="font-size:12pt;font-family:&quot;">3. Delete record to violate Referential Integrity Constraint.</span></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><span style="font-size:12pt;font-family:&quot;">4. Insert NULL value in NOT NULL column.</span></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><span style="font-size:12pt;font-family:&quot;">5. Insert values to violate check constraints by inserting values outside input domains.</span></p>
<p class="MsoNoSpacing" style="text-align:justify;"><span style="font-size:12pt;font-family:&quot;"> </span></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><span style="font-size:12pt;font-family:&quot;">For relational databases queries are written using SQL. We can test database queries by identifying different situations and data values. SQL conditions can be tested using Decision Condition Coverage:</span></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><span style="font-size:12pt;font-family:&quot;"> </span></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><span style="font-size:12pt;font-family:&quot;">a. Select statements use conditions in Where Clause and Having Clause for Group By columns.</span></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><span style="font-size:12pt;font-family:&quot;"> </span></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><span style="font-size:12pt;font-family:&quot;"><span> </span>I. Conditions written using AND logical operator requires (T, T), (T, F), (F, T) outcomes for two operands to be tested.</span></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><span style="font-size:12pt;font-family:&quot;"> </span></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><span style="font-size:12pt;font-family:&quot;"><span> </span>ii. Conditions written using OR logical operator requires (F, F), (T, F), (F, T) outcomes to be tested.</span></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><span style="font-size:12pt;font-family:&quot;"> </span></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><span style="font-size:12pt;font-family:&quot;">Testing requires that every condition affecting the result takes all possible outcomes at least once.</span></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><span style="font-size:12pt;font-family:&quot;"> </span></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><span style="font-size:12pt;font-family:&quot;">b. Testing SQL statements involving NULL values.</span></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><span style="font-size:12pt;font-family:&quot;"> </span></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><span style="font-size:12pt;font-family:&quot;"><span> </span>I. Requires Testing conditions with each operand in the condition taking NULL value.</span></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><span style="font-size:12pt;font-family:&quot;"> </span></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><span style="font-size:12pt;font-family:&quot;"><span> </span>ii. For a Group By Clause, NULL values have to be considered.</span></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><span style="font-size:12pt;font-family:&quot;"> </span></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><span style="font-size:12pt;font-family:&quot;">c. For sub queries, include test cases to return zero and more rows.</span></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><span style="font-size:12pt;font-family:&quot;"> </span></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><span style="font-size:12pt;font-family:&quot;">d. SQL statements like Update, Insert, and Delete also need to be tested for conditions.</span></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><span style="font-size:12pt;font-family:&quot;"> </span></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><span style="font-size:12pt;font-family:&quot;">Apart from testing the table definitions and SQL statements a database tester should test the triggers, procedures and functions. These objects can be unit tested by finding various paths of execution in the code and functionality can be tested by executing the code &#8211; providing required inputs and checking the output generated.</span></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><span style="font-size:12pt;font-family:&quot;"> </span></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><span style="font-size:12pt;font-family:&quot;">Let’s see how can we design test cases to test table definition i.e. column definitions and constraints. Refer to ‘Item’ table storing details of items in stock. Details of sales orders placed for various items are stored in another table ‘Sales’. The table definitions are as follows:</span></p>
<div id="attachment_78" class="wp-caption aligncenter" style="width: 569px"><a href="http://faisssal.files.wordpress.com/2008/09/tables3.jpg"><img class="size-full wp-image-78" title="tables3" src="http://faisssal.files.wordpress.com/2008/09/tables3.jpg?w=480" alt="Table Definitions"   /></a><p class="wp-caption-text">Table Definitions</p></div>
<p class="MsoNormal" style="text-align:justify;line-height:normal;">
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><span style="font-size:12pt;font-family:&quot;"> </span></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><span style="font-size:12pt;font-family:&quot;"><span> </span>To test the constraints, we can design test cases as follows:</span></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><strong><span style="font-size:12pt;font-family:&quot;"> </span></strong></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><strong><span style="font-size:14pt;font-family:&quot;">ITEM Table</span></strong></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><span style="font-size:12pt;font-family:&quot;"> </span></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><strong><span style="font-size:12pt;font-family:&quot;">Test Case ID: </span></strong><span style="font-size:12pt;font-family:&quot;">TCcheck _itemcodePK</span></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><strong><span style="font-size:12pt;font-family:&quot;">Objective: </span></strong><span style="font-size:12pt;font-family:&quot;">To evaluate Primary key constraint on Item code in item table.</span></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><strong><span style="font-size:12pt;font-family:&quot;">Description:</span></strong><span style="font-size:12pt;font-family:&quot;"> Insert two records with I001 as Item code.</span></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><strong><span style="font-size:12pt;font-family:&quot;">Expected Result: </span></strong><span style="font-size:12pt;font-family:&quot;">second record should not be saved in database.</span></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><span style="font-size:12pt;font-family:&quot;"> </span></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><strong><span style="font-size:12pt;font-family:&quot;">Test Case ID: </span></strong><span style="font-size:12pt;font-family:&quot;">TCcheck _itemcode1</span></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><strong><span style="font-size:12pt;font-family:&quot;">Objective: </span></strong><span style="font-size:12pt;font-family:&quot;">To evaluate check constraint on Item code in item table.</span></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><strong><span style="font-size:12pt;font-family:&quot;">Description:</span></strong><span style="font-size:12pt;font-family:&quot;"> Insert a record with I001 as Item code.</span></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><strong><span style="font-size:12pt;font-family:&quot;">Expected Result: </span></strong><span style="font-size:12pt;font-family:&quot;">record should be saved in database.</span></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><span style="font-size:12pt;font-family:&quot;"> </span></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><strong><span style="font-size:12pt;font-family:&quot;">Test Case ID: </span></strong><span style="font-size:12pt;font-family:&quot;">TCcheck _itemcode2</span></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><strong><span style="font-size:12pt;font-family:&quot;">Objective: </span></strong><span style="font-size:12pt;font-family:&quot;">To evaluate check constraint on Item code in item table.</span></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><strong><span style="font-size:12pt;font-family:&quot;">Description:</span></strong><span style="font-size:12pt;font-family:&quot;"> Insert a record with I555 as Item code.</span></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><strong><span style="font-size:12pt;font-family:&quot;">Expected Result: </span></strong><span style="font-size:12pt;font-family:&quot;">record should be saved in database.</span></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><span style="font-size:12pt;font-family:&quot;"> </span></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><strong><span style="font-size:12pt;font-family:&quot;">Test Case ID: </span></strong><span style="font-size:12pt;font-family:&quot;">TCcheck _itemcode3</span></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><strong><span style="font-size:12pt;font-family:&quot;">Objective: </span></strong><span style="font-size:12pt;font-family:&quot;">To evaluate check constraint on Item code in item table.</span></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><strong><span style="font-size:12pt;font-family:&quot;">Description:</span></strong><span style="font-size:12pt;font-family:&quot;"> Insert a record with invalid Item code as I000.</span></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><strong><span style="font-size:12pt;font-family:&quot;">Expected Result: </span></strong><span style="font-size:12pt;font-family:&quot;">error message should be displayed.</span></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><span style="font-size:12pt;font-family:&quot;"> </span></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><strong><span style="font-size:12pt;font-family:&quot;">Test Case ID: </span></strong><span style="font-size:12pt;font-family:&quot;">TCcheck _itemcode4</span></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><strong><span style="font-size:12pt;font-family:&quot;">Objective: </span></strong><span style="font-size:12pt;font-family:&quot;">To evaluate check constraint on Item code in item table.</span></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><strong><span style="font-size:12pt;font-family:&quot;">Description:</span></strong><span style="font-size:12pt;font-family:&quot;"> Insert a record with I556 as Item code.</span></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><strong><span style="font-size:12pt;font-family:&quot;">Expected Result: </span></strong><span style="font-size:12pt;font-family:&quot;">error message should be displayed.</span></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><span style="font-size:12pt;font-family:&quot;"> </span></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><strong><span style="font-size:12pt;font-family:&quot;">Test Case ID: </span></strong><span style="font-size:12pt;font-family:&quot;">TCcheck _Description1</span></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><strong><span style="font-size:12pt;font-family:&quot;">Objective: </span></strong><span style="font-size:12pt;font-family:&quot;">To evaluate NOT NULL constraint on description column in item table.</span></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><strong><span style="font-size:12pt;font-family:&quot;">Description:</span></strong><span style="font-size:12pt;font-family:&quot;"> Insert a record with no value for description column.</span></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><strong><span style="font-size:12pt;font-family:&quot;">Expected Result: </span></strong><span style="font-size:12pt;font-family:&quot;">error message should be displayed.</span></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><span style="font-size:12pt;font-family:&quot;"> </span></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><strong><span style="font-size:12pt;font-family:&quot;">Test Case ID: </span></strong><span style="font-size:12pt;font-family:&quot;">TCcheck _price</span></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><strong><span style="font-size:12pt;font-family:&quot;">Objective: </span></strong><span style="font-size:12pt;font-family:&quot;">To evaluate check constraint on price column in item table.</span></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><strong><span style="font-size:12pt;font-family:&quot;">Description:</span></strong><span style="font-size:12pt;font-family:&quot;"> Insert a record with price=-10.</span></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><strong><span style="font-size:12pt;font-family:&quot;">Expected Result: </span></strong><span style="font-size:12pt;font-family:&quot;">error message should be displayed.</span></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><span style="font-size:12pt;font-family:&quot;"> </span></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><strong><span style="font-size:12pt;font-family:&quot;">Test Case ID: </span></strong><span style="font-size:12pt;font-family:&quot;">TCcheck _delete</span></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><strong><span style="font-size:12pt;font-family:&quot;">Objective: </span></strong><span style="font-size:12pt;font-family:&quot;">To evaluate referential integrity constraint on item code column</span></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><span style="font-size:12pt;font-family:&quot;">in item table.</span></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><strong><span style="font-size:12pt;font-family:&quot;">Description:</span></strong><span style="font-size:12pt;font-family:&quot;"> insert a record in sales table with item code I001. Delete</span></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><span style="font-size:12pt;font-family:&quot;">record from item table where item code=I001.</span></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><strong><span style="font-size:12pt;font-family:&quot;">Expected Result: </span></strong><span style="font-size:12pt;font-family:&quot;">error message should be displayed.</span></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><strong><span style="font-size:12pt;font-family:&quot;"> </span></strong></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><strong><span style="font-size:14pt;font-family:&quot;">SALES Table</span></strong></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><strong><span style="font-size:12pt;font-family:&quot;"> </span></strong></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><strong><span style="font-size:12pt;font-family:&quot;">Test Case ID: </span></strong><span style="font-size:12pt;font-family:&quot;">TCcheck _itemcode</span></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><strong><span style="font-size:12pt;font-family:&quot;">Objective: </span></strong><span style="font-size:12pt;font-family:&quot;">To evaluate references constraint on itemcode column in sales table.</span></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><strong><span style="font-size:12pt;font-family:&quot;">Description:</span></strong><span style="font-size:12pt;font-family:&quot;"> Insert a record with item code not existing in item table.</span></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><strong><span style="font-size:12pt;font-family:&quot;">Expected Result: </span></strong><span style="font-size:12pt;font-family:&quot;">error message should be displayed.</span></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><span style="font-size:12pt;font-family:&quot;"> </span></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><span style="font-size:12pt;font-family:&quot;"> </span></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><strong><span style="font-size:12pt;font-family:&quot;">Test Case ID: </span></strong><span style="font-size:12pt;font-family:&quot;">TCcheck _orderID</span></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><strong><span style="font-size:12pt;font-family:&quot;">Objective: </span></strong><span style="font-size:12pt;font-family:&quot;">To evaluate check constraint on Order_ID column in salestable.</span></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><strong><span style="font-size:12pt;font-family:&quot;">Description:</span></strong><span style="font-size:12pt;font-family:&quot;"> Insert a record with Order_ID as 1001.</span></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><strong><span style="font-size:12pt;font-family:&quot;">Expected Result: </span></strong><span style="font-size:12pt;font-family:&quot;">error message should be displayed.</span></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><span style="font-size:12pt;font-family:&quot;"> </span></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><span style="font-size:12pt;font-family:&quot;">Now consider a requirement for displaying details of all the items for which qty ordered is&gt;10. We can find the required details by writing</span></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><span style="font-size:12pt;font-family:&quot;"> </span></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><em><span style="font-size:12pt;font-family:&quot;">SQL query:</span></em></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><span style="font-size:12pt;font-family:&quot;">Select item_codefrom sales where qty&gt;10</span></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><span style="font-size:12pt;font-family:&quot;"> </span></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><span style="font-size:12pt;font-family:&quot;">To test this query we can prepare a test sales table having records with qty&gt;10. When executed, this query should return all the matching records. Similarly we can check the query by preparing a table not having any matching records.</span></p>
<br /><img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/faisssal.wordpress.com/77/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/faisssal.wordpress.com/77/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/faisssal.wordpress.com/77/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/faisssal.wordpress.com/77/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/faisssal.wordpress.com/77/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/faisssal.wordpress.com/77/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/faisssal.wordpress.com/77/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/faisssal.wordpress.com/77/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/faisssal.wordpress.com/77/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/faisssal.wordpress.com/77/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/faisssal.wordpress.com/77/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/faisssal.wordpress.com/77/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/faisssal.wordpress.com/77/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/faisssal.wordpress.com/77/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/faisssal.wordpress.com/77/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/faisssal.wordpress.com/77/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=faisssal.wordpress.com&amp;blog=552552&amp;post=77&amp;subd=faisssal&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://faisssal.wordpress.com/2008/09/08/database-testing-testing-the-backend/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/de9b6e0205ad14a61d748e23de0ebc0b?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">faisee</media:title>
		</media:content>

		<media:content url="http://faisssal.files.wordpress.com/2008/09/tables3.jpg" medium="image">
			<media:title type="html">tables3</media:title>
		</media:content>
	</item>
		<item>
		<title>10 tips for successful testing!</title>
		<link>http://faisssal.wordpress.com/2008/09/08/10-tips-for-successful-testing/</link>
		<comments>http://faisssal.wordpress.com/2008/09/08/10-tips-for-successful-testing/#comments</comments>
		<pubDate>Mon, 08 Sep 2008 10:56:17 +0000</pubDate>
		<dc:creator>Mohamed</dc:creator>
				<category><![CDATA[Software Tester]]></category>

		<guid isPermaLink="false">http://faisssal.wordpress.com/?p=67</guid>
		<description><![CDATA[Software development is often a balanced exercise in time and quality management. For most companies it is a constant struggle to complete tasks on time and within budget, usually resulting in quality being neglected. When applications are finally released into production, users are often confronted with only basic functionalities or even the complete omission of [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=faisssal.wordpress.com&amp;blog=552552&amp;post=67&amp;subd=faisssal&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p><!--[if gte mso 9]&gt;  Normal 0     false false false  EN-US X-NONE X-NONE              MicrosoftInternetExplorer4              &lt;![endif]--><!--[if gte mso 9]&gt;                                                                                                                                            &lt;![endif]--></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><span style="font-size:12pt;font-family:&quot;">Software development is often a balanced exercise in time and quality management. For most companies it is a constant struggle to complete tasks on time and within budget, usually resulting in quality being neglected. When applications are finally released into production, users are often confronted with only basic functionalities or even the complete omission of functionalities due to the lack of development time.</span></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><span style="font-size:12pt;font-family:&quot;"> </span></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><span style="font-size:12pt;font-family:&quot;">How do you set up or improve your software testing process to reduce the business risk of poor application implementation? Here are a few simple tips to get you ahead in quality, saving you time and money:</span></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><span style="font-size:12pt;font-family:&quot;"> </span></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><strong><span style="font-size:12pt;font-family:&quot;">1. Start early and be prepared!</span></strong></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><span style="font-size:12pt;font-family:&quot;"> </span></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><span style="font-size:12pt;font-family:&quot;"><span> </span>The key to a successful software development project is preparation. Projects often start as simple ideas with enthusiastic developers committing hours of effort prior to in-depth investigation, this results in unforeseen problems causing delays and project overrun. Testing should be introduced from the outset, this way you have an objective look at the project feasibility and its risks prior to committing valuable effort. In addition the test or quality department should be involved at an early stage to review requirements and design documentation. Reviewing helps to highlight defects and if conducted early in the process will save money by reducing the cost of expensive repairs or corrections. Defects found in the requirements phase are on average 100 times cheaper to correct than the same defects found in production. Preparing your test execution is paramount to getting your project completed in the shortest possible timescale. Valuable time can be saved during the test execution phase by specifying your test scripts and creating a test scenario before the application under test is delivered.</span></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><span style="font-size:12pt;font-family:&quot;"> </span></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><span style="font-size:12pt;font-family:&quot;"> </span></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><strong><span style="font-size:12pt;font-family:&quot;">2. Select a testing method which fits your needs</span></strong></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><span style="font-size:12pt;font-family:&quot;"> </span></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><span style="font-size:12pt;font-family:&quot;"><span> </span><span> </span>Iterative development, e.g. V-Model, Agile, Extreme Development… Each Software development process needs its own adapted test process; select the testing method correct for</span></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><span style="font-size:12pt;font-family:&quot;">your application. You and your management team will benefit from a process that not only reveals the business/project risks but provides the comfort of knowing that the testing team has mitigated these risks. Pay attention to your project specific characteristics, there is no such thing as a ‘universal test approach’. Processes that work for one company or project may be totally inappropriate for another.</span></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><span style="font-size:12pt;font-family:&quot;"> </span></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><span style="font-size:12pt;font-family:&quot;"><span> </span>• Do you need to react quickly and make lots of changes?</span></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><span style="font-size:12pt;font-family:&quot;"><span> </span>• Is the goal of the project to add functionality to an existing application?</span></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><span style="font-size:12pt;font-family:&quot;"> </span></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><span style="font-size:12pt;font-family:&quot;">Many different aspects of your development process can influence the correct choice of the testing approach. No matter which direction you choose, ensure that your test process is structured and started at an early stage.</span></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><span style="font-size:12pt;font-family:&quot;"> </span></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><span style="font-size:12pt;font-family:&quot;"> </span></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><span style="font-size:12pt;font-family:&quot;"> </span></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><span style="font-size:12pt;font-family:&quot;"> </span></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><strong><span style="font-size:12pt;font-family:&quot;">3. Be objective</span></strong></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><span style="font-size:12pt;font-family:&quot;"> </span></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><span style="font-size:12pt;font-family:&quot;"><span> </span>The test team should have an autonomous role within the organization as it is often difficult to work within the project itself. Some project managers tend to neglect the test teams advise when their project deadline is at stake and quality is no longer important. When there is a delay in a development, many project leaders also have a tendency to use the time allocated for test execution to perform further development activities, hence testing is usually skipped and not just postponed. This can have serious consequences for the overall quality of the project which often ends-up in rework when the application is placed in production. The additional work results in delays and further cost to the overall project. When your organization is large enough (i.e. multiple IT projects per year) you can even consider setting up a test factory, a separate department conducting independent and uniform testing of all your existing applications and new projects.</span></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><span style="font-size:12pt;font-family:&quot;"> </span></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><span style="font-size:12pt;font-family:&quot;"> </span></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><span style="font-size:12pt;font-family:&quot;"> </span></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><strong><span style="font-size:12pt;font-family:&quot;">4. Review, review, review, review …</span></strong></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><span style="font-size:12pt;font-family:&quot;"> </span></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><span style="font-size:12pt;font-family:&quot;"><span> </span>Testing should start early in the development process, you cannot afford to wait for code to start testing your application. Make sure you start reviewing your documents right from the outset; as well reviewed documents tend to result in 65% less defects being carried forward into later phases of the development cycle. This can amount to huge saving of time and money. Don’t ‘just send’ your documents asking colleagues to review them without explanation or preparation, instead give individuals specific assignment on the documents that you want them to review. </span></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><span style="font-size:12pt;font-family:&quot;"> </span></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><span style="font-size:12pt;font-family:&quot;">Have someone check the technical aspects, another, the documents on a higher level and yet another against the layout standards used within the company. This way you can avoid holding review meetings where only grammar mistakes have been highlighted. Reviewing is an exhausting task, so only reviews for short periods, one hour maximum, at a review rate of 10 pages for the period, make sure you are not disturbed. Avoid doing reviews in a crowded or noisy office environment, close your e-mail…. Make sure you become an expert in your reviewing methods. It takes time to learn ‘how’ to review and code in a professional and organized way.</span></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><span style="font-size:12pt;font-family:&quot;"> </span></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><span style="font-size:12pt;font-family:&quot;"> </span></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><strong><span style="font-size:12pt;font-family:&quot;">5. Prioritize</span></strong></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><span style="font-size:12pt;font-family:&quot;"> </span></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><span style="font-size:12pt;font-family:&quot;"><span> </span>It is generally accepted that testing everything is impossible. In a normal application or system, there are far too many functionalities and to many possibilities to test every single one of them. An application can take several man years to test so it is important to test those aspects of your application where the risk of damage or frequency of use is expected to be the highest. A thorough risk assessment should be performed before setting up the test strategy. Select test techniques according to the risks you want to reduce. Build a strategy based on the risks that are involved in the project. Remember: No Risk, No Test.</span></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><span style="font-size:12pt;font-family:&quot;"> </span></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><span style="font-size:12pt;font-family:&quot;"> </span></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><strong><span style="font-size:12pt;font-family:&quot;">6. Measure!</span></strong></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><span style="font-size:12pt;font-family:&quot;"> </span></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><span style="font-size:12pt;font-family:&quot;"><span> </span>Two important questions which should be posed.</span></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><span style="font-size:12pt;font-family:&quot;"> </span></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><span style="font-size:12pt;font-family:&quot;"><span> </span>• What do you know about your testing process?</span></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><span style="font-size:12pt;font-family:&quot;"><span> </span>• What do you want to know about your testing process?</span></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><span style="font-size:12pt;font-family:&quot;"> </span></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><span style="font-size:12pt;font-family:&quot;">Most of the time, it’s easy to establish the cost to solve a defect in your application (at different stages), but what is the cost and how efficient is your team in finding these defects? The key to answering these questions is: &#8211; start measuring. Gather data to monitor your test process, efficiency and effectiveness of your test department. Utilize metrics which provide the information you need to know about your process, i.e. test scenario density, defect density, number of defects found in the first month of production, etc…</span></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><span style="font-size:12pt;font-family:&quot;"> </span></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><span style="font-size:12pt;font-family:&quot;">The question is often asked ‘When is the best time to start measuring?’ In our experience, NOW is a good time to establish metrics, the sooner you start collecting data the faster you can start improving.</span></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><span style="font-size:12pt;font-family:&quot;"> </span></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><span style="font-size:12pt;font-family:&quot;"> </span></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><strong><span style="font-size:12pt;font-family:&quot;">7. Know when to stop testing.</span></strong></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><span style="font-size:12pt;font-family:&quot;"> </span></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><span style="font-size:12pt;font-family:&quot;"><span> </span>When can you suspend test execution? As a rule, you should stop ’Bug Hunting’ when the cost of finding an additional defect is no longer in balance with the risk you’re exposed to. Under normal circumstances, you need to set exit criteria to decide in advance when testing should stop, for example, define a criteria that will stop testing when 90% of the available test scripts has been executed with a maximum of 5 open defects. Make sure your project criteria are clearly defined. Discuss your exit criteria at the start of the test project and incorporate them within your test plan, this will avoid discussions at a later date. When no exit criteria are defined, testers tend to continue testing until all defects have been found or solved.</span></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><span style="font-size:12pt;font-family:&quot;"> </span></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><strong><span style="font-size:12pt;font-family:&quot;">8. Preserve.</span></strong></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><span style="font-size:12pt;font-family:&quot;"> </span></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><span style="font-size:12pt;font-family:&quot;"><span> </span>The strength of software testing partially lies in the structured preservation of test ware.</span></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><span style="font-size:12pt;font-family:&quot;">On completion of testing, take some time to evaluate and assess your deliverables and preserve them for future use. Test cases should be stored in such a way that they can be reused in later projects- or even during the maintenance phase. You should always have your ‘old’ test cases ready for immediate re-use, this way you can save 30% to 50% in overall test effort.</span></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><span style="font-size:12pt;font-family:&quot;"> </span></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><strong><span style="font-size:12pt;font-family:&quot;">9. Communicate</span></strong></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><span style="font-size:12pt;font-family:&quot;"> </span></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><span style="font-size:12pt;font-family:&quot;"><span> </span>In many companies there is an ‘It is not MY responsibility’ attitude. Communication is poor between the end-users, architects, developers, testers and management. Too often this kind of behavior leads to misinterpretation in requirements, unwanted functionalities and unsatisfied end-users. Communication is key to ‘quality’. Listen to the end-users and get involvement of the complete team to obtain the best results. Be diplomatic and have constructive discussions.</span></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><span style="font-size:12pt;font-family:&quot;">Software development is constantly balancing budget, quality and scope.</span></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><span style="font-size:12pt;font-family:&quot;"> </span></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><strong><span style="font-size:12pt;font-family:&quot;">10. Last but not least: keep it simple!</span></strong></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><span style="font-size:12pt;font-family:&quot;"> </span></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><span style="font-size:12pt;font-family:&quot;"><span> </span>Often companies become lost in administrative procedures when considering testing. An efficient test process should excel in its simplicity, no mountains of red tape, nor tedious ways of giving your quality team and developers a hard time. Choose an approach that fits your project or company and does the job: assuring quality for your applications.</span></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;">
<p class="MsoNormal" style="text-align:center;line-height:normal;"><strong> HAPPY TESTING !!!</strong></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><span style="font-size:12pt;font-family:&quot;"> </span></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><span style="font-size:12pt;font-family:&quot;"> </span></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><span style="font-size:12pt;font-family:&quot;"> </span></p>
<p class="MsoNormal" style="text-align:justify;"><span style="font-size:12pt;line-height:50%;font-family:&quot;"> </span></p>
<p class="MsoNormal" style="text-align:justify;"><span style="font-size:12pt;line-height:50%;font-family:&quot;"> </span></p>
<p class="MsoNormal" style="text-align:justify;"><span style="font-size:12pt;line-height:50%;font-family:&quot;"> </span></p>
<br /><img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/faisssal.wordpress.com/67/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/faisssal.wordpress.com/67/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/faisssal.wordpress.com/67/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/faisssal.wordpress.com/67/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/faisssal.wordpress.com/67/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/faisssal.wordpress.com/67/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/faisssal.wordpress.com/67/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/faisssal.wordpress.com/67/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/faisssal.wordpress.com/67/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/faisssal.wordpress.com/67/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/faisssal.wordpress.com/67/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/faisssal.wordpress.com/67/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/faisssal.wordpress.com/67/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/faisssal.wordpress.com/67/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/faisssal.wordpress.com/67/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/faisssal.wordpress.com/67/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=faisssal.wordpress.com&amp;blog=552552&amp;post=67&amp;subd=faisssal&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://faisssal.wordpress.com/2008/09/08/10-tips-for-successful-testing/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/de9b6e0205ad14a61d748e23de0ebc0b?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">faisee</media:title>
		</media:content>
	</item>
		<item>
		<title>DEPLOYMENT PHASE</title>
		<link>http://faisssal.wordpress.com/2008/09/08/deployment-phase/</link>
		<comments>http://faisssal.wordpress.com/2008/09/08/deployment-phase/#comments</comments>
		<pubDate>Mon, 08 Sep 2008 10:35:01 +0000</pubDate>
		<dc:creator>Mohamed</dc:creator>
				<category><![CDATA[Software Tester]]></category>

		<guid isPermaLink="false">http://faisssal.wordpress.com/?p=65</guid>
		<description><![CDATA[Accessibility of deliverable Make sure that all documents, both procedures and templates, are easily accessible for all testers and other stakeholders. An intranet page is a very effective way to provide a clear, preferably graphical structure, allowing users to easily access and download the documents they need. In one project we depicted the documentation structure [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=faisssal.wordpress.com&amp;blog=552552&amp;post=65&amp;subd=faisssal&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p><!--[if gte mso 9]&gt;  Normal 0     false false false  EN-US X-NONE X-NONE              MicrosoftInternetExplorer4              &lt;![endif]--><!--[if gte mso 9]&gt;                                                                                                                                            &lt;![endif]--></p>
<p class="MsoNormal" style="line-height:normal;"><strong><span style="font-size:12pt;font-family:&quot;">Accessibility of deliverable<br />
</span></strong></p>
<p class="MsoNormal" style="line-height:normal;"><strong><span style="font-size:12pt;font-family:&quot;"> </span></strong></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><span style="font-size:12pt;font-family:&quot;">Make sure that all documents, both procedures and templates, are easily accessible for all testers and other stakeholders. An intranet page is a very effective way to provide a clear, preferably graphical structure, allowing users to easily access and download the documents they need. In one project we depicted the documentation structure as a graphical presentation of a ‘pyramid’, with the overall process at the top, and all related and supporting documents, such as work instructions and templates in the basis. This test framework became a familiar artifact in the quality system and soon everybody recognized and used ‘The Pyramid’ on the intranet as the starting point in their search for a document or template.</span></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><strong><span style="font-size:12pt;font-family:&quot;"> </span></strong></p>
<p class="MsoNormal" style="line-height:normal;"><strong><span style="font-size:12pt;font-family:&quot;">The change process</span></strong></p>
<p class="MsoNormal" style="line-height:normal;"><strong><span style="font-size:12pt;font-family:&quot;"> </span></strong></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><span style="font-size:12pt;font-family:&quot;">Deployment is the most difficult and time consuming part of the improvement project. You can publish a procedure or template, but that doesn’t mean that it will be immediately used by everyone. Often the problem in improvement projects is not the availability of documentation but the lack of adherence to the described way of working. To achieve a maturity level, at least 80% of the people in the organization should work according the documented process. If existing procedures are not followed, try to solve the root cause first. Only when it’s clear why current processes are not being followed is it worthwhile to change and enforce them.</span></p>
<p class="MsoNormal" style="line-height:normal;"><span style="font-size:12pt;font-family:&quot;"> </span></p>
<p class="MsoNormal" style="text-align:justify;line-height:normal;"><span style="font-size:12pt;font-family:&quot;">The throughput time of the change process does not only depend on the amount of changes, but also on the organization, its culture and the running development project(s). It may be wise to look for a suitable pilot project to see if the changes have the intended effects and if the procedures are really feasible in day-today practice. But such a pilot candidate must be available – preferably in one of its early stages – and willing to participate. Also in an ad-hoc culture, where local heroes have a large influence, changes leading to a more structured and disciplined way of working may not be directly embraced. When applying changes, be prepared for resistance. Don’t change more than necessary, take small steps and communicate the changes as often as needed and in any way you can think of. An improvement project is not successful until it has been deployed by people motivated to improve.</span></p>
<br /><img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/faisssal.wordpress.com/65/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/faisssal.wordpress.com/65/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/faisssal.wordpress.com/65/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/faisssal.wordpress.com/65/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/faisssal.wordpress.com/65/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/faisssal.wordpress.com/65/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/faisssal.wordpress.com/65/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/faisssal.wordpress.com/65/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/faisssal.wordpress.com/65/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/faisssal.wordpress.com/65/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/faisssal.wordpress.com/65/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/faisssal.wordpress.com/65/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/faisssal.wordpress.com/65/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/faisssal.wordpress.com/65/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/faisssal.wordpress.com/65/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/faisssal.wordpress.com/65/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=faisssal.wordpress.com&amp;blog=552552&amp;post=65&amp;subd=faisssal&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://faisssal.wordpress.com/2008/09/08/deployment-phase/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/de9b6e0205ad14a61d748e23de0ebc0b?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">faisee</media:title>
		</media:content>
	</item>
		<item>
		<title>IETester is a free Web Browser to Test Multiple IE</title>
		<link>http://faisssal.wordpress.com/2008/06/20/ietester-is-a-free-web-browser-to-test-multiple-ie/</link>
		<comments>http://faisssal.wordpress.com/2008/06/20/ietester-is-a-free-web-browser-to-test-multiple-ie/#comments</comments>
		<pubDate>Fri, 20 Jun 2008 08:13:56 +0000</pubDate>
		<dc:creator>Mohamed</dc:creator>
				<category><![CDATA[Software Tester]]></category>
		<category><![CDATA[browser statistics month by month]]></category>
		<category><![CDATA[Multiple IE Testing]]></category>

		<guid isPermaLink="false">http://faisssal.wordpress.com/?p=51</guid>
		<description><![CDATA[Testing web based application is fun. At the same time it is headache too. Tester has to have huge checklist to test in that one is cross browser testing, which eat-up tester brain, developer end up writing different CSS for each browser, which has to test across the entire browser. It’s always good to keep [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=faisssal.wordpress.com&amp;blog=552552&amp;post=51&amp;subd=faisssal&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p class="MsoNormal">Testing web based application is fun. At the same time it is headache too. Tester has to have huge checklist to test in that one is cross browser testing, which eat-up tester brain, developer end up writing different CSS for each browser, which has to test across the entire browser. It’s always good to keep an eye on browser stats.</p>
<p class="MsoNormal">
<p class="MsoNormal">Statistics are important information. From the statistics below, you can see that Internet Explorer is the most common browser. However, <a title="Firefox" href="http://www.mozilla.com/en-US/firefox/all-rc.html" target="_blank">Firefox</a> has become quite popular as well. Anyhow in future IE will disappear, because Firefox is very quickly eat-up IE market, sooner or later Firefox will be the top browser. Ok let be a side.</p>
<p class="MsoNormal"><a href="http://faisssal.files.wordpress.com/2008/06/b1.png"><img class="aligncenter size-full wp-image-53" src="http://faisssal.files.wordpress.com/2008/06/b1.png?w=480&#038;h=356" alt="" width="480" height="356" /></a></p>
<p class="MsoNormal">
<p class="MsoNormal">Now we will come to testing web application in multiple IE, Every time you install a newer version of <a title="IE" href="http://www.mozilla.com/en-US/firefox/all-rc.html" target="_blank">Internet Explorer</a>, Windows has a tendency to overwrite previous versions. Because each IE version has its own JavaScript engines. so there is a tool to test multiple IE it is called a s IETester. <a title="IETester" href="http://www.my-debugbar.com/wiki/IETester/HomePage" target="_blank">IETester</a> is a free Web Browser that allows you to have the rendering and JavaScript engines of IE8 beta 1, IE7 IE 6 and IE5.5 on Vista and XP, as well as the installed IE in the same process.</p>
<br /><img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/faisssal.wordpress.com/51/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/faisssal.wordpress.com/51/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/faisssal.wordpress.com/51/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/faisssal.wordpress.com/51/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/faisssal.wordpress.com/51/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/faisssal.wordpress.com/51/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/faisssal.wordpress.com/51/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/faisssal.wordpress.com/51/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/faisssal.wordpress.com/51/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/faisssal.wordpress.com/51/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/faisssal.wordpress.com/51/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/faisssal.wordpress.com/51/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/faisssal.wordpress.com/51/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/faisssal.wordpress.com/51/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/faisssal.wordpress.com/51/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/faisssal.wordpress.com/51/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=faisssal.wordpress.com&amp;blog=552552&amp;post=51&amp;subd=faisssal&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://faisssal.wordpress.com/2008/06/20/ietester-is-a-free-web-browser-to-test-multiple-ie/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/de9b6e0205ad14a61d748e23de0ebc0b?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">faisee</media:title>
		</media:content>

		<media:content url="http://faisssal.files.wordpress.com/2008/06/b1.png" medium="image" />
	</item>
		<item>
		<title>Dumping DB tables with and without Data</title>
		<link>http://faisssal.wordpress.com/2008/06/15/dumping-db-tables-with-and-without-data/</link>
		<comments>http://faisssal.wordpress.com/2008/06/15/dumping-db-tables-with-and-without-data/#comments</comments>
		<pubDate>Sun, 15 Jun 2008 12:09:10 +0000</pubDate>
		<dc:creator>Mohamed</dc:creator>
				<category><![CDATA[Software Tester]]></category>
		<category><![CDATA[DB]]></category>
		<category><![CDATA[Dump]]></category>
		<category><![CDATA[structure and Data]]></category>
		<category><![CDATA[Tables]]></category>

		<guid isPermaLink="false">http://faisssal.wordpress.com/?p=38</guid>
		<description><![CDATA[This is shell script for backing up database. using this script u can take backup of a database, Say you need to take backup of the mysql DB, but you need some table only structure , some with structure and data, using this script you can do that. #!/bin/ksh username=&#8217;root&#8217;; password=&#8217;xxxxxxxx&#8217;; hostname=&#8217;0.0.0.0&#8242;; command=&#8217;mysqldump&#8217;; database=&#8217;mysql&#8217;; dump_file=&#8217;XXXX.sql&#8217;; [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=faisssal.wordpress.com&amp;blog=552552&amp;post=38&amp;subd=faisssal&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>This is shell script for backing up database.<br />
using this script u can take backup of a database, Say you need to take backup of the mysql DB, but you need some table only structure , some with structure and data, using this script you can do that.</p>
<p>#!/bin/ksh</p>
<p>username=&#8217;root&#8217;;<br />
password=&#8217;xxxxxxxx&#8217;;<br />
hostname=&#8217;0.0.0.0&#8242;;<br />
command=&#8217;mysqldump&#8217;;<br />
database=&#8217;mysql&#8217;;<br />
dump_file=&#8217;XXXX.sql&#8217;;<br />
CURRENT=$(date -d&#8221;$CURRENT +$MINUTES minutes&#8221;);<br />
GetTableData=( users columns_priv host );</p>
<p>echo show tables | mysql -u $username -p$password -h $hostname $database &gt; /tmp/$CURRENT.txt</p>
<p><strong>#  -e   Allows utilization of the new, much faster INSERT syntax.</strong></p>
<p>if [ -e $dump_file ];<br />
then</p>
<p><strong># rm &#8211; remove files or directories, -r, -R, &#8211;recursive remove the contents of directories recursively, -f, &#8211;force ignore nonexistent files, never prompt</strong><br />
rm -rf $dump_file<br />
fi</p>
<p>while read TABLENAME<br />
do<br />
echo -n  &#8220;Backing up Tables From &#8220;  &#8220;  $database &#8221; &#8220;   $TABLENAME&#8221;<br />
for i in  $TABLENAME<br />
do<br />
for tableCheck   in &#8220;${GetTableData[@]}&#8221;<br />
do<br />
<strong># x is  Deprecated, renamed to &#8211;lock-all-tables.</strong><br />
if [ "x$TABLENAME" == "x${tableCheck}" ]<br />
then<br />
backup=1;<br />
break;<br />
fi<br />
done<br />
done</p>
<p>if [ "$backup" = "0" ];<br />
then<br />
echo &#8220;                  [ Only Sturcture... ]&#8220;;<br />
$command $database  -u $username -p$password -h $hostname $i -d &gt;&gt;$dump_file<br />
else<br />
echo &#8220;                  [ DATA and Sturcture .. ]&#8220;;<br />
$command $database  -u $username -p$password  -h $hostname $i  &gt;&gt;$dump_file<br />
fi</p>
<p>backup=0<br />
done&lt; /tmp/$CURRENT.txt<br />
echo<br />
echo &#8220;++++++++++++++++++++++++++++++++++++++++&#8221;<br />
echo  $database &#8220;DB Backup Taken Successfully&#8221;<br />
echo &#8220;++++++++++++++++++++++++++++++++++++++++&#8221;<br />
echo<br />
exit;</p>
<br /><img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/faisssal.wordpress.com/38/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/faisssal.wordpress.com/38/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/faisssal.wordpress.com/38/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/faisssal.wordpress.com/38/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/faisssal.wordpress.com/38/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/faisssal.wordpress.com/38/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/faisssal.wordpress.com/38/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/faisssal.wordpress.com/38/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/faisssal.wordpress.com/38/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/faisssal.wordpress.com/38/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/faisssal.wordpress.com/38/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/faisssal.wordpress.com/38/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/faisssal.wordpress.com/38/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/faisssal.wordpress.com/38/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/faisssal.wordpress.com/38/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/faisssal.wordpress.com/38/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=faisssal.wordpress.com&amp;blog=552552&amp;post=38&amp;subd=faisssal&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://faisssal.wordpress.com/2008/06/15/dumping-db-tables-with-and-without-data/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/de9b6e0205ad14a61d748e23de0ebc0b?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">faisee</media:title>
		</media:content>
	</item>
		<item>
		<title>End of the day its all about 10 Arrows to cut software development costs</title>
		<link>http://faisssal.wordpress.com/2008/06/14/end-of-the-date-its-all-about-10-arrows-to-cut-software-development-costs/</link>
		<comments>http://faisssal.wordpress.com/2008/06/14/end-of-the-date-its-all-about-10-arrows-to-cut-software-development-costs/#comments</comments>
		<pubDate>Sat, 14 Jun 2008 07:14:31 +0000</pubDate>
		<dc:creator>Mohamed</dc:creator>
				<category><![CDATA[Software Tester]]></category>

		<guid isPermaLink="false">http://faisssal.wordpress.com/?p=37</guid>
		<description><![CDATA[This list of 10 ways to cut cost from the appdev life cycle comes from Experimentus, a UK-based software management consultancy&#8230; 1. Focus on well documented Functional Requirements Without well documented Functional Requirements, there is potential for a system to be delivered which does not meet the customer’s expectations. For example, perhaps it does not [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=faisssal.wordpress.com&amp;blog=552552&amp;post=37&amp;subd=faisssal&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p style="text-align:center;"><strong><em>This list of 10 ways to cut cost from the appdev life cycle comes from Experimentus, a UK-based software management consultancy&#8230;</em></strong></p>
<p><em><strong>1.</strong></em> Focus on well documented Functional Requirements</p>
<p>Without well documented Functional Requirements, there is potential for a system to be delivered which does not meet the customer’s expectations. For example, perhaps it does not work as they believe it should – even though the development team believe that they have worked in line with the requirements as documented. This can lead to development rework, which is likely to delay the release, increase costs, and create discord between the customer and the software team.</p>
<p><strong>2.</strong> Ensure all Non Functional Requirements are clearly defined early</p>
<p>Many organizations focus solely on the Functional aspect of systems – WHAT it does – rather than the Non-Functional – HOW it does it. Non-Functional elements comprise everything from performance to security to usability.</p>
<p>Without clear, early definition of Non-Functional requirements, it is possible that a system could be delivered which does exactly what the customer wants – but is difficult to use, slow, insecure, unreliable, or is not scalable. Once again, this can lead to development rework – although some non-functional areas are so integral to the design of the product, it can be difficult to correct them without starting the project again.</p>
<p><strong>3.</strong> Ensure change control procedures are in place</p>
<p>Without Change Control, system development can find itself in an uncertain and constantly changing state. For example, development may be initially performed against what is believed to be the final version of a requirements document. However, more changes might be made to the requirements whilst development continues, each change without a proper impact assessment.</p>
<p>As there is no procedure for consulting with or informing development of the changes, it may not be the case that the knowledge of the changes is passed on in a timely fashion. Additionally, the impact of some changes might be so large that they cannot be incorporated into the software easily at a late stage. In this case, if the changes are deemed to be vital, major development rework might have to take place. For these reasons, every change should be strictly controlled. Change can be allowed, but should only take place after a full impact assessment to see how it will affect the project timescales and costs.</p>
<p><strong>4.</strong> Ensure strict Configuration Management is in place for code, data and documentation</p>
<p>Without Configuration Management, a high quality of testing is impossible. This is because there cannot be high levels of confidence that the right version of the software or documentation is being tested, or that the right version will be released to the customer.</p>
<p>Organizations with poor Configuration Management might test one version of a product, and yet perhaps release a slightly different version – a version which then enters the field UNTESTED. It is viewed as untested, as potentially major faults may have been introduced which change the behavior of parts of the system from that which was intended – or, in some cases, even disabling the entire system.</p>
<p><strong>5.</strong> Focus quality approach on product risks, focus on preventing rather than detecting defects</p>
<p>It has been proven many times that the later in the software development lifecycle that a defect is found, the more costly it is to rectify it. For example, correcting a mistake in a requirements document before development begins is a far quicker and cheaper activity than correcting the software after it has been developed against the faulty requirements document.</p>
<p><strong>6.</strong> Begin UAT (User Acceptance Testing) test design during requirement definition</p>
<p>If an organization is using the ‘V-model’ of software development correctly, then the test team should be involved with the project from the very beginning – during the requirements definition. Not only can the testers use their expertise and experience to help assess whether or not particular requirements are testable or not, but they can also start to design the relevant tests, which helps to ease the test schedule later.</p>
<p>In this scenario, the User Acceptance Tests should correspond directly to the user requirements. This is because the requirements are the items that the user wishes to see in the system, and the tests represent the way that the system is proved to meet those requirements. It clearly follows that the best time to write the UAT is when the requirements are being constructed.</p>
<p><strong>7.</strong> Begin system test design during the system design stage</p>
<p>It is important that the system is designed to be easily testable, if possible. This can only occur if testing expertise is involved in the system design stage. Collaboration between the testers and the system designers can help ensure that the system produced fulfills this aim. During this early involvement, the testers can also start to construct the System Tests, which helps ease the testing schedule. An additional benefit to this approach is the enhanced team collaboration between the system design and testing team.</p>
<p><strong>8.</strong> Focus test effort on unit test where it is cheaper</p>
<p>As previously stated, correcting defects earlier in the software development life cycle is far easier, quicker and cheaper than otherwise. Given this axiom, it is surprising that many organizations spend little or no time on unit testing activities – often with the reasoning that “our developers develop, and our testers test”.</p>
<p>However, not only does this approach mean that potential defects reach later stages of testing than they should, it is possible that they may not be found at all – as later stages of testing normally perform different testing activities, in different ways, to those used in unit testing.<br />
<strong> 9.</strong> Plan test approach using risk to define focus of test effort</p>
<p>Test time is often limited, due to reasons like fixed release dates, or late software delivery from the development team. This can often mean that not all tests that were originally planned are carried out.</p>
<p>In this scenario, it is vital that those elements of the system that are considered critical to product success have been tested. Therefore, the approach to testing should always be to focus effort on the ‘highest risk’ areas of the system first. Following this, medium risk and low risk areas of the system can be tested, in turn, as time permits.</p>
<p>This risk-based approach ensures that, when under time pressures, the areas of the system which remain untested (and potentially flawed) are the lowest risk areas possible from those that are left to be tested.<br />
<strong> 10.</strong> Use tools to test for functional and non functional errors very early on when they are cheaper and more effective at removing errors, and throughout the life cycle</p>
<p>If an automated test set is created and maintained, it can be repeatedly utilized from an early stage of the software development life cycle, as a ‘smoke test’. This method has the potential to find a lot of defects quickly at an early stage, saving time in later test phases.</p>
<p>Additionally, sometimes specific tools may indicate flaws in the system design – which should be exposed as early as possible. For example, early performance testing on parts of the system that are available might reveal a poorly-designed module, which would hinder the system beyond the tolerance levels of the user when released.</p>
<p>In this way, the module is easily identified, isolated, and fixed or replaced – an activity that would be much harder if performance testing was only conducted when the system was about to be delivered to the customer.</p>
<br /><img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/faisssal.wordpress.com/37/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/faisssal.wordpress.com/37/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/faisssal.wordpress.com/37/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/faisssal.wordpress.com/37/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/faisssal.wordpress.com/37/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/faisssal.wordpress.com/37/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/faisssal.wordpress.com/37/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/faisssal.wordpress.com/37/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/faisssal.wordpress.com/37/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/faisssal.wordpress.com/37/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/faisssal.wordpress.com/37/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/faisssal.wordpress.com/37/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/faisssal.wordpress.com/37/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/faisssal.wordpress.com/37/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/faisssal.wordpress.com/37/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/faisssal.wordpress.com/37/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=faisssal.wordpress.com&amp;blog=552552&amp;post=37&amp;subd=faisssal&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://faisssal.wordpress.com/2008/06/14/end-of-the-date-its-all-about-10-arrows-to-cut-software-development-costs/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/de9b6e0205ad14a61d748e23de0ebc0b?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">faisee</media:title>
		</media:content>
	</item>
		<item>
		<title>Test Patterns</title>
		<link>http://faisssal.wordpress.com/2007/12/25/test-patterns/</link>
		<comments>http://faisssal.wordpress.com/2007/12/25/test-patterns/#comments</comments>
		<pubDate>Tue, 25 Dec 2007 12:57:27 +0000</pubDate>
		<dc:creator>Mohamed</dc:creator>
				<category><![CDATA[Software Tester]]></category>

		<guid isPermaLink="false">http://faisssal.wordpress.com/2007/12/25/test-patterns/</guid>
		<description><![CDATA[A test technique is a general pattern describing what we do when we test. We start by modeling the test space. We then determine coverage, oracles, and activities. We configure, operate, and observe the system under test, and finally we evaluate the result. Sometimes these tasks happen so quickly and intuitively that we don’t even [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=faisssal.wordpress.com&amp;blog=552552&amp;post=29&amp;subd=faisssal&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p class="msonormal1" style="text-align:justify;text-indent:0.5in;"><span style="color:#333399;">A test technique is a general pattern describing what we do when we test. We start by modeling the test space. We then determine coverage, oracles, and activities. We configure, operate, and observe the system under test, and finally we evaluate the result. Sometimes these tasks happen so quickly and intuitively that we don’t even notice we’re performing them. </span></p>
<p class="msonormal1" style="text-align:justify;text-indent:0.5in;"><span style="color:#333399;">Notice the term “systems” rather than “programs.” The former, more general term allows flexibility in modeling what we have to test, from a single line of code to a functional module, an application, or a suite of interacting applications and the platforms on which they work. The scope of the effort affects the techniques we choose and the ways in which we use them. </span></p>
<p class="msonormal1" style="text-align:justify;text-indent:0.5in;"><i><span style="color:#333399;">Function testing </span></i><span style="color:#333399;">involves identifying each function and then testing it independently. A function causes the system under test to exercise some behavior, either changing </span></p>
<p class="msonormal1" style="text-align:justify;"><span style="color:#333399;">or maintaining the system’s state. The object is to ensure that each function does what it should, but also that it doesn’t do what it shouldn’t. For each function, we need a reliable oracle—a principle or mechanism that will allow us to recognize a problem. </span></p>
<p class="msonormal1" style="text-align:justify;text-indent:0.5in;"><span style="color:#333399;">Function testing is good for identifying the capabilities of a system, but the technique has weaknesses, too. First, unless we choose our models carefully, the number of unction’s in a system could be intractably large. To be effective, we need to make pragmatic choices about the scale of our functional tests. Second, function tests are intended to test each function in isolation, but some of the riskiest areas of any system are in the interactions <i>between </i>functions. Third, some defects may depend upon exercising a function more than once. </span></p>
<p class="msonormal1" style="text-align:justify;text-indent:0.5in;"><i><span style="color:#333399;">Domain testing </span></i><span style="color:#333399;">focuses on clarifying and simplifying the testing effort by classifying things associated with the system. Identifying equivalence classes— groups of things that we deem interchangeable for the purposes of a given test—is the key task in domain testing. Practically anything to do with the system—input and output data, platforms, peripherals, users, functions— can be classified by some criterion. Good domain testing involves selecting items from the identified classes such that we cover the territory (e.g., normal data values vs. exceptional data values, representative platforms vs. unusual platforms, or expert users vs. novice users). If we observe clear divisions between classes in defined ranges, such as elements on a number line, we might test at the boundaries between them, where some theories of error suggest that mistakes are most likely to occur and easiest to detect. Boundary analysis— a subset of domain testing—may reduce the number of tests we believe we need, but some classifications don’t have clear linear boundaries. To do domain testing well, we must develop skill at dividing and conquering the data and at identifying risk. </span></p>
<p class="msonormal1" style="text-align:justify;text-indent:0.5in;"><i><span style="color:#333399;">Stress testing </span></i><span style="color:#333399;">is the process of overfeeding or starving the system, or both. This includes overwhelming the system with input, tasks, or users, or removing resources like memory, disk space, network bandwidth, or connectivity. The system under test can be anything from a single input field to the entire business process. We use stress testing to better understand the capacities and limitations of the system, looking for bottlenecks, constraints, and dependencies. The goal is to fix intolerable weaknesses in the program and prepare for and mitigate the tolerable weaknesses. </span></p>
<p class="msonormal1" style="text-align:justify;text-indent:0.5in;"><i><span style="color:#333399;">Flow testing </span></i><span style="color:#333399;">involves running the system without halting or resetting it. When designing a system, we typically simplify by describing single transactions or events in isolation from each other. Flow testing introduces the system to a more realistic, complex world, where transactions happen in sequence, concurrently, or with interruptions. Good flow testing doesn’t decompose the system as function testing does, or undermine it as stress testing does. Instead flow tests model realistic system operation, ensuring that things are done correctly and in the right order. </span></p>
<p class="msonormal1" style="text-align:justify;text-indent:0.5in;"><span style="color:#333399;">With <i>scenario testing</i>, we test to a compelling story about the system and its users. Powerful scenarios motivate interest and empathy. Scenario tests include use cases; user stories; the birth, life, and death of a piece of data within the system; and soap opera tests, which posit highly improbable but possible scenarios. Scenario testing tends to find more business-facing bugs than developer-facing bugs. </span></p>
<p class="msonormal1" style="text-align:justify;text-indent:0.5in;"><span style="color:#333399;">In <i>claims testing</i>, we seek what anyone (a requirements author or marketer) or anything (a help file or a shrink-wrapped box) says about the system, and we test that claim’s validity. Requirements documents and specifications are the most obvious sources, but we can also test claims made in emails and conversations, sales and marketing materials, end-user documentation, and tutorials. Some claims might be inaccurate, but if we identify where the claim and the system are inconsistent, the project team can fix one or the other. </span></p>
<p class="msonormal1" style="text-align:justify;text-indent:0.5in;"><i><span style="color:#333399;">User testing </span></i><span style="color:#333399;">tells us to test with real users or real-user models. A user, in Rapid Testing parlance, is anyone who might use the system or have an interest in the test effort. I regularly run an exercise in which Rapid Testers try to identify all of the project’s user roles; we don’t stop until we reach thirty. We tend to focus our modeling on end-users (or their managers or customers), but we might also perform tests to serve the interests of the help desk, training staff, or chief financial officer. We’ll also perform some security testing because black hat hackers are potential users (or abusers) of the system. </span></p>
<p class="msonormal1" style="text-align:justify;text-indent:0.5in;"><span style="color:#333399;">Risk-based testing posits the harm that could come to some person if a threat were to expose some vulnerability in the system; we recognize or imagine a risk and perform tests to reveal it. I’ve found three useful ways to generate risk-based test ideas: </span></p>
<p class="msonormal1" style="margin-left:1in;text-align:justify;text-indent:-0.25in;"><span style="font-family:Wingdings;color:#333399;">ü</span><span style="font-size:7pt;color:#333399;">     </span><span style="color:#333399;">Consider something that could go wrong, such as a programming error or an ambiguous requirement. </span></p>
<p class="msonormal1" style="margin-left:1in;text-align:justify;text-indent:-0.25in;"><span style="font-family:Wingdings;color:#333399;">ü</span><span style="font-size:7pt;color:#333399;">     </span><span style="color:#333399;">Contemplate the consequences of something going wrong, such as a phone call to the help desk or a front-page story in the San Jose Mercury News. </span></p>
<p class="msonormal1" style="margin-left:1in;text-align:justify;text-indent:-0.25in;"><span style="font-family:Wingdings;color:#333399;">ü</span><span style="font-size:7pt;color:#333399;">     </span><span style="color:#333399;">Determine what the development organization is prepared to risk (e.g., “A bug fix this late might have undesirable side effects; we’ll risk leaving it in”). </span></p>
<p class="msonormal1" style="text-align:justify;text-indent:0.5in;"><span style="color:#333399;">Automatic testing allows us to run a test zillions of times or in a zillion variations. The principal virtues of automatic testing are speed, precision, and repetition. However, test automation is software development, which can be tricky and expensive. We should balance the cost of repetition with the value of the problems it finds. Some tests we run repeatedly; others aren’t even worth running twice. </span></p>
<p class="msonormal1" style="text-align:justify;text-indent:0.5in;"><span style="color:#333399;">The boundaries between techniques are sometimes blurry, and our definitions are somewhat open. When the name of a given technique suggests multiple interpretations, Rapid. No single technique can reveal all of the information that we seek about a system, but a variety of techniques will reveal more bugs—and more varieties of bugs.</span><span style="font-size:10pt;color:#333399;"> </span><span style="color:#333399;"></span></p>
<br /><img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/faisssal.wordpress.com/29/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/faisssal.wordpress.com/29/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/faisssal.wordpress.com/29/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/faisssal.wordpress.com/29/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/faisssal.wordpress.com/29/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/faisssal.wordpress.com/29/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/faisssal.wordpress.com/29/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/faisssal.wordpress.com/29/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/faisssal.wordpress.com/29/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/faisssal.wordpress.com/29/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/faisssal.wordpress.com/29/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/faisssal.wordpress.com/29/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/faisssal.wordpress.com/29/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/faisssal.wordpress.com/29/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/faisssal.wordpress.com/29/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/faisssal.wordpress.com/29/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=faisssal.wordpress.com&amp;blog=552552&amp;post=29&amp;subd=faisssal&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://faisssal.wordpress.com/2007/12/25/test-patterns/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/de9b6e0205ad14a61d748e23de0ebc0b?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">faisee</media:title>
		</media:content>
	</item>
		<item>
		<title>Developers have you ever try this !!!</title>
		<link>http://faisssal.wordpress.com/2007/07/08/developers-have-you-ever-try-this/</link>
		<comments>http://faisssal.wordpress.com/2007/07/08/developers-have-you-ever-try-this/#comments</comments>
		<pubDate>Sun, 08 Jul 2007 11:29:16 +0000</pubDate>
		<dc:creator>Mohamed</dc:creator>
				<category><![CDATA[Software Tester]]></category>

		<guid isPermaLink="false">http://faisssal.wordpress.com/2007/07/08/developers-have-you-ever-try-this/</guid>
		<description><![CDATA[ This is specially for the developer who think testers cheap&#8230;.. Testing For Developers When we testers find yet another &#8220;Did you even run this?&#8221; bug, it&#8217;s easy to believe developers purposely inject bugs just to taunt us. I have worked with a lot of developers over the years, and I&#8217;ve found that they generally do [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=faisssal.wordpress.com&amp;blog=552552&amp;post=27&amp;subd=faisssal&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<h5> This is specially for the developer who think testers cheap&#8230;..</h5>
<p><strong>Testing For Developers</strong></p>
<p>When we testers find yet another &#8220;Did you even run this?&#8221; bug, it&#8217;s easy to believe developers purposely inject bugs just to taunt us. I have worked with a lot of developers over the years, and I&#8217;ve found that they generally do try to test their code but simply don&#8217;t know how to go about doing so effectively.</p>
<p>As testers gain experience they build up a checklist of common problems, classes of bugs that crop up over and over, and areas that tend to be troublesome. Developers don&#8217;t have our experience, so they don&#8217;t have anything similar.</p>
<p>If developers don&#8217;t know how to test very well, and testers have a simple checklist we use to find the most common bugs, then giving our checklist to developers should help out both sides.</p>
<p>That&#8217;s my theory anyway, and this is my checklist. I&#8217;m testing it right now with my developers. Test it with yours/yourself and let me know what happens!</p>
<ul>
<li class="MsoNormal"><strong>Customize This List</strong>:      If you get a bug, determine what test (or even better, what general class      of tests or testing technique) would have caught the bug, then add it to      this list.</li>
<li class="MsoNormal"><strong>Use Your Tester</strong>:      Brainstorm tests with your tester. Review your (planned/actual) tests with      your feature team. Coordinate your testing with your tester, especially      with respect to tests they have already written/are currently writing.</li>
<li class="MsoNormal"><strong>Focus On Your      Customer</strong>: Think, &#8220;Where would the presence of bugs hurt our      customers the most?&#8221;, then let your answers drive your testing.</li>
<li class="MsoNormal"><strong>Test Around Your      Change</strong>. Consider what it might affect beyond its immediate      intended target. Think about related functionality that might have similar      issues. If fixing these surrounding problems is not relevant to your      change, log bugs for them. To quote a smart person I know, &#8220;Don&#8217;t      just scratch it. What&#8217;s the bug bite telling you?&#8221;</li>
<li class="MsoNormal"><strong>Use Code Coverage</strong>.      Code coverage can tell you what functionality has not yet been tested, but      don&#8217;t just write a test case to hit the code. Instead, let it help you to      determine what classes of testing and test cases that uncovered code      indicates you are missing.</li>
<li class="MsoNormal"><strong>Consider Testability</strong>.      Hopefully you have considered testability throughout your design and      implementation process. If not, think about what someone else will have to      do to test your code. What can you do / do you need to do in order to allow      proper, authorized verification?</li>
</ul>
<p class="MsoNormal" style="margin-left:0.25in;"><strong>Ways To Find Common Bugs</strong>:</p>
<ul>
<li>
<ul>
<li class="MsoNormal">Reset to default       values after testing other values (e.g., pair wise tests, boundary       condition tests).</li>
<li class="MsoNormal">Look for hard coded       data (e.g., &#8220;c:\temp&#8221; rather than using system APIs to retrieve       the temporary folder), run the application from unusual locations, open       documents from and save to unusual locations.</li>
<li class="MsoNormal">Run under different       locales and language packs.</li>
<li class="MsoNormal">Run under different       accessibility schemes (e.g., large fonts, high contrast).</li>
<li class="MsoNormal">Save/Close/Reopen       after any edit.</li>
<li class="MsoNormal">Undo, Redo after any       edit.</li>
</ul>
</li>
<li class="MsoNormal"><strong>Test Boundary      Conditions</strong>: Determine the boundary conditions and equivalency      classes, and then test just below, at, in the middle, and just above each      condition. If multiple data types can be used, repeat this for each option      (even if your change is to handle a specific type). If multiple data types      can be used, repeat this for each option. For numbers, common boundaries include:
<ul>
<li class="MsoNormal">smallest valid value</li>
<li class="MsoNormal">at, just below, and       just above the smallest possible value</li>
<li class="MsoNormal">-1</li>
<li class="MsoNormal">0</li>
<li class="MsoNormal">1</li>
<li class="MsoNormal">some</li>
<li class="MsoNormal">many</li>
<li class="MsoNormal">at, just below, and       just above the largest possible value</li>
<li class="MsoNormal">largest valid value</li>
<li class="MsoNormal">invalid values</li>
<li class="MsoNormal">different-but-similar data       types (e.g., unsigned values where signed values are expected)</li>
<li class="MsoNormal">for objects, remember       to test with null and invalid instances</li>
</ul>
</li>
<li class="MsoNormal"><strong>Other Helpful      Techniques</strong>:
<ul>
<li class="MsoNormal">Do a variety of       smallish pair wise tests to mix-and-match parameters, boundary       conditions, etc. One axis that often brings results is testing both       before and after resetting to default values.</li>
<li class="MsoNormal">Repeat the same action       over and over and over, both doing exactly the same thing and changing       things up.</li>
<li class="MsoNormal">Verify that every last       bit of functionality you have implemented discussed in the spec matches       what the spec describes should happen. Then look past the spec and think       about what is not happening but should.</li>
</ul>
</li>
<li class="MsoNormal"><strong>&#8220;But a user      would never do that!&#8221;</strong>: To quote Jerry Weinberg, <em>When a      developer says, &#8220;a user would never do that,&#8221; I say, &#8220;Okay,      then it won&#8217;t be a problem to any user if you write a little code to catch      that circumstance and stop some user from doing it by accident, giving a      clear message of what happened and why it can&#8217;t be done.&#8221; If it      doesn&#8217;t make sense to do it, no user will ever complain about being      stopped.</em></li>
</ul>
<br /><img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/faisssal.wordpress.com/27/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/faisssal.wordpress.com/27/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/faisssal.wordpress.com/27/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/faisssal.wordpress.com/27/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/faisssal.wordpress.com/27/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/faisssal.wordpress.com/27/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/faisssal.wordpress.com/27/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/faisssal.wordpress.com/27/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/faisssal.wordpress.com/27/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/faisssal.wordpress.com/27/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/faisssal.wordpress.com/27/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/faisssal.wordpress.com/27/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/faisssal.wordpress.com/27/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/faisssal.wordpress.com/27/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/faisssal.wordpress.com/27/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/faisssal.wordpress.com/27/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=faisssal.wordpress.com&amp;blog=552552&amp;post=27&amp;subd=faisssal&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://faisssal.wordpress.com/2007/07/08/developers-have-you-ever-try-this/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/de9b6e0205ad14a61d748e23de0ebc0b?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">faisee</media:title>
		</media:content>
	</item>
		<item>
		<title>ISTQB Certified Tester</title>
		<link>http://faisssal.wordpress.com/2007/07/08/istqb-certified-tester/</link>
		<comments>http://faisssal.wordpress.com/2007/07/08/istqb-certified-tester/#comments</comments>
		<pubDate>Sun, 08 Jul 2007 10:40:42 +0000</pubDate>
		<dc:creator>Mohamed</dc:creator>
				<category><![CDATA[Software Tester]]></category>

		<guid isPermaLink="false">http://faisssal.wordpress.com/2007/07/08/istqb-certified-tester/</guid>
		<description><![CDATA[Indian Testing Board (ITB) is the International Software Testing Qualifications Board (ISTQB) approved national board for India. ITB is responsible for the &#8220;ISTQB-Certified-Tester&#8221; Certification in India. The ISTQB was officially founded as an International Testing Qualifications Board in Edinburgh in November 2002. The ISTQB is responsible for the &#8220;ISTQB Certified Tester&#8221;, which is an international [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=faisssal.wordpress.com&amp;blog=552552&amp;post=26&amp;subd=faisssal&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p class="MsoNormal"> <span class="maincontent">                          Indian Testing Board (ITB) is the International Software Testing Qualifications Board (ISTQB) approved national board for India. ITB is responsible for the &#8220;ISTQB-Certified-Tester&#8221; Certification in India. </span></p>
<p class="maincontent1">                           The ISTQB was officially founded as an International Testing Qualifications Board in Edinburgh in November 2002. The ISTQB is responsible for the &#8220;ISTQB Certified Tester&#8221;, which is an international qualification scheme and the qualifications in the scheme are based on a syllabus. There is an examination covering the contents of the syllabus. After the examination, each successful participant receives the “ISTQB-Certified-Tester” certificate. There are two level of exam:</p>
<p class="MsoNormal"><strong>ISTQB Foundation Level<br />
<!--[if !supportLineBreakNewLine]--><br />
<!--[endif]--></strong></p>
<ul>
<li class="MsoNormal"><span>   </span>Basics of Software Testing</li>
<li class="MsoNormal"><span>   </span>Testing in the Software Development      Lifecycle</li>
<li class="MsoNormal"><span>   </span>Test Management</li>
<li class="MsoNormal"><span>   </span>Static Testing</li>
<li class="MsoNormal"><span>   </span>Dynamic Testing</li>
<li class="MsoNormal"><span>   </span>Test Tools</li>
</ul>
<p><strong>ISTQB<span>  </span>Advance Level</strong></p>
<p><strong><br />
<span>        </span></strong>The<strong> Advance Level </strong>is aimed at experienced test professionals. This level shows that the person has detailed knowledge regarding testing and skills to apply this knowledge in practice. The requirements for this level are available through the detailed syllabus.</p>
<p><strong>The prerequisites for applying for the exam are as follows:</strong></p>
<ul>
<li class="MsoNormal">Clearing the Foundation Level      exam of ISTQB</li>
<li class="MsoNormal">Two years of experience as a      software tester</li>
</ul>
<p><strong>The exam has three sublevels:</strong></p>
<ul>
<li class="MsoNormal">Technical Tester</li>
<li class="MsoNormal">Functional Tester</li>
<li class="MsoNormal">Test Manager</li>
</ul>
<p class="MsoNormal">&nbsp;</p>
<h3 align="center"><strong><span style="font-size:20pt;font-family:'Lucida Console';">ISTQB Certification Docs</span></strong></h3>
<h3 align="center"><strong><span style="font-size:20pt;font-family:'Lucida Console';"> </span></strong></h3>
<p class="MsoNormal" style="margin-right:-0.25in;"><strong><em><u><span style="font-size:18pt;font-family:'Arial Narrow';">ISTQB Syllabus for Foundation and Advanced</span></u></em></strong></p>
<p class="MsoNormal" style="margin-right:-0.25in;"><span style="font-family:Arial;"> </span></p>
<p class="MsoNormal" style="margin-right:-0.25in;"><span style="font-family:'Comic Sans MS';"><a href="http://s16.quicksharing.com/v/1845902/SyllabusFoundation.pdf.html" title="Foundation">Syllabus Foundation</a></span></p>
<p class="MsoNormal" style="margin-right:-0.25in;"><span style="font-family:'Comic Sans MS';"><a href="http://s16.quicksharing.com/v/4977887/SyllabusAdvanced.pdf.html" title="Advance">Syllabus Advanced</a></span></p>
<p class="MsoNormal" style="margin-right:-0.25in;"><span style="font-family:'Comic Sans MS';"><a href="http://s16.quicksharing.com/v/4221477/constitution.pdf.html" title="Constitution">Constitution</a></span></p>
<p class="MsoNormal" style="margin-right:-0.25in;"><span style="font-family:'Comic Sans MS';"><a href="http://http://s16.quicksharing.com/v/9561163/glossary_current.pdf.html" title="Glossary Current">Glossary Current</a></span></p>
<p class="MsoNormal"> <strong><em><u><span style="font-size:18pt;font-family:'Arial Narrow';">Foundation Level Chapters 1-6</span></u></em></strong><br />
<!--[if !supportLineBreakNewLine]--><br />
<!--[endif]--></p>
<p class="MsoNormal" style="margin-right:-0.25in;"><span style="font-family:'Comic Sans MS';"><a href="http://s16.quicksharing.com/v/3349859/Chapter1_1_.doc.html" title="Chapter 1">Chapter 1</a></span></p>
<p class="MsoNormal" style="margin-right:-0.25in;"><span style="font-family:'Comic Sans MS';"><a href="http://s16.quicksharing.com/v/6178555/1Chapter2_1_.doc.html" title="Chapter 2">Chapter 2</a></span></p>
<p class="MsoNormal" style="margin-right:-0.25in;"><span style="font-family:'Comic Sans MS';"><a href="http://http://s16.quicksharing.com/v/7690959/Chapter3_1_.doc.html" title="Chapter 3">Chapter 3</a></span></p>
<p class="MsoNormal" style="margin-right:-0.25in;"><span style="font-family:'Comic Sans MS';"><a href="http://http://s1.quicksharing.com/v/6195558/Chapter4_1_.doc.html" title="Chapter 4">Chapter 4</a></span></p>
<p class="MsoNormal" style="margin-right:-0.25in;"><span style="font-family:'Comic Sans MS';"><a href="http://s1.quicksharing.com/v/6564779/Chapter5_1_.doc.html" title="Chapter 5">Chapter 5</a></span></p>
<p class="MsoNormal" style="margin-right:-0.25in;"><span style="font-family:'Comic Sans MS';"><a href="http://s1.quicksharing.com/v/9655081/Chapter6_1_.doc.html" title="Chapter 6">Chapter 6</a></span></p>
<p class="MsoNormal" style="margin-right:-0.5in;"><strong><em><u><span style="font-size:18pt;font-family:'Arial Narrow';">Sample Question paper and dumps for Foundation Level</span></u></em></strong><strong><em><u><span style="font-size:18pt;font-family:'Arial Narrow';"><br />
<!--[if !supportLineBreakNewLine]--><br />
<!--[endif]--></span></u></em></strong></p>
<p class="MsoNormal" style="margin-right:-0.25in;"><span style="font-family:'Comic Sans MS';"><a href="http://http://s16.quicksharing.com/v/3003970/Test_1_2_1_.doc.html" title="Sample Paper 1">Sample Paper 1</a></span></p>
<p class="MsoNormal" style="margin-right:-0.25in;"><span style="font-family:'Comic Sans MS';"><a href="http://http://s16.quicksharing.com/v/4616273/Test_2_2_1_.doc.html" title="Sample Paper 2">Sample Paper 2</a><span></span></span></p>
<p class="MsoNormal" style="margin-right:-0.25in;"><span style="font-family:'Comic Sans MS';"><a href="http://s16.quicksharing.com/v/9718807/Test_3_2_1_.doc.html" title="Sample Paper 3">Sample Paper 3</a><span></span></span></p>
<p><span style="font-size:12pt;font-family:Arial;"><br />
<!--[endif]--></span></p>
<br /><img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/faisssal.wordpress.com/26/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/faisssal.wordpress.com/26/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/faisssal.wordpress.com/26/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/faisssal.wordpress.com/26/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/faisssal.wordpress.com/26/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/faisssal.wordpress.com/26/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/faisssal.wordpress.com/26/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/faisssal.wordpress.com/26/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/faisssal.wordpress.com/26/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/faisssal.wordpress.com/26/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/faisssal.wordpress.com/26/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/faisssal.wordpress.com/26/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/faisssal.wordpress.com/26/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/faisssal.wordpress.com/26/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/faisssal.wordpress.com/26/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/faisssal.wordpress.com/26/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=faisssal.wordpress.com&amp;blog=552552&amp;post=26&amp;subd=faisssal&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://faisssal.wordpress.com/2007/07/08/istqb-certified-tester/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/de9b6e0205ad14a61d748e23de0ebc0b?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">faisee</media:title>
		</media:content>
	</item>
	</channel>
</rss>
