0% found this document useful (0 votes)
63 views

STQA Notes ch 1

Uploaded by

mahi224224
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
63 views

STQA Notes ch 1

Uploaded by

mahi224224
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 18

SOFTWARE TESTING & QUALITY ASSURANCE B.Tech.

CSE
PUNYASHLOK AHILYADEVI HOLKAR SOLAPUR UNIVERSITY, SOLAPUR

Final Year B.Tech. (COMPUTER SCIENCE & ENGINEERING)


SEMESTER - I
CS414B : Elective-II : SOFTWARE TESTING & QUALITY ASSURANCE

Teaching Scheme -Lectures: 3 Hours /Week, 3 Credits, Tutorial : 1 Hour/Week, 1 Credit

Examination Scheme - ESE – 70 Marks ISE – 30 Marks ICA – 25 Marks

COURSE OBJECTIVES

1) To learn the principles, techniques and tools of software testing in order to improve the quality of software
product.

2) To gain knowledge of the software testing process, various methods of testing, different levels of testing,
software quality concepts, assurance & standards

3) To learn generation and execution of test plan, cases & scripts.

4) To learn manual and automatic software testing & various kinds of testing tools.

5) To discover correctness, completeness and quality of software.

6) To recognize the importance of software testing in Software Development Life Cycle.

COURSE OUTCOMES

At the end of this course, students will be able to

1) Identify what a software bug is, how serious they can be, and why they occur.
2) Test software to meet quality objectives & requirements.
3) Apply testing skills to common testing tasks.
4) Perform the planning and documentation of test efforts.
5) Describe software quality concepts, assurance & standards.
6) Use testing tools to test software in order to improve test efficiency with automation.

Prof.Sagar Bhuite CSE Dept. BMIT,Solapur


SOFTWARE TESTING & QUALITY ASSURANCE B.Tech.CSE

Syllabus:
SECTION I

Unit 1: Fundamentals of Software Testing (8 Hrs)

Introduction, Basics of Software Testing, Approaches to Testing, Testing During Development

Life Cycle, Essential of Software Testing, Features of Testing, Misconceptions about Testing,

Principles of Software Testing, Test Policy, Strategy, Planning, Process, Challenges in Testing,

Test Team Approach, Methods, Defect Classification, Defect, Error, Mistake in Software,

Defect Life Cycle, Defect Management Process, Developing Test Strategy, Developing Testing

Methodologies, Testing Process, Attitude towards Testing, Test Methodologies

Unit 2: Methods of Testing (6 Hrs)

Software Verification and Validation, Black-Box and White-Box Testing, Static and Dynamic

Testing, Black-Box Testing Techniques-Equivalence Partitioning, Data Testing, State Testing,

Other Black Box Test Techniques. White-Box Testing Techniques-Data Coverage, Code

Coverage, Other White Box Test Techniques.

Unit-3: Levels of Testing (6 Hrs)

Levels of Testing, Proposal Testing, Requirement Testing, Design Testing, Code Review, Unit

Testing, Module Testing, Integration Testing, Big-Bang Testing, Sandwich Testing,

Unit-4: System Testing (6 Hrs)

GUI Testing, Compatibility Testing, Security Testing, Performance Testing, Volume Testing,

Stress Testing, Load Testing, Installation Testing, Regression Testing, Smoke Testing, Sanity

Testing, Ad hoc Testing, Usability Testing, Acceptance Testing-Alpha Testing, Beta Testing,

Gamma Testing.

Prof.Sagar Bhuite CSE Dept. BMIT,Solapur


SOFTWARE TESTING & QUALITY ASSURANCE B.Tech.CSE
SECTION II
Unit 5: Test Planning & Documentation (8 Hrs)
Test Planning-The goal of Test Planning, Test Planning Topics, Writing and Tracking Test

Cases-The Goal of Test Case Planning, Test Case Planning Overview, Test Case Organization

And Tracking, Reporting Bugs- Getting Your Bugs Fixed, Isolating and Reproducing Bugs

Unit 6: Quality Concepts & Software Quality Assurance (6 Hrs)


Quality Concepts-What is Quality? Software Quality, The Software Quality Dilemma,

Achieving Software Quality, Software Quality Assurance-Background Issues, Elements of

Software Quality Assurance, SQA Processes and Product Characteristics, SQA Tasks, Goals and

Metrics

Unit-7 Formal Approaches to SQA (06 Hrs)

Statistical SQA, Software Reliability, The ISO 9000 Quality Standards, CMM, The SQA Plan

Unit 8: Automated Testing and Testing Tools (8 Hrs)


Introduction, the Benefits of Automation and Tools, Test Tools, Software Test Automation,

Random Testing, Realities of Using Test Tools and Automation, Open Source Testing Tools,

Case Studies on Testing Tools-Selenium.

Internal Continuous Assessment (ICA) : Minimum 8-10 assignments on the above topics.

Text books:
1. Software Testing Principles, Techniques and Tools by M G Limaye, Published by Tata

McGraw-Hill Education Private Limited, Published 2009, ISBN (13): 978-0-07-013990-9,

ISBN (10): 0-07-013990-3 (Chapter 1 & 3)

2. Software Testing, Second Edition By: Ron Patton, Published by SAMS, ISBN-13: 978-

0672327988 ISBN-10: 0672327988 (Chapter 2, 4 & 6)

3. Software Engineering: A Practitioner's Approach by Roger S Pressman, 8th Edition,

Publisher McGraw Hill (Chapter 5)

Reference books:

1. Software Testing Principle and Practices By Ramesh Desikan, Gopalaswamy

Ramesh, Pearson Education, ISBN 978-81-7758-121-8

2. Software Testing Principles and Practices By Naresh Chauhan, Publisher OXFORD

UNIVERSITY PRESS-NEW DELHI, ISBN 0-19-806184-6

Prof.Sagar Bhuite CSE Dept. BMIT,Solapur


SOFTWARE TESTING & QUALITY ASSURANCE B.Tech.CSE
3. Beautiful Testing: Leading Professionals Reveal How They Improve Software By

Adam Goucher, Tim Riley, Publisher O’reilly

4. Foundations of Software Testing By Rex Black, Dorothy Graham, Erik Van

Veenendaal, Isabel Evans, Published by Cengage Learning India Pvt Ltd.

5. Lessons Learned in Software Testing by Cem Kaner , James Bach , Bret Pettichord,

Publisher Wiley

6. Testing Computer Software Cem Kaner, Jack Falk, Hung Q. Nguyen, Publisher

Wiley

7. Selenium Testing Tools Cookbook By Unmesh Gundecha Published by Packt, ISBN:

978-1- 84951-574-0 8. Dr. K.V.K.K. Prasad, “Software Testing Tools: Covering Win

Runner, Silk Test, Load Runner, JMeter and Test Director With Case Studies”,

Dreamtech Publications ISBN:10:81-7722-532-4

Reference tutorials:
1. Spoken Tutorials on Selenium Software Testing Framework at http://spokentutorial.

org/tutorial-search/?search_foss=Selenium&search_language=English

Prof.Sagar Bhuite CSE Dept. BMIT,Solapur


SOFTWARE TESTING & QUALITY ASSURANCE B.Tech.CSE

Unit 1: Fundamentals of Software Testing


Syllabus
1.1Introduction
1.2 Basics of Software Testing
1.3 Approaches to Testing
1.4 Testing During Development Life Cycle
1.5 Essential of Software Testing
1.6 Features of Testing
1.7 Misconceptions about Testing
1.8 Principles of Software Testing
1.9 Test Policy
1.10 Strategy
1.11Planning
1.12 Process
1.13 Challenges in Testing
1.14 Test Team Approach
1.15 Methods
1.16 Defect Classification, Defect, Error, Mistake in Software,
1.17 Defect Life Cycle, Defect Management Process
1.18 Developing Test Strategy, Developing Testing Methodologies, Testing Process
1.19 Attitude towards Testing, Test Methodologies,

1. Introduction: Software Testing


Exhaustively testing software is not feasible the number of possible input combinations is effectively
infinite

- The number of unique paths through the code is effectively infinite


- You might not live long enough to exhaustively test a non-trivial software system

We must do partial testing because we only have enough resources (time and money) to run relatively
few test cases

Partial testing can never prove the absence of defects if the system passes all your test cases, there
could still be defects; you just need more or better test cases to find them.

Effective testing lies in intelligently choosing the relatively few test cases that will actually be executed

–Test all requirements and features defined in the requirements spec. and functional spec.

–Focus on scenarios that users are likely to encounter in practice

–Test cases should not be redundant (i.e., each one should follow a different path through the code)

–Analyze the program’s design and code to find potential weak areas

–Analyze all points at which data enters the system and look for ways to attack it.

Prof.Sagar Bhuite CSE Dept. BMIT,Solapur


SOFTWARE TESTING & QUALITY ASSURANCE B.Tech.CSE

Approaches for test case design are generally divided into two broad categories: Black Box Testing and
White Box Testing

•Black Box testing the tester has limited knowledge of the inner workings of the item being tested

Test cases are based on the specification of the item's external behavior

•White Box Testing The tester has knowledge of the inner workings of the item being tested

Test cases are based on the specification of the item's external behavior AND knowledge of its internal
implementation.

Testing is unlike other software development activities because the goal is to break the software rather
than to create it

•Effective testing requires the assumption that you will find defects

•Effective testing requires that you want to find defects

•If you think you won't find defects, or you don't want to, you will have set up a self-fulfilling prophecy

•Testing by both developers and an independent testing group are essential They have different
perspectives and motivations

They do different kinds of tests (developer does white box, test team does black box), which tend to
discover different types of defects.

One goal of testing is to identify the most problematic modules Redesign may be needed if there is an
inherent design flaw

Or, replace buggy module with a third-party library/product.

How many defects should you expect to find? It depends on your development process

Most projects experience between 1 and 25 errors per 1000 LOC

Automation of test cases is essential to make frequent re-running of test cases feasible

•A lot of the interesting testing work is found in inventing and creating ways to automate test cases
(i.e., create programs whose purpose is to test other programs)

•Automation requires a lot of software design and implementation (sometimes called “Test
Engineering”)

•Some tests are difficult to automate and must be run manually

Prof.Sagar Bhuite CSE Dept. BMIT,Solapur


SOFTWARE TESTING & QUALITY ASSURANCE B.Tech.CSE
Purpose of Testing.

There could be various opinions & definitions. We follow the text & references for

Testing and methodologies related concepts.

Testing is verification against given specifications. For software, it is verification of

functionality of a software product by executing the software, for conformance to the

Given specifications.

Bug / defect / Fault: it is a deviation from the expected functionality. However, it is not

Always obvious to determine that an observation is a bug.

 Purpose of Testing
1. It is done to catch bugs.

Bugs arise due to imperfect communication among the members of the development

Team regarding specifications, design and low level functionality. Statistics show that

Around 3 bugs/100 programming statements exist.

Also, testing is to break the s/w and drive to the ultimate.

2. Productivity Related reasons

If insufficient effort (cost) is spent in QA (includes testing), the rejection ration will

Be high. Rework & recycling will be high and hence the net cost. (Usually the testing

& QA costs are 2% for a consumer product and are about 80% for critical software

Such as spaceship/aircraft/nuclear/defense/life saving medical software.

The biggest part of s/w cost is the cost of bugs and the corresponding rework.

Quality and productivity are almost indistinguishable for s/w.

3. Goals for testing:

Testing, as part of QA, should focus on bug prevention. The art of test design one

Of the best bug preventers have known. Test design and tests should provide clear

Diagnosis so that bugs can be easily corrected. If a bug is prevented, the

Corresponding rework is saved. (Rework includes bug reporting, debugging,

Prof.Sagar Bhuite CSE Dept. BMIT,Solapur


SOFTWARE TESTING & QUALITY ASSURANCE B.Tech.CSE
Corrections, retesting the corrections, re-distributions, re-installations etc.).

Test-design thinking (writing test specification from the requirement specifications

first and then writing the code) can discover and eliminate bugs at every stage of the

SDLC. To the extent that the testing fails to achieve its primary goal (bur

Prevention), testing must reach its secondary goal bug discovery.

Software Quality Assurance

The last pair of definitions is testing and quality assurance (sometimes shortened to QA).
These two terms are the ones most often used to describe either the group or the process that’s
Verifying and validating the software. In Chapter 20, “Software Quality Assurance,” you’ll
learn more about software quality assurance, but for now, consider these definitions:
• The goal of a software tester is to find bugs, find them as early as possible, and make
Sure they get fixed.
• A software quality assurance person’s main responsibility is to create and enforce standards
and methods to improve the development process and to prevent bugs from ever
Occurring.
Of course, there is overlap. Some testers will do a few QA tasks and some QA-errs will perform
A bit of testing. The two jobs and their tasks are intertwined. What’s important is that you know
what your primary job responsibilities are and communicate that information to the rest of the
Development team. Confusion among the team members about who’s testing and who’s not has
Caused lots of process pain in many projects. The purpose of SQA is to find and report defects AND
succeed in getting them fixed
What is a software defect?
Definition #1: There is a mismatch between the program and its requirements spec or functional spec
This definition is fine if a requirements specification exists and is complete and correct (not always true)

Definition #2: The program does not do what its end user reasonably expects it to do this definition
always applies, even when there's no specification.

The longer defects remain in the system, the more expensive they become The cost of a defect grows
dramatically the longer it remains in the system

What is the cost of a defect in the requirements specification if it’s found during requirements phase?

During implementation?

After product ships?

•SQA should be performed throughout the software development life cycle it’s not something you do
only at the end after everything's pretty much done.

The three primary SQA activities:

Prof.Sagar Bhuite CSE Dept. BMIT,Solapur


SOFTWARE TESTING & QUALITY ASSURANCE B.Tech.CSE
Technical Reviews

Software Testing

Formal Verification

2 Basics of Software Testing:

The concept of independent Testing did not prevail during the initial days of Software development. It
was believed that whatever the developers were doing was the best way of producing product & customer was
expected to use it as it is. If there were many problems reported by customer / user, they would be fixed by
developers, & the application would be given back to user. The primary responsibility of testing was with
customer/ user during production phase.

Glenford Myer introduced Software Testing as a separate phase in SDLC. According to him, Tester was
expected to test software with all possible combinations. The main intention was to create software which
would never fail in production. Tester was expected to have an attitude to break the software so that it would
be eventually corrected & would never fail during use. This approach separated debugging from testing &
independent testing community was created as a different phase of STLC.

1. Debugging oriented Testing:

During the initial phase, testing was considered as a part of development, developers were expected to
perform debugging on the application, which they were building. Tests were not document & were mainly
done in a heuristic way. Generally testing was completely positive testing to see whether the implementation
was working correctly or not.

2.Demonstration Oriented Testing:

This approach was basis of Glenford, Myers theory of s/w testing. As per this approach it was not
sufficient to only test the s/w positively but users must also be protected from any conceivable failure of
application. The tester’s responsibility changed from proving that s/w works under normal conditions to
proving that s/w does not fail at some abnormal instances.

Often the testers were too imaginative in breaking the s/w, defects for which there were no feasibility
of happening were reported as defects which was quite frusteting to s/w developers. Testers as considered as
demons and testing was considered as hurdle to be past before delivering application to costumer.

3. Evaluation oriented testing

It is executed at many places were product as well as process of development is evaluated. It


corresponds to testing process definition were s/w is evaluated. It corresponds to testing process definition
were s/w is evaluated against some fixed parameters derived from quality factors. This approach also refers to
level of confidence given to customer that application will work as experiment by user

4. Prevention oriented testing

Prof.Sagar Bhuite CSE Dept. BMIT,Solapur


SOFTWARE TESTING & QUALITY ASSURANCE B.Tech.CSE
It is performed in highly matured organizations, testing is considered as prevention activities were
process problems are used to improve it so that defect free product can be produced. Every defect found in
testing is considered as process lacunae and efforts are initiated to improve process of development which
helps in reducing cost by focusing right product at first time.

Approaches to testing

There are many approaches to s/w testing defined by experts in s/w quality and testing. The
approaches may differ significantly as per customer requirements, type of system being developed as well as
management thinking about s/w development life cycle followed by type of project and customer with
maturity of development team.

Few of them are

1) Big bang approach of testing.

2) Total quality management approach

1) Big bang approach of testing.

2) Total quality management approach

Testing during development cycle

It can be considered simply as s/w testing life cycle (STLC). With following phases

1) Requirement testing
2) Design testing
3) Code testing
4) Test scenario and test case
5) Defect and report generation

Essentials of s/w testing

S/w testing is disciplined approach it execute s/w and finds defects in it. The intention of s/w testing is to
find all possible failures, so that eventually these are eliminated and a good product is given to the
customer. It works on the principle that no s/w is defect free but less risk s/w is better and acceptable to the
users.

The tester’s job is to find out defect so that it will be eventually fixed by developers before handovering
product to the user. Completion of testing must yield number of defects which can be analyzed to find the
weaker areas in process. s/w testing is viewed as exercise of doing a SWOT analysis of s/w product were we
can build s/w on basis of strength, weakness , strong process present in these areas supporting
development of good product . We can always rely on this process and try to deploy then in other areas

Weaknesses: - The area of s/w was requirement compliance is on verge of failure may represent week
areas. It may not be failure of that movement but, it may be on boundary condition of compliance and if

Prof.Sagar Bhuite CSE Dept. BMIT,Solapur


SOFTWARE TESTING & QUALITY ASSURANCE B.Tech.CSE
something goes wrong in production environment. It will result into defect and failure of product. An
organization need to analyses such processes and defines root causes of problems. It may be attributed to
some aspects in organization such as training, communication etc.

Opportunities: - Some areas of s/w which satisfy requirement as defined by customer or implied
requirements but with enough space available for improving it further. This improvement can lead to
customer delight. These improvements represent ability of developing organization to help the customer
and give competitive advantages. It decides capability of developing organization to provide expert advice
and help to customer for doing something better.

Threats: - Threats are the problems or defects with the s/w which result into failures. They represent
possible loss.

IMPORTANT FEATURES OF TESTING PROCESSES:-

It is characterized by following features

1) Testing is a destructive process, but it is constructive destructive.

2) Testing needs sadistic approach with a consideration that there is a defect

3) If the test foes not detect a defect in present system, it is an unsuccessful test.

4) A test that detects a defect is valuable investment for valuable development and it helps to improve
a product.

5) It is risky to develop s/w and not to test it before delivery.

MISCONSEPTION ABOUT TESTING:-

At many places s/w testing is termed quality assurance activity. In reality testing is quality control
activity similar many misconceptions about s/w testing are listed below.

1) No special skill is required for testing.

2) Tester can test quality of product at the end of development process.

3) Defects found in testing are blamed on developers.

4) Defects found by customer are blamed on testers.

5)Testing is not a formality to be completed at end of development cycle

6) Successful tester is not one who appreciates defects

7) If defects are not found it is failure of tester’s activity.

PRINCIPLES OF S/W TESTING:-

Testing needs to be performed according to process defined for it. It needs skilled and trained people
to break the application and demonstrate problems in s/w product, some key points in testing are (principles)

1) Programmers, team must avoid testing their own work products.

Prof.Sagar Bhuite CSE Dept. BMIT,Solapur


SOFTWARE TESTING & QUALITY ASSURANCE B.Tech.CSE
2) Thoroughly inspect results of each test to find possible improvements

3) Initiate actions for correction, corrective actions and preventive actions.

TEST STRATEGY OR APPROACH:-

Test policy defines the action part of test policy. It defines the ways and means to achieve test policy.

There is single test policy at organization level for product organizations, while test strategy may differ
from product to product, customer to customer and time to time.

Ex. 1) Definitation of coverage like requirement coverage or functional coverage define for particular
product, project and customer

Level of testing starting from requirement and going up to acceptance phase.

How much testing would be done manually and what can be automated, number of developers to
tester

TEST PLANNING:-

It is the first activity of test team. If one does not plan for testing then he/she is planning for failures.
Test planes are intended to plan for testing throughout testing development life cycle. Test plans are defined in
framework created by test strategy and established by test policy.

Test planes are made for execution which involves various stages of s/w testing associated with s/w
development process. Test planes should be realistic and talk about limitations, risk and assumptions about
testing

CHALLENGES IN TESTING:-

Testing is challenging job, major challenges faced by team are as follows.


1) Requirements are not clear, complete, consistent and testable.
2) Requirements may be wrongly documented and understood by business analyst and system
analyst.
3) Code logic may be difficult to capture.
4) Error handling may be difficult to capture.
TEST TEAM APPROACH:-
Type of organization, product define a test team and structure. There are following approaches
of s/w testing team.

1) Location of test team in organization.

2) Independent test team

3) Test team reporting to developing manager

4) Developers becoming tester

5) Domain experts doing s/w testing.

Methods:-

Prof.Sagar Bhuite CSE Dept. BMIT,Solapur


SOFTWARE TESTING & QUALITY ASSURANCE B.Tech.CSE
Methods applied for testing are defined at organization levels. They are generic in nature and hence
need customization. They are customizing into test plan and any tailoring required to soot specific product
developed. Management directives establish methods applied for testing which includes what part will be
tested, not tested, how it will be tested? Which tool will be used for testing, defect tracking mechanism,
communication etc.

DEVELOPING TEST STRATOGY:-

Process of developing test strategy goes through following stages


1) select and rank test factors for given applications
2) Identify system development phases and related test factors
3) Identify phases in which risk of not meeting tests factor need to be addressed.
DEVELOPING TESTING METHODOLOGH (TEST PLAN):-
Developing test tactics is the job of project level test manager, test lead. Designing and defining of test
methodology may take following route

1) Acquire and study test strategy as defined earlier.

2) Determine the type of development project being executed.

3) Identify tactical risks related to development (structural risk, technical risk, size risk).

1.16 ) TESTING PROCESS:-

Testing process made of many milestones. Testers need to achieve them one by one. Following are few
milestones.

1) defining test policy

2) Defining test strategy

3) Establishing testing objectives to be achieved

4) Designing test scenerio and test cases

5) Writing/reviewing test cases

6) Defining test data

7) Creation of test bed

8) Executing test cases

9) Test result analysis

10) performing retesting, regression testing when defects are resolved by development team

11) Root cause analysis and corrective, preventive analysis.

TEST METHODOLOGIES/APPROACHES:-

Two major discipline in testing are

Prof.Sagar Bhuite CSE Dept. BMIT,Solapur


SOFTWARE TESTING & QUALITY ASSURANCE B.Tech.CSE
a) White box testing b) Black box testing c) Grey box testing

SKILLS REQUIRED BY TESTER:-

Testing need a disciplined approach. A tester is the person interested by an organization to work as
devils agent. He/ she are a person working for client finding defects in process and the product.

The main purpose of testing is to demonstrate the defect are present and point towards weaker areas
in s/w as well as process, so tester must have following skills.

A) General skills:-

1) Written and verbal presentation skill

2) effective listening skill

3) Facilitation skill

B) Technical skill

1) Good knowledge about s/w development life cycle

2) Concepts of testing

3) Levels of testing

4) Techniques for validation and verification.

5) Selection and use of testing tools.

6) Knowledge of testing standards.

7) Risk assessment and management

8) Developing test plan.

What Skills Does a Tester Need to Succeed?

• Communications Skills – persuade, influence, educate managers, developers, customers

• Interpersonal Skills – remain sensitive and constructive in complex, political, stressful situations

• Creative, Intuitive, Critical Thinking Skills – understanding the possibilities of the product and how it can
fail

DEFECT LIFE CYCLE:

What is Defect?

A defect is a variance from a desired product attribute.

Two categories of defects are

Prof.Sagar Bhuite CSE Dept. BMIT,Solapur


SOFTWARE TESTING & QUALITY ASSURANCE B.Tech.CSE
 Variance from product specifications
 Variance from Customer/User expectations

1. Failure

Incorrect or unexpected output

Symptom of a fault

2. Fault

Invalid execution state

Symptom of an error

May or may not produce a failure

3. Error

Defect or anomaly in source code

Commonly referred to as a “bug”

May or may not produce a fault

Defects may be injected at any time in the lifecycle

A defect is anything that necessitates a change in the code

Testing Development

Defect Open

New Assigned Rejected

Fixed
Ready for Deferred
Closed Retest

Re-Open

Defect will be tested in


next Run

Prof.Sagar Bhuite CSE Dept. BMIT,Solapur


SOFTWARE TESTING & QUALITY ASSURANCE B.Tech.CSE
The different states of a bug can be summarized as follows:

1.New
2.Open
3.Assign
4.Fixed
5. Ready for Re-Test
6.Closed
7. Re-open
8. Rejected
9. Deferred
1. New: When the bug is posted for the first time, the status of the Bug will be “NEW”.

2. Open: After the tester has posted a bug, the technical lead approves it, if the bug is genuine and
changes the state to “OPEN”.
3. Assign: The Technical lead assigns the bug to respective developer, and changes the status to
“ASSIGN”.
4. Fixed: Responsible Developer fixes the bug.
5. Ready for Re-Test: Once the developer fixes the bug, the modified build is sent to the testing team.
The corresponding Test Lead changes the status to “Ready for Re-Test”
6. Closed: During Re-Testing, if the Bug is fixed properly, then the Tester will change the status to
Closed.
7. Reopened: During Re-Testing, if the Bug is not fixed properly, then the Tester will change the status
to Re-Opened, and sends it back to the corresponding developer/development team
8. Rejected: If the Bug is not a genuine one, then the developer changes the Status of the Bug to
“Rejected”.
9. Deferred: When the bug does not stand importance to this particular release and it can be fixed in
the later releases, then the developers will change the status to “Deferred”.

Defect categories

Wrong: The specifications have been implemented incorrectly.

Missing: A specified requirement is not in the built product.

Extra: A requirement incorporated into the product that was not specified.

The Tester’s Attitude:

People with different attitudes see things differently. Here is my favorite example: When 3 friends – a
carpenter, a painter, and a biologist visited a forest and shared their observations, they found out that:

– The carpenter saw logs (firewood).

– The painter saw landscape (scenery).

Prof.Sagar Bhuite CSE Dept. BMIT,Solapur


SOFTWARE TESTING & QUALITY ASSURANCE B.Tech.CSE
– The biologist saw material for an article.

Let’s apply this principle to software:

– For the user, it’s an instrument to solve specific tasks or to satisfy a need (e.g., to transfer
money or to read the news)

– For the PM, it’s a way to bring to life the ideas imprinted in the specs.

– For the programmer, it’s a beloved baby.

– For the tester, it’s a shelter for bugs.

Brain Positioning

The expression, “Software has bugs,” is not a joke or an exaggeration; it’s the Universal Cosmic Law.
So, let’s open our hearts to that Law! Let’s have an unquestionable belief that:

– It’s the very nature of software to be buggy and unreliable

– If software seems to work, it’s not normal – it means that something is wrong

We’ve all heard these words of wisdom: “Ask and you shall receive.” As testers, we “ask” for bugs:

– By not trusting software

– By searching for bugs

The less we trust software, the more bugs we find. The more bugs we find, the less we trust
software. Nice cycle!

The lack of trust towards software is connected with another tester’s virtue: destructive thinking! We
are not silent observers of this buggy substance called “software”; we actively find ways to demonstrate that
the software is breakable. And what is the best way to show that the software is breakable? By finding bugs!

Prof.Sagar Bhuite CSE Dept. BMIT,Solapur


SOFTWARE TESTING & QUALITY ASSURANCE B.Tech.CSE
Theory Question Bank

Unit 1: Fundamentals of Software Testing

1. Explain Concept of Software Testing


2. Discuss Basics of Software Testing
3. Discuss Approaches to Testing
4. Explain Testing During Development Life Cycle( STLC)
5. Discuss or what are the Essential of Software Testing
6. Discuss or what are the Features of Testing
7. Discuss or what are the Misconceptions About Testing
8. Explain Principles of Software Testing
9. Discuss Test Policy, Strategy, Planning, Process
10. Discuss or what are the Challenges in Testing
11. Explain Test Team Approach
12. Discuss Defect Classification, Defect, Error
13. Discuss or what are the Mistake in Software
14. Write note on Defect Life Cycle
15. Explain Defect Management Process
16. Explain Testing Process,
17. Discuss Attitude towards Testing
18. Discuss or what are the Skills Required by Tester.

Unit 2: Methods of Testing

19. Explain or Discuss Software Verification and Validation (Difference between)


20. Explain or Discuss Black-Box and White-Box Testing (Difference between)
21. Explain or Discuss Static and Dynamic Testing (Difference between)
22. Write note on Black-Box Testing Techniques-Equivalence Partitioning, Data Testing, State Testing, Other Black Box
Test Techniques.
23. Write note on White-Box Testing Techniques-Data Coverage, Code Coverage, Other White Box Test Techniques.
24. Explain Data Testing
25. Explain State Testing
26. Explain Data Coverage Testing
27. Explain Code Coverage Testing

Prof.Sagar Bhuite CSE Dept. BMIT,Solapur

You might also like