Software Testing

  • View
    14

  • Download
    1

Embed Size (px)

DESCRIPTION

Explains in detail about Testing and types

Text of Software Testing

MSIT 32 Software Quality and Testing

1

SOFTWARE QUALITY & TESTING(MSIT - 32)

: Contributing Author :

Dr. B.N. SubrayaInfosys Technologies Ltd., Mysore

PDF created with pdfFactory Pro trial version www.pdffactory.com

2

PDF created with pdfFactory Pro trial version www.pdffactory.com

MSIT 32 Software Quality and Testing

3

a

Contents

Chapter 1 INTRODUCTION TO SOFTWARE TESTING 1.1 1.2 1.3 1.4 1.5 1.6 1.7 Learning Objectives.......................................................................... Introduction...................................................................................... What is Testing?............................................................................... Approaches to Testing....................................................................... Importance of Testing....................................................................... Hurdles in Testing............................................................................. Testing Fundamentals........................................................................ 1 1 1 3 5 6 6 7

Chapter 2 SOFTWARE QUALITY ASSURANCE 2.1 2.2 2.3 2.4 2.5 2.6 2.7 2.8 2.9 2.10 2.11 2.12 Learning Objectives.......................................................................... Introduction...................................................................................... Quality Concepts............................................................................... Quality of design............................................................................... Quality of Conformance.................................................................... Quality Control (QC)......................................................................... Quality Assurance (QA).................................................................... Software Quality ASSURANCE (SQA)............................................. Formal Technical Reviews (FTR)....................................................... Statistical Quality Assurance.............................................................. Software Reliability........................................................................... The SQA Plan.................................................................................. 10 10 10 11 12 12 13 13 14 21 27 30 31

PDF created with pdfFactory Pro trial version www.pdffactory.com

4Chapter 3 PROGRAM INSPECTIONS, WALKTHROUGHS AND REVIEWS QUALITY ASSURANCE 3.1 3.2 3.3 3.4 3.5 3.6 Learning Objectives.......................................................................... Introduction...................................................................................... Inspections and Walkthroughs............................................................ Code Inspections.............................................................................. An Error Check list for Inspections.................................................... Walkthroughs....................................................................................

Contents

36 36 36 37 38 39 42

Chapter 4 TEST CASE DESIGN 4.1 4.2 4.3 4.4 4.5 4.6 4.7 4.8 Learning Objectives.......................................................................... Introduction...................................................................................... White Box Testing............................................................................ Basis Path Testing............................................................................ Control Structure testing.................................................................... Black Box Testing............................................................................ . Static Program Analysis.................................................................... Automated Testing Tools................................................................... 43 43 43 44 45 49 53 57 58

Chapter 5 TESTING FOR SPECIALIZED ENVIRONMENTS 5.1 5.2 5.3 5.4 5.5 Learning Objectives.......................................................................... Introduction...................................................................................... Testing GUIs.................................................................................... Testing of Client/Server Architectures................................................ Testing documentation and Help facilities............................................ 60 60 60 60 63 63

Chapter 6 SOFTWARE TESTING STRATEGIES 6.1. 6.2. 6.3 6.4 6.5 6.6 6.7 6.8 Learning Objectives.......................................................................... Introduction...................................................................................... A Strategic Approach To Software Testing......................................... Verification and Validation.................................................................. Organizing for software testing.......................................................... A Software Testing Strategy.............................................................. Strategic issues................................................................................. Unit Testing...................................................................................... 65 65 65 69 70 71 72 75 75

PDF created with pdfFactory Pro trial version www.pdffactory.com

MSIT 32 Software Quality and Testing

580 85 86 89

6.9 6.10 6.11 6.12

Integration Testing............................................................................ Validation Testing.............................................................................. System Testing.................................................................................. Summary..........................................................................................

Chapter 7 TESTING OF WEB BASED APPLICATIONS 7.1 7.2 7.3 7.4 7.5 Introduction...................................................................................... Testing of Web Based Applications: Technical Peculiarities.................. Testing of Static Web- based applications........................................... Testing of Dynamic Web based applications........................................ Future Challenges............................................................................. 91 91 91 92 94 96

Chapter 8 TEST PROCESS MODEL 8.0 8.1 Need for Test Process Model............................................................ Test Process Cluster.......................................................................... 97 97 98

Chapter 9 TEST METRICS 9.0 9.1 9.2 9.3 9.4 9.5 Introduction...................................................................................... Overview of the Role and Use of Metrics........................................... Primitive Metric and Computed Metrics.............................................. Metrics typically used within the Testing Process................................ Defect Detection Effectiveness percentage (DDE)............................. Setting up and administering a Metrics Program.................................. 103 103 104 104 105 106 106

PDF created with pdfFactory Pro trial version www.pdffactory.com

6

PDF created with pdfFactory Pro trial version www.pdffactory.com

MSIT 32 Software Quality and Testing

7

Chapter 1

Introduction to Software Testing

1.1 LEARNING OBJECTIVES

Yl l l l l

ou will learn about:

What is Software Testing? Need for software Testing, Various approaches to Software Testing, What is the defect distribution, Software Testing Fundamentals.

1.2 INTRODUCTIONSoftware testing is a critical element of software quality assurance and represents the ultimate process to ensure the correctness of the product. The quality product always enhances the customer confidence in using the product thereby increases the business economics. In other words, a good quality product means zero defects, which is derived from a better quality process in testing. The definition of testing is not well understood. People use a totally incorrect definition of the word testing, and that this is the primary cause for poor program testing. Examples of these definitions are such statements as Testing is the process of demonstrating that errors are not present, The purpose of MSIT 32 Software Quality and Testing

1

PDF created with pdfFactory Pro trial version www.pdffactory.com

8

Chapter 1 - Introduction to Software Testing

testing is to show that a program performs its intended functions correctly, and Testing is the process of establishing confidence that a program does what it is supposed to do. Testing the product means adding value to it, which means raising the quality or reliability of the program. Raising the reliability of the product means finding and removing errors. Hence one should not test a product to show that it works; rather, one should start with the assumption that the program contains errors and then test the program to find as many errors as possible. Thus a more appropriate definition is: Testing is the process of executing a program with the intent of finding errors.

Purpose of TestingTo show the software works: It is known as demonstration-oriented To show the software doesnt work: It is known as destruction-oriented To minimize the risk of not working up to an acceptable level: it is known as evaluation-oriented

Need for TestingDefects can exist in the software, as it is developed by human beings who can make mistakes during the development of software. However, it is the primary duty of a software vendor to ensure that software delivered