CTFL-Chapter 2-Fundamentals of Testing v2.2.0
CTFL-Chapter 2-Fundamentals of Testing v2.2.0
CTFL-Chapter 2-Fundamentals of Testing v2.2.0
Chapter
Chapter 2
2 Page 1
Certified Tester
Fundamentals of Testing
Software Testing Foundations Certified Tester
MSTB-GTB
2017
Version 2.2.0
© Copyright MSTB-GTB
V 2.2.0 / 2017
Disclaimer
• These slides are published under CC BY-NC-SA 4.0. This means besides
other things that they can be freely changed and used for non-commercial
purposes. By that we like to reach maximum flexibility for the CTFL
teachers at universities, colleges, and alike. However, we also have to
take into account the interests of the commercial trainings providers,
whose explicit request is not to have these slides freely available in the
Internet.
• Hence, we ask you to make use of the slides only within your lecture
series and exercises on CTFL related matter. Please also advise the
students that a free distribution of the slides would risk the GTB and/or
MSTB cooperation with universities, colleges, etc. – at least wrt. the
exchange of the slides.
• CC BY-NC-SA 4.0: https://creativecommons.org/licenses/by-nc-sa/4.0/
© Copyright MSTB-GTB
Chapter 2 Page 2 Software Testing Foundations Certified Tester
V 2.2.0 / 2017
3 After this lecture, you should….
• Be able to use examples to describe the way in which a software defect can cause harm to
people, to the environment, or to a company;
• Know what is meant by the terms deficiency, defect, failure, defect condition / defect and error
and explain this with examples and compare;
• Be able to distinguish between the cause of a defect and its effects;
• Derive by examples why testing is necessary;
• Be able to describe why testing is part of quality assurance and give examples of how testing
contributes to a higher quality;
• Know the quality characteristic according to ISO 9126;
• Recall the general objectives and principles of testing;
• Differentiate between testing and debugging;
• Know how the fundamental test process looks like;
• Describe how expected values are calculated during testing;
• Know and characterize the psychological problems during the testing;
• Differentiate between the different mindset of a tester and a developer;
• Know the code of ethics of a software tester.
© Copyright MSTB-GTB
Chapter 2 Page 3 Software Testing Foundations Certified Tester
V 2.2.0 / 2017
Learning Objectives for Fundamentals of Testing
3
3 (according to the Certified Tester Foundation Level Syllabus, Version 2011)
– LO-1.1.2 Distinguish between the root cause of a defect and its effects (K2)
– LO-1.1.4 Describe why testing is part of quality assurance and give examples of how
testing contributes to higher quality (K2)
– LO-1.1.5 Explain and compare the terms error, defect, failure and the
corresponding terms mistake and bug, using examples (K2)
– LO-1.2.2 Provide examples for the objectives of testing in different phases of the
software life cycle (K2)
© Copyright MSTB-GTB
Chapter 2 Page 4 Software Testing Foundations Certified Tester
V 2.2.0 / 2017
Learning Objectives for Fundamentals of Testing
3
3 (according to the Certified Tester Foundation Level Syllabus, Version 2011)
© Copyright MSTB-GTB
Chapter 2 Page 5 Software Testing Foundations Certified Tester
V 2.2.0 / 2017
2
Chapter
Fundamentals
of Testing
} Terms and Motivation
Principles of Testingda
Fundamental Test Process Test Process
Test Cases, Expected Results and Test Oracles
Psychology of Testing
Ethics of Testing
© Copyright MSTB-GTB
Chapter 2 Page 6 Software Testing Foundations Certified Tester
V 2.2.0 / 2017
In General: What is a Defect or a Deficiency?
© Copyright MSTB-GTB
Chapter 2 Page 7 Software Testing Foundations Certified Tester
V 2.2.0 / 2017
Connection:
Error - Defect - Failure
Example:
A programmer commits
an error by re-using a Error
a piece of software which is
not intended in the context
of the current project
(the Ariane 5 satellite
launching rocket)
ISTQB Glossary:
Error: Human action that produces an incorrect result [IEEE 610].
© Copyright MSTB-GTB
Chapter 2 Page 8 Software Testing Foundations Certified Tester
V 2.2.0 / 2017
Error – Other Definitions
Other defintions:
1. Human action (of the developer) that
produces an error condition in the software
2. Human action (of the user) that produces
an unwanted result (failure) as a
consequence (misoperation)
3. Unknowingly, inadvertently or intentionally
performed act, or omission which leads under given
circumstances (task, environment) to an impairment of the
required function of a product
© Copyright MSTB-GTB
Chapter 2 Page 9 Software Testing Foundations Certified Tester
V 2.2.0 / 2017
Connection:
Error - Defect - Failure
An error made by a person
Defect
(e.g. a developer) can result
in a defect in the sofware.
ISTQB Glossary:
Defect: A flaw in a component or system that can cause the component
or system to fail to perform its required function, e.g., an incorrect statement or
data definition A(the
defect, if encountered
full definition during
follows execution,
on page 12) may cause a
failure of the component or system.
© Copyright MSTB-GTB
Chapter 2 Page 10 Software Testing Foundations Certified Tester
V 2.2.0 / 2017
Connection: Failure
Error - Defect - Failure
Example:
The Ariane 5 Boom
rocket crashes
on its first in a program
mission.
Cost ~ $7 billion
which appears
ISTQB Glossary:
Deviation of the component or
system from its expected delivery,
service or result [Fenton].
© Copyright MSTB-GTB
Chapter 2 Page 11 Software Testing Foundations Certified Tester
V 2.2.0 / 2017
Defect – Failure
Additional comments
• Defect (full definition from ISTQB glossary): A flaw in a
component or system that can cause the component or system to
fail to perform its required function, e.g., an incorrect statement or
data definition. A defect, if encountered during execution, may
cause a failure of the component or system.
• Defect masking: An occurrence in which one defect prevents the
detection of another [IEEE 610]
• A failure
– can also be called a “malfunction” or an “external defect”
– can also (but rarely) be caused by cosmic radiation, electro-
magnetic fields or hardware failure. Such failures can cause
slow execution, incorrect output or the termination of execution.
• Debugging is the development activity that finds, analyzes and
removes the cause of the failure.
© Copyright MSTB-GTB
Chapter 2 Page 12 Software Testing Foundations Certified Tester
V 2.2.0 / 2017
Testing – Definition and Goals
The process consisting of all life cycle activities, both static and
dynamic, concerned with planning, preparation and evaluation of
software products and related work products to
– determine that they satisfy specified requirements
– demonstrate that they are fit for purpose
– detect defects
Source:
ISTQB Glossary
© Copyright MSTB-GTB
Chapter 2 Page 13 Software Testing Foundations Certified Tester
V 2.2.0 / 2017
Validation and Verification - Definitions
Validation
Verification
© Copyright MSTB-GTB
Chapter 2 Page 14 Software Testing Foundations Certified Tester
V 2.2.0 / 2017
What is Software Quality?
© Copyright MSTB-GTB
Chapter 2 Page 15 Software Testing Foundations Certified Tester
V 2.2.0 / 2017
Software Quality according to ISO/IEC 9126 (1/2)
Software Quality
External and
Quality in Use
Internal Quality
© Copyright MSTB-GTB
Chapter 2 Page 16 Software Testing Foundations Certified Tester
V 2.2.0 / 2017
Software Quality according to ISO/IEC 9126 (2/2)
Software Quality
External and
Quality in Use
Internal Quality
Source:
ISO/IEC 9126: Evaluation of software products,
quality characteristics and guidance on usage
© Copyright MSTB-GTB
Chapter 2 Page 17 Software Testing Foundations Certified Tester
V 2.2.0 / 2017
External Quality Attribute: Functionality (1/2)
Suitability
The capability of the software product to provide an appropriate set of
functions for specified tasks and user objectives [ISO 9126].
Accuracy
The capability of the software product to provide the right or agreed results or
effects with the needed degree of precision [ISO 9126].
© Copyright MSTB-GTB
Chapter 2 Page 18 Software Testing Foundations Certified Tester
V 2.2.0 / 2017
External Quality Attribute: Functionality (2/2)
Interoperability
The capability of the software to interact with one or more specified
components or systems [ISO 9126].
(Data) Security
Attributes of software that bear on its ability to prevent unauthorised access,
whether accidental or deliberate, to programs and data [ISO 9126].
Compliance
Attributes of the software which demonstrate that the software fulfills
application-specific standards or agreements or statutory directives or similar
regulations [ISO 9126].
Note: this also applies to all other quality attributes (e.g. reliability)
© Copyright MSTB-GTB
Chapter 2 Page 19 Software Testing Foundations Certified Tester
V 2.2.0 / 2017
External Quality Attribute: Reliability
Attributes that relate to the ability of the software to maintain a specified level of
performance under given conditions and for a specified time period.
Maturity
The capability of the software product to avoid failure as a result of defects in the
software [ISO 9126].
Fault tolerance
The capability of the software product to maintain a specified level of performance
in cases of software faults (defects) or of infringement of its specified interface
[ISO 9126].
Recoverability
The capability of the software product to re-establish a specified level of
performance and recover the data directly affected in case of failure [ISO 9126].
© Copyright MSTB-GTB
Chapter 2 Page 20 Software Testing Foundations Certified Tester
V 2.2.0 / 2017
External Quality Attribute Usability
Attributes that relate to the effort required to use, and on the individual
assessment of such use by a specific or implied group of users.
Understandability
The capability of the software product to enable the user to understand whether
the software is suitable, and how it can be used for particular tasks and conditions
of use [ISO 9126].
Learnability
The capability of the software product to enable the user to learn its application
[ISO 9126].
Operability
The capability of the software product to enable the user to operate and control
it [ISO 9126].
© Copyright MSTB-GTB
Chapter 2 Page 21 Software Testing Foundations Certified Tester
V 2.2.0 / 2017
External Quality Attribute: Efficiency
Attributes that relate to the relationship between the performance levels of the
software and the amount of equipment used under specified conditions.
Time behaviour
The degree to which a system or component accomplishes its designated
functions within given constraints regarding processing time and throughput
rate [IEEE 610].
Resource utilization
The capability of the software product to use appropriate amounts and types
of resources, for example the amounts of main and secondary memory used
by the program and the sizes of required temporary or overflow files, when
the software performs its function under stated conditions [ISO 9126].
© Copyright MSTB-GTB
Chapter 2 Page 22 Software Testing Foundations Certified Tester
V 2.2.0 / 2017
Internal Quality Attribute: Maintainability (1/2)
Attributes that relate to the effort that is necessary to carry out software
changes.
Analyzability
The capability of the software product to be diagnosed for deficiencies or
causes of failures in the software, or for the parts to be modified to be
identified [ISO 9126].
Changeability
The capability of the software product to enable specified modifications to be
implemented [ISO 9126].
© Copyright MSTB-GTB
Chapter 2 Page 23 Software Testing Foundations Certified Tester
V 2.2.0 / 2017
Internal Quality Attribute: Maintainability (2/2)
Stability
The capability of the software product to avoid unexpected effects from
modifications in the software [ISO 9126].
Testability
The capability of the software product to enable modified software to be
tested [ISO 9126].
© Copyright MSTB-GTB
Chapter 2 Page 24 Software Testing Foundations Certified Tester
V 2.2.0 / 2017
Internal Quality Attribute: Portability (1/2)
Adaptability
The capability of the software product to be adapted for different specified
environments without applying actions or means other than those provided for
this purpose for the software considered [ISO 9126].
Installability
The capability of the software product to be installed in a specified
environment [ISO 9126].
© Copyright MSTB-GTB
Chapter 2 Page 25 Software Testing Foundations Certified Tester
V 2.2.0 / 2017
Internal Quality Attribute: Portability (2/2)
Co-Existence
• The capability of the software product to co-exist with other
independent software in a common environment sharing common
resources [ISO 9126].
Replaceability
• The capability of the software product to be used in place of
another specified software product for the same purpose in the
same environment [ISO 9126].
© Copyright MSTB-GTB
Chapter 2 Page 26 Software Testing Foundations Certified Tester
V 2.2.0 / 2017
Quality Requirements
• Set priorities
– In close consultation with clients and users.
– Quality requirements (with the exception of “functionality”) are
part of the non-functional requirements in the specifications.
© Copyright MSTB-GTB
Chapter 2 Page 27 Software Testing Foundations Certified Tester
V 2.2.0 / 2017
Testing and Quality
© Copyright MSTB-GTB
Chapter 2 Page 28 Software Testing Foundations Certified Tester
V 2.2.0 / 2017
Quality Assurance - QA
Quality Assurance
Analytic QA Constructive QA
Norms, standards,
project management,
Artefacts Processes software techniques,
Audits exchange of experiences,
training
Software, Documentation, ...
Software, etc.
etc.
Dynamic
Static Testing:
Testing:
Reviews,
White-Box,
Static Analysis
Black-Box
© Copyright MSTB-GTB
Chapter 2 Page 29 Software Testing Foundations Certified Tester
V 2.2.0 / 2017
Software Quality according to ISO 25010
ISO 25010
Functional Performance
Reliability Usability Security Compatibility Portability Maintain-ability
suitability Efficiency
Learnability
Appropriateness
Functional Confidentiality Modularity
Maturity Tecognizability
completeness Time behavior
Integrity Installability Reusability
Availability Operability Co-Existence
Functional Resource
Non-repudiation Replaceability Analyzability
correctness Recoverability User error Interoperability utilization
protection Accountability Adaptability Modifiability
Functional Fault tolerance Capacity
appropriateness User interface Authenticity Testability
aesthetics
Accessibility
© Copyright MSTB-GTB
Chapter 2 Page 30 Software Testing Foundations Certified Tester
V 2.2.0 / 2017
2
Chapter
Fundamentals
of Testing
} Terms and Motivation
Principles of Testing
Fundamental Test Process Test Process
Test Cases, Expected Results and Test Oracles
Psychology of Testing
Ethics of Testing
© Copyright MSTB-GTB
Chapter 2 Page 31 Software Testing Foundations Certified Tester
V 2.2.0 / 2017
Seven Principles of Testing (1/3)
© Copyright MSTB-GTB
Chapter 2 Page 32 Software Testing Foundations Certified Tester
V 2.2.0 / 2017
Seven Principles of Testing (2/3)
© Copyright MSTB-GTB
Chapter 2 Page 33 Software Testing Foundations Certified Tester
V 2.2.0 / 2017
Seven Principles of Testing (3/3)
© Copyright MSTB-GTB
Chapter 2 Page 34 Software Testing Foundations Certified Tester
V 2.2.0 / 2017
Testing Effort?
© Copyright MSTB-GTB
Chapter 2 Page 35 Software Testing Foundations Certified Tester
V 2.2.0 / 2017
More regarding Testing (1/1)
© Copyright MSTB-GTB
Chapter 2 Page 36 Software Testing Foundations Certified Tester
V 2.2.0 / 2017
More regarding Testing (2/2)
Particularly important:
• Select appropriate test procedures which are compatible with
the test objectives and quality objectives
• Avoid unnecessary tests which provide no new information
• Take positive and negative test conditions into account
• It can also be useful to test for functionality that has not been
requested
© Copyright MSTB-GTB
Chapter 2 Page 37 Software Testing Foundations Certified Tester
V 2.2.0 / 2017
Prioritization of Tests
Limited resources (time and personnel) require that the most important
test cases are carried out first.
Criteria for prioritization:
• Expected impact (the severity of the damage a defect would cause)
• Probability of occurrence of a failure
• Combined consideration of impact and likelihood of occurrence
( Risk = Likelihood * Impact)
• Perception of the failure
• Prioritization of requirements by the customer
• Importance of quality characteristics by the customer
• Priority of test cases from the perspective of development (serious
consequences and / or complex cases first)
• High project risk
• Where many defects are found, more defects are likely to be
discovered. A change in the priority must be possible.
© Copyright MSTB-GTB
Chapter 2 Page 38 Software Testing Foundations Certified Tester
V 2.2.0 / 2017
2
Chapter
Fundamentals
of Testing
} Terms and Motivation
Principles of Testing
Fundamental Test Process
Test Cases, Expected Results and Test Oracles
Psychology of Testing
Ethics of Testing
© Copyright MSTB-GTB
Chapter 2 Page 39 Software Testing Foundations Certified Tester
V 2.2.0 / 2017
SW-Development Models: Waterfall-Model - 1970
Source:
Royce, W. W.:
Managing the Development of Large Software
Systems: Concepts and Techniques
Proc. WESCON, IEEE Computer Society Press, Los
Alamitos, CA, 1970.
Reprinted at the ICSE'87, Monterey, California, USA.
March 30 - April 2, 1987
© Copyright MSTB-GTB
Chapter 2 Page 40 Software Testing Foundations Certified Tester
V 2.2.0 / 2017
SW-Development Models: Waterfall-Model - 1981
Source:
Boehm, B.:
Software Engineering Economics
Prentice-Hall Inc., London, 1981
© Copyright MSTB-GTB
Chapter 2 Page 41 Software Testing Foundations Certified Tester
V 2.2.0 / 2017
V-Model (B. Boehm, 1979)
Source:
Barry W. Boehm:
Guidelines for Verifying and Validating Software
Requirements and Design Specification.
EURO IFIP 79, P.A. Samet (eds.) North-Holland, IFIP
1979, 711-719
© Copyright MSTB-GTB
Chapter 2 Page 42 Software Testing Foundations Certified Tester
V 2.2.0 / 2017
General V-Model
Programming
Legend:
Test cases based on corresponding
documents
© Copyright MSTB-GTB
Chapter 2 Page 43 Software Testing Foundations Certified Tester
V 2.2.0 / 2017
Test Process
© Copyright MSTB-GTB
Chapter 2 Page 44 Software Testing Foundations Certified Tester
V 2.2.0 / 2017
Activities of the Fundamental Test Process
Start
Evaluation and
Report
• These activities may overlap or take
place concurrently.
Closure
• The Fundamental Test Process is to
be tailored to each test level (e.g.
module test, system test) Finish
© Copyright MSTB-GTB
Chapter 2 Page 45 Software Testing Foundations Certified Tester
V 2.2.0 / 2017
Start
© Copyright MSTB-GTB
Chapter 2 Page 46 Software Testing Foundations Certified Tester
V 2.2.0 / 2017
Start
Analysis and
© Copyright MSTB-GTB
Chapter 2 Page 47 Software Testing Foundations Certified Tester
V 2.2.0 / 2017
Start
Analysis and
© Copyright MSTB-GTB
Chapter 2 Page 48 Software Testing Foundations Certified Tester
V 2.2.0 / 2017
Start
Analysis and
© Copyright MSTB-GTB
Chapter 2 Page 49 Software Testing Foundations Certified Tester
V 2.2.0 / 2017
Start
Analysis and
Design
© Copyright MSTB-GTB
Chapter 2 Page 50 Software Testing Foundations Certified Tester
V 2.2.0 / 2017
Start
Analysis and
Design
© Copyright MSTB-GTB
Chapter 2 Page 51 Software Testing Foundations Certified Tester
V 2.2.0 / 2017
Start
Analysis and
Design
© Copyright MSTB-GTB
Chapter 2 Page 52 Software Testing Foundations Certified Tester
V 2.2.0 / 2017
Start
Analysis and
Design
© Copyright MSTB-GTB
Chapter 2 Page 53 Software Testing Foundations Certified Tester
V 2.2.0 / 2017
Start
Analysis and
© Copyright MSTB-GTB
Chapter 2 Page 54 Software Testing Foundations Certified Tester
V 2.2.0 / 2017
Start
Analysis and
stakeholders. Implementation
and Execution Control
© Copyright MSTB-GTB
Chapter 2 Page 55 Software Testing Foundations Certified Tester
V 2.2.0 / 2017
Start
Analysis and
Design
2,5 Finish
2
Failure Severity
1,5 low
1 medium
high
0,5
critical
0
W1 W2 W3 W4 W5 W6 W7 W8 W9 W10 W11 Wx: Calendar Week
© Copyright MSTB-GTB
Chapter 2 Page 56 Software Testing Foundations Certified Tester
V 2.2.0 / 2017
Start
Analysis and
Design
50
Finish
40
30
New failures
20
Corrected defects
10
In Process
0
Wx: Calendar Week
W1 W2 W3 W4 W5 W6 W7 W8 W9 W10 W11
© Copyright MSTB-GTB
Chapter 2 Page 57 Software Testing Foundations Certified Tester
V 2.2.0 / 2017
Start
Analysis and
Design
© Copyright MSTB-GTB
Chapter 2 Page 58 Software Testing Foundations Certified Tester
V 2.2.0 / 2017
Start
Analysis and
Design
Evaluation and
• Preserve and hand over the testware to the Report
© Copyright MSTB-GTB
Chapter 2 Page 59 Software Testing Foundations Certified Tester
V 2.2.0 / 2017
2
Chapter
Fundamentals
of Testing
} Terms and Motivation
Principles of Testing
Fundamental Test Process
Test Cases, Expected Results, Test Oraclesch\
Psychology of Testing
Ethics of Testing
© Copyright MSTB-GTB
Chapter 2 Page 60 Software Testing Foundations Certified Tester
V 2.2.0 / 2017
Criteria for Test Cases
• Test cases for verification of specified results and of test object
delivered results and reactions
– Positive test; expected input / operation (normal)).
• Test cases that verify the specified handling of exceptional
situations and defects also need to be considered
– Negative test; expected false input / operation (exceptional).
– Remark: It is often difficult to create the conditions necessary
for execution of negative test cases (e.g. the overload of a
network connection).
• Test cases for verification of reactions of the test object for invalid
and unexpected inputs or constraints, for which there was no
exception handling specified
– Negative test / robustness test; unexpected erroneous inputs /
operations (catastrophic).
© Copyright MSTB-GTB
Chapter 2 Page 61 Software Testing Foundations Certified Tester
V 2.2.0 / 2017
Test Specification –
High Level and Specific Test Cases (1/3)
Example:
A company has ordered a program that should calculate the
Christmas bonus of the staff in relation to the time they have been
working there. In the description of the requirements you find the
following text:
»Staff who have been with the company for more that three years will
receive 50 % of the monthly salary as Christmas bonus. Staff who
have been with the company for more than five years will receive 75
%. Staff who have been with the company for more than eight years
will receive 100 % of their monthly salary.«
© Copyright MSTB-GTB
Chapter 2 Page 62 Software Testing Foundations Certified Tester
V 2.2.0 / 2017
Test Specification –
High Level and Specific Test Cases (2/3)
• From the text you can set up the following relationship between the
allowance of the bonus and the time working for the company:
© Copyright MSTB-GTB
Chapter 2 Page 63 Software Testing Foundations Certified Tester
V 2.2.0 / 2017
Test Specification –
High Level and Specific Test Cases (3/3)
Input value x 2 4 7 12
(years with the company)
Remarks:
• no pre- and post-conditions or constraints are considered
• the test cases were not derived systematically
• only positive tests with expected results
© Copyright MSTB-GTB
Chapter 2 Page 64 Software Testing Foundations Certified Tester
V 2.2.0 / 2017
Expected Results and Test Oracle
© Copyright MSTB-GTB
Chapter 2 Page 65 Software Testing Foundations Certified Tester
V 2.2.0 / 2017
Expected Results and Test Oracle
The expected results are to be deducted of the specification.
Following three possibilities:
• The tester derives the expected date from the input date on the basis
of the specification of the test object. This is the common practise.
• If a formal specification is available, an executable prototype can be
created with tool support. The results of the prototype can be used
as a test oracle for testing the actual program.
• Parallel designs of the software program may be created by different
development groups. Each version of the program will then be tested
against another version using the same test data. If there are
different results in the two versions there must be a failure in one of
the versions. Only those failures that have the same effect in all the
versions remain undetected. This procedure is called Back-to-back
test.
© Copyright MSTB-GTB
Chapter 2 Page 66 Software Testing Foundations Certified Tester
V 2.2.0 / 2017
Other Test Oracles
© Copyright MSTB-GTB
Chapter 2 Page 67 Software Testing Foundations Certified Tester
V 2.2.0 / 2017
2
Chapter
Fundamentals
of Testing
} Terms and Motivation
Principles of Testing
Fundamental Test Process
Test cases, Expected Results, Test Oracle
Psychology of Testing
Ethics of Testing
© Copyright MSTB-GTB
Chapter 2 Page 68 Software Testing Foundations Certified Tester
V 2.2.0 / 2017
Psychology of Testing
• Development = constructive
Test = destructive?
Source:
“Testing is an extremely creative Myers, Glenford J.:
and intellectually challenging task” Systematic Testing of Programs
Oldenbourg, 2001 (7. Edition)
© Copyright MSTB-GTB
Chapter 2 Page 69 Software Testing Foundations Certified Tester
V 2.2.0 / 2017
Psychology of Testing – Developer Test
© Copyright MSTB-GTB
Chapter 2 Page 70 Software Testing Foundations Certified Tester
V 2.2.0 / 2017
Psycholoy of Testing - Independent Test Team
• Test Know-how
– The tester should have test know-how
– A developer probably does not have this or first has to gain it (often
with not enough time available)
– Even better, the know-how has already been acquired at university ☺
© Copyright MSTB-GTB
Chapter 2 Page 71 Software Testing Foundations Certified Tester
V 2.2.0 / 2017
Psychology of Testing – Possible Levels
© Copyright MSTB-GTB
Chapter 2 Page 72 Software Testing Foundations Certified Tester
V 2.2.0 / 2017
Psychology of Testing – Communication of Defects
© Copyright MSTB-GTB
Chapter 2 Page 73 Software Testing Foundations Certified Tester
V 2.2.0 / 2017
2
Chapter
Fundamentals
of Testing
} Terms and Motivation
Principles of Testing
Fundamental Test Process
Test cases, Expected Results, Test Oracle
Psychology of Testing
Ethics of Testing
© Copyright MSTB-GTB
Chapter 2 Page 74 Software Testing Foundations Certified Tester
V 2.2.0 / 2017
Ethics of Testing (1/3)
© Copyright MSTB-GTB
Chapter 2 Page 75 Software Testing Foundations Certified Tester
V 2.2.0 / 2017
Ethics of Testing (2/3)
3. PRODUCT
Certified software testers shall ensure that the deliverables they provide
(on the products and systems they test) meet the highest professional
standards possible.
4. JUDGMENT
Certified software testers shall maintain integrity and independence in
their professional judgment.
5. MANAGEMENT
Certified software test managers and leaders shall subscribe to and
promote an ethical approach to the management of software testing.
© Copyright MSTB-GTB
Chapter 2 Page 76 Software Testing Foundations Certified Tester
V 2.2.0 / 2017
Ethics of Testing (3/3)
6. PROFESSION
Certified software testers shall advance the integrity and reputation of
the profession consistent with the public interest.
7. COLLEAGUES
Certified software testers shall be fair to and supportive of their
colleagues, and promote cooperation with software developers.
8. 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.
© Copyright MSTB-GTB
Chapter 2 Page 77 Software Testing Foundations Certified Tester
V 2.2.0 / 2017
✓ Summary
• Failure – Not fulfilling the requirements!
– Describing this situation as failure
– cause: defect in the software
– that has been caused by an error made by a person
• Tests are important measures for securing the quality criteria
– Functionality, reliability, usability, efficiency, maintainability und
portability [ISO 9126]
• Exhaustive testing is not possible. Tests are always random
checks, therefore they can detect failures only with a certain
probability
• The intensity and amount of testing depends on the expected risk
of faulty behavior of the program
• Tests should be prioritized
© Copyright MSTB-GTB
Chapter 2 Page 78 Software Testing Foundations Certified Tester
V 2.2.0 / 2017
✓ Summary
• The fundamental test process consists of the main activities
– Test Planning and Control
– Test Analysis and Design
– Test Implementation and Execution
– Evaluating Exit Criteria and Reporting
– Test Closure Activities
• While executing the test case, the test object shows its actual behavior. If there is a discrepancy
between expected and actual behavior there is a failure.
• A test oracle determines the expected values for each test case before test execution
© Copyright MSTB-GTB
Chapter 2 Page 79 Software Testing Foundations Certified Tester
V 2.2.0 / 2017
By now, you should be able to answer the following
??? questions
© Copyright MSTB-GTB
Chapter 2 Page 80 Software Testing Foundations Certified Tester
V 2.2.0 / 2017
Finally
© Copyright MSTB-GTB
Chapter 2 Page 81 Software Testing Foundations Certified Tester
V 2.2.0 / 2017