Chapter 2 - Fundamentals of Testing Part 2 (v3)
Chapter 2 - Fundamentals of Testing Part 2 (v3)
(ITS 64704)
Fundamentals of Testing
(Part 2)
Terms and Motivation
Topics
Principles of Testing
Psychology of Testing
Ethics of Testing
What is testing?
SW Development Model:
• examines the consistency of the products being
developed with products developed in previous phases.
Validate Validate
Verify
Verify
General V-Model
Test Process
5 Stages of
Analysis & Design
Fundamental Test Process
Implementation & Execution
Implementation &
Execution
* Test schedule and test strategy are to be recorded in the test plan
Planning & Control
Implementation &
Execution
Implementation &
Execution
Analysis
Evaluating Exit
Design
Criteria
• Review the test and (e.g
basis • Design and prioritize
requirementsreporting
or design specs, combinations of test data,
quality risks, n/w architecture, actions and expected results
Test closure
SRS, FRS etc) activities • Identify the test data needed
• Identify and prioritize test for test conditions and cases
conditions, test requirements, • Design test environment
objectives, required test data • Identify infrastructure, tools
based on analysis of test items
• Evaluate feasibility of the
requirements and system
Planning & Control
Implementation &
Execution
Implementation
Evaluating Exit
Execution
• Develop, implement
Criteria and and • Execute test case (manual or
prioritize test cases, create
reporting automated)
data, write procedures (steps) • Log test results, version of
Test closure
Create test scripts software under test, test tools
• activities
• Organize test suites and and the testware (test log)
sequences of test procedures • Compare actual and expected
• Verify the test environment result
• Report and analyze incidents
• Repeat corrected and/or
updated test
• Run confirmation and/or
regression test
Stage 4 & 5
Analysis & Design
Implementation &
Execution
Exit &Evaluating
ReportingExit
Closure
Criteria
• Check test logs and the
against • Confirm test deliverables, final
exit criteria inreporting
the test plan resolutions or deferral of bug
• Assess if more tests are
Test closure
reports, and the acceptance
needed or if the exit criteria
activities
of the system
specified should be changed • Finalize, archive the testware,
• Write a test summary report test environment and test
for stakeholders infrastructure
• Deliver testware to the
maintenance organization
• Perform a review to capture
improvements for future
releases, projects, test
process
Test Reporting
Test Reporting
Terms and Motivation
Topics
Principles of Testing
Psychology of Testing
Ethics of Testing
Test cases for verification of specified result and of test object delivered results and
reactions
Test cases for verification of reactions of the test object for invalid and unexpected inputs
or constraint
Eg: module– registration
no exception handling
system, specified
expect module registered successfully in the system
• Staff who have been with the company for more than 3 years will receive 50% of the
monthly salary as Christmas bonus.
• Staff who have been with the company for more than 5 years will receive 75%.
• Staff who have been with the company for more than 8 years will receive 100% of
their monthly salary.
You can setup the following relationship between allowance of the bonus and
the time working for the company.
• Staff who have been with the company for more than 3 years will receive 50% of the monthly
salary as Christmas bonus.
• Staff who have been with the company for more than 5 years will receive 75%.
• Staff who have been with the company for more than 8 years will receive 100% of their monthly
salary.
Remarks:
• No pre- and post-conditions or constraints are considered
• The test cases were not derived systematically
• Only positive tests with expected results
Test Specification :
High level and specific test cases
(positive tests)
High level (logical) Test Case 1 2 3 4
Input value x X <=3 3<x<=5 5<x<=8 X>8
(years with the company)
Expected result 0 50 75 100
(bonus in %)
Remarks:
• No pre- and post-conditions or constraints are considered
• The test cases were not derived systematically
• Only positive tests with expected results
Test Specification :
High level and specific test cases
(negative tests)
High level (logical) Test Case 1 2 3 4
Input value x X <=3 3<x<=5 5<x<=8 X>8
(years with the company)
Expected result Invalid input. Invalid input. Invalid input. Invalid input.
Bonus can’t be Bonus can’t Bonus can’t be Bonus can’t be
(bonus in %) calculated be calculated calculated calculated
Remarks:
• No pre- and post-conditions or constraints are considered
• The test cases were not derived systematically
• Negative tests with expected results
Test Specification :
High level and specific test cases
(negative tests)
High level (logical) Test Case 1 2 3 4
Input value x X <=3 3<x<=5 5<x<=8 X>8
(years with the company)
Expected result Invalid input. Invalid input. Invalid input. Invalid input.
Bonus can’t be Bonus can’t Bonus can’t be Bonus can’t be
(bonus in %) calculated be calculated calculated calculated
Remarks:
• No pre- and post-conditions or constraints are considered
• The test cases were not derived systematically
• Negative tests with expected results
Expected Results and Test Oracle
After each executed test case, it must be decided whether there is a failure or
not
Compare the actual result vs expected result
The expected behavior of the test object has to be determined in advance for
each test case
The tester must obtain this information from appropriate sources when
specifying a test case
Topics
Principles of Testing
Psychology of Testing
Ethics of Testing
Good tester attributes
Professional
Curiosity A critical eye
pessimism
Good
communication
Attention to detail
skills (speaker and
listener)
Defining Tester Skills
Reading
• Specifications, e-mails, test cases, etc
Writing
• Test cases, bug reports, test documentation, etc
Principles of Testing
Psychology of Testing
Ethics of Testing
Tester Ethics
CLIENT &
PUBLIC PRODUCT
EMPLOYER
COLLEAGUES SELF
Tester Ethics
PUBLIC
• Certified software tester shall act consistently with the public interest
PRODUCT
• Certified software testers shall ensure that the deliverables they provide
(on the products and systems they test) meet the highest professional
standards possible.
JUDGEMENT
• Certified software testers shall maintain integrity and independence in
their professional judgment
Tester Ethics
MANAGEMENT
• Certified software test managers and leaders shall subscribe to and
promote an ethical approach to the management of software testing.
PROFESSION
• Certified software testers shall advance the integrity and reputation of
the profession consistent with the public interest
COLLEAGUES
• Certified software testers shall be fair to and supportive of their
colleagues, and promote cooperation with software developers.
SELF
• Certified software testers shall participate in lifelong learning regarding
the practise of their profession and shall promote an ethical approach to
the practice of the profession.
Effective vs Efficiency testing