young call girls in Rajiv Chowk🔝 9953056974 🔝 Delhi escort Service
IT8076 - SOFTWARE TESTING
1. Software Testing
• The process of executing a program or
application with the intent of finding
software bugs (errors or other defects), and
verifying that the software product is fit for
use.
2. UNIT-1
INTRODUCTION
Testing as an Engineering Activity – Testing as a
Process – Testing axioms – Basic definitions –
Software Testing Principles – The Tester‟s Role
in a Software Development Organization –
Origins of Defects – Cost of defects – Defect
Classes – The Defect Repository and Test Design
– Defect Examples – Developer/Tester Support
of Developing a Defect Repository – Defect
Prevention strategies.
3. Unit-II
TEST CASE DESIGN
Test case Design Strategies – Using Black Box
Approach to Test Case Design – Random Testing –
Requirements based testing – Boundary Value
Analysis – Equivalence Class Partitioning – State-
based testing – Cause-effect graphing – Compatibility
testing – user documentation testing – domain testing
– Using White Box Approach to Test design – Test
Adequacy Criteria – static testing vs. structural testing
– code functional testing – Coverage and Control Flow
Graphs – Covering Code Logic – Paths – code
complexity testing – Additional White box testing
approaches- Evaluating Test Adequacy Criteria.
4. Unit-III
LEVELS OF TESTING
The need for Levels of Testing – Unit Test – Unit Test
Planning – Designing the Unit Tests – The Test Harness
– Running the Unit tests and Recording results –
Integration tests – Designing Integration Tests –
Integration Test Planning – Scenario testing – Defect
bash elimination System Testing – Acceptance testing –
Performance testing – Regression Testing –
Internationalization testing – Ad-hoc testing – Alpha,
Beta Tests – Testing OO systems – Usability and
Accessibility testing – Configuration testing –
Compatibility testing – Testing the documentation –
Website testing.
5. UNIT IV
TEST AMANAGEMENT
People and organizational issues in testing –
Organization structures for testing teams –
testing services – Test Planning – Test Plan
Components – Test Plan Attachments – Locating
Test Items – test management – test process –
Reporting Test Results – The role of three groups
in Test Planning and Policy Development –
Introducing the test specialist – Skills needed by a
test specialist – Building a Testing Group - The
Structure of Testing Group- The Technical Training
Program. .
6. UNIT-V
TEST AUTOMATION
Software test automation – skill needed for
automation – scope of automation – design
and architecture for automation –
requirements for a test tool – challenges in
automation – Test metrics and measurements
– project, progress and productivity metrics.
7. TEXT BOOKS:
1. Srinivasan Desikan and Gopalaswamy
Ramesh, “Software Testing – Principles and
Practices”, Pearson Education, 2006.
2. Ron Patton, “ Software Testing”, Second
Edition, Sams Publishing, Pearson Education,
2007.
8. REFERENCES:
1. Ilene Burnstein, “ Practical Software Testing”,
Springer International Edition, 2003.
2. Edward Kit,” Software Testing in the Real World –
Improving the Process”, Pearson Education, 1995.
3. Boris Beizer,” Software Testing Techniques” – 2nd
Edition, Van Nostrand Reinhold, New York, 1990.
4. Aditya P. Mathur, “Foundations of Software
Testing _ Fundamental Algorithms and
Techniques”, Dorling Kindersley (India) Pvt. Ltd.,
Pearson Education, 2008.
9. Software Testing Principles
Principle can be defined as
• A general or fundamental, law or assumption
• A rule or code of conduct
• The laws or facts of nature underlying the
working of an artificial device.
10. Principle 1
Testing is the process of exercising a software
component using a selected set of test cases, with the
intent of (i) revealing defects, and (ii) evaluating
quality.
• To prevent & eliminate defects
• Negative impact of s/w quality
• Execution-based activity
• s/w components- to represent any unit of s/w ranging
in size and complexity from an procedure or methods.
• Defects- negative impact on its functionality,
performance, reliability, security, and any other of its
quality attributes.
11. Principle 2
When the test objective is to detect defects, then a
good test case has a high probability of revealing
undetected defect(s).
• Provides a scientist approach to evaluate test case
design
• The effectiveness of the testing effort when the
objective is to detect defects.
• The hypothesis is related to the suspected occurrence
of specific types of defects.
• The goal for the test is to prove/disprove the
hypothesis, that is determine if the specific defect is
present/absent.
12. Principle 3
Test results should be inspected meticulously.
• Testers need to carefully inspect and interpret
test results.
• Several erroneous and costly scenarios
• Failure may be overlooked and test is pass status
when in reality the software has failed the test.
• Fail status- time & efforts may be spent on trying
to find the defects that not exist.
• A careful re-examination of the test results could
finally indicate that no failure has occurred.
13. Principle 4
A test case must contain the expected
output or result.
• Whether a defects has been revealed
• Pass/fail status for the test.
• The specification of test inputs and outputs
should be part of test design activities.
14. Principle 5
Test cases should be developed for both valid and
invalid input conditions.
• To provide with valid input
• Inputs may be incorrect
• Software users may have misunderstanding or lack of
information's about the nature of the inputs.
• To identify unexpected software behaviour.
• Invalid inputs also help developers and testers evaluate
the robustness of the s/w.
• It supports the need for independent test group.
15. Principle 6
The probability of the existence of additional
defects in a software component is proportional
to the number of defects already detected in that
component.
• A & B. A= 20, B=3.
• High degree of complexity and poorly designed.
• Developers and testers need to decide whether
to disregard the current version of the
component and work on redesign or plan to
expand additional testing resources.
16. Principle 7
Testing should be carried out by a group that
is independent of the development group.
• The requirement for an independent testing
group could be implemented as a completely
separate function in the organization.
• Software Quality Assurance Group.
• It is specialized part of the development group,
they need the capability to be objective.
17. Principle 8
Tests must be repeatable and reusable.
• To require recording of the exact condition of the
test, any special events that occurred, equipment
used and a careful accounting of the results.
• This information is valuable to the developers
when the code is returned for debugging so that
they can duplicate test conditions.
• It is also useful for tests that need to be repeated
after defect repair.
18. Principle 9
Testing should be planned.
• Test plans should be developed for each level of
testing and objectives for each should be
described in the association plan.
• Test planning activities should be carried out
throughout the software life cycle.
• It must be co-ordinated with project planning.
• The test manager & project manager must work
together to coordinate activities.
• Test risk must be evaluated.
19. Principle 10
Testing activities should be integrated into
the software life cycle.
• Test plan activities as supported by Principle
10.
• It should be integrated into the software life
cycle starting in the requirement analysis
phase.
20. Principle 11
Testing is a creative and challenging task.
1. Comprehensive knowledge of the s/w engineering
discipline.
2. Knowledge from both experience and education as to how
s/w is specified, designed and developed.
3. To manage many details.
4. Knowledge of fault types.
5. To reason like a scientist & hypotheses that relate to
presence of specific types of defects.
6. Educational, training and work related experience.
7. To create and document test cases. To design the test
cases the tester must select inputs often from a very wide
domain.
21. Principle 11
8. To design and record test procedure for running the
test.
9. To plan for testing & allocate the proper resources.
10. To execute the tests & is responsible for recoding
results.
11. To analyze the result status whether SF. It involves
understanding & tracking huge information.
12. To collect & analyze test related measurements.
13. To learn about tools & idea about advanced tools.
14. To work, cooperate and good relation with user.
15. Well educated & trained in specified area and update
their knowledge frequently.
22. Principles
Principle 1. Testing is the process of exercising a
software component using a selected set of
test cases, with the intent of (i) revealing
defects, and (ii) evaluating quality.
Principle 2. When the test objective is to detect
defects, then a good test case has a high
probability of revealing undetected defect(s).
23. Principle 3. Test results should be inspected
meticulously.
Principle 4. A test case must contain the
expected output or result.
Principle 5. Test cases should be developed for
both valid and invalid input conditions.
Principle 6. The probability of the existence of
additional defects in a software component is
proportional to the number of defects already
detected in that component.
24. Principle 7. Testing should be carried out by a
group that is independent of the development
group.
Principle 8. Tests must be repeatable and
reusable.
Principle 9. Testing should be planned.
Principle 10. Testing activities should be
integrated into the software life cycle.
Principle 11. Testing is a creative and
challenging task.