Module Objectives Introduction to Software Testing Importance of Software Testing Verification and Validation Software Test Lifecycle Testing Process
Goal of testing The goal of a software tester is: To find bugs To find them as early as possible & make sure they get fixed Testing is a means to: Find bugs Provide confidence and information Even prevent defects
Why is testing needed A defect in the software has a root cause, while the effect of defect is seen as impact by the different stake holders. Testing is part of overall Quality Assurance – It covers the Quality Control aspect of ensuring Quality A fault doesn't necessarily result in a failure, but a failure can only occur if a fault exists. To avoid a failure you must find the fault. Software testing may be required for compliance with contractual or legal requirements When is testing complete? Actually never However for practical reasons it is stopped after considering the risks involved, time and budget constraints
Why is testing needed Why is testing needed • Complexity of software makes it error prone • Untested or weakly tested software can cause losses in real life. Eg: • Disney’s Lion King – 1994 – 1995- The software did not work on the most common systems that the public had. • Intel Pentium Floating-Point Division Bug – 1994 – Intel took a charge of more than $400 million to cover the costs of replacing bad chips • NASA Mars Polar Lander – 1999 – Malfunction due to an unexpected setting of a single data bit • Patriot missile defense system – 1991 – A software bug caused the tracking system to be inaccurate after 14 hrs of operation • Software bugs can cause harm to a person, to the environment or to a company
Who makes a Good tester The tester’s mindset must have the below mentioned attributes • Keen Observation • Questioning Skills • “Never give-up” attitude • Interpersonal Skills
The V-Model The V-model can be said to have developed as a result of the evolution of software testing. Various testing techniques were defined and various kinds of testing were clearly separated from each other which led to the waterfall model evolving into the V-model. The tests in the ascending (Validation) hand are derived directly from their design or requirements counterparts in the descending (Verification) hand. The ‘V’ can also stand for the terms Verification and Validation.
Project Initiation Test Strategy and Planning Test Environment setup Test Case Designing Test Execution Test Cycles Defect Reporting and Tracking Project closure The Testing Process
References • http://knol.google.com/k/istqb-certification-answers-of-all-tests-chapter-1-6# • http://9th-direction.com/ISTQB/ISTQB-Question-Paper-Dump-6.pdf • http://istqb.org/download/attachments/2326555/Foundation%20Level%20Syllabus%20(2010).pdf • http://istqb.patshala.com/