Page 22 - SOFTWARE TESTING & QUALITY ASSURANCE
P. 22
Sarabjit Kumar, Lovely Professional University Unit 2: Fundamentals of Software Testing
Unit 2: Fundamentals of Software Testing
CONTENTS
Objectives
Introduction
2.1 Testing Strategies and Techniques
2.1.1 Structural versus Functional Testing
2.1.2 Static versus Dynamic Testing
2.1.3 Manual versus Automated Testing
2.2 Role of a Software Tester
2.2.1 Tasks of a Software Tester
2.2.2 Qualities of a Software Tester
2.3 Software Testing Axioms
2.4 Software Testing Terms and Definitions
2.5 Summary
2.6 Keywords
2.7 Self Assessment
2.8 Review Questions
2.9 Further Readings
Objectives
After studying this unit, you will be able to:
• Illustrate structural and functional testing strategies and techniques
• Explain static and dynamic testing
• Explain manual and automated means of testing
• Discuss the role of software tester
• State the axioms of software testing.
• List software testing terms and definition
Introduction
Testing is a vital part of any software development process. According to the IEEE definition, “Software
testing is the process of analyzing a software item to detect the differences between existing and
required conditions and to evaluate the features of the software item”. IEEE’s Guide to the Software
Engineering Body of Knowledge, SWEBOK, states that “Software testing is an activity that should be
done throughout the whole development process”.
An efficient and reliable software product can be built with high level of planning and by following a
structured development approach. Testers play a vital role in achieving high degree of efficiency in
software product development. Defining the test strategy helps in obtaining a consensus of goals and
objectives from the relevant stakeholders. It helps to manage expectations and to identify the types of
tests that need to be conducted at all levels. Testing strategies not only help to perform efficient testing,
LOVELY PROFESSIONAL UNIVERSITY 15