F u n d a m e n t a l s o f T e s t i n g
T E S T I N G I M P L E M E N T A S I S I S T E M
The Power of PowerPoint | thepopp.com
INTRODUCTION
The Power of PowerPoint | thepopp.com 3
Program Studi S1 Sistem Informasi
Fakultas Sains dan Teknologi
UIN Sultan Syarif Kasim Riau
2017
http://sif.uin -suska.ac.id/
http://fst.uin -suska.ac.id/
http://www.uin -suska.ac.id/
REGINA KHALIDA
The Power of PowerPoint | thepopp.com 4
Software System Context Couses of Software Defects
Role of Testing in Software
Development, Maintenance,
and Operations
Testing and Quality
1 2
3 4
The Power of PowerPoint | thepopp.com 5
View Points Of
Expectations and Quality
Defining Software
Testing
Software Test and
Driving Test Compared
5 6 7
Some of the problems we encounter when using software are
quite trivial, but others can be costly and damaging - with
loss of money, time or business reputation - and even may
result in injury or death. For example, suppose a user
interface has typographical defects. Does this matter? It may
be trivial, but it could have a significant effect, depending on
the website and the defect:
 If my personal family-tree website has my maternal
grandmother's maiden name spelt wrong, my mother gets
annoyed and I have to put up with some family teasing, but I
can fix it easily and only the family see it (probably).
 If the company website has some spelling mistakes in the text,
potential customers may be put off the company as it looks
unprofessional.
 If a software program miscalculates pesticide application
quantities, the effect could be very significant: suppose a
decimal point is wrongly placed so that the application rate is
10 times too large. The farmer or gardener uses more pesticide
than needed, which raises his costs, has environmental
impacts on wildlife and water supplies and has health and
safety impact for the farmer, gardener, family and workforce,
livestock and pets. There may also be consequent loss of trust
in and business for the company and possible legal costs and
fines for causing the environmental and health problems.
Software
System
Context
6
If someone makes an error or mistake in using the software, this
may lead directly to a problem – the software is used incorrectly
and so does not behave as we expected. However, people also
design and build the software and they can make mistakes during
the design and build. These mistakes mean that there are flaws in
the software itself. These are called defects or sometimes bugs or
faults. Remember, the software is not just the code; check the
definition of soft- ware again to remind yourself.
When we think about what might go wrong we have to
consider defects and failures arising from :
 errors in the specification, design and implementation of the
software and system;
 errors in use of the system;
 environmental conditions;
 intentional damage;
 potential consequences of earlier errors, intentional damage,
defects
 and failures.
Couses of
Software
Defects
7
We have seen that human errors can cause a defect or
fault to be introduced at any stage within the software
development life cycle and, depending upon the
consequences of the mistake, the results can be trivial
or catastrophic. Rigorous testing is necessary during
development and maintenance to identify defects, in
order to reduce failures in the operational environment
and increase the quality of the operational system. This
includes looking for places in the user interface where
a user might make a mistake in input of data or in the
interpretation of the output, and looking for potential
weak points for intentional and malicious attack.
Executing tests helps us move towards improved
quality of product and service, but that is just one of
the verification and validation methods applied to
products. Processes are also checked, for example by
audit. A variety of methods may be used to check work,
some of which are done by the author of the work and
some by others to get an independent view.
Role of Testing
in Software
Development ,
Maintenanc e,
and Operations
8
What is quality?
Projects aim to deliver software to specification. For
the project to deliver what the customer needs requires
a correct specification. Additionally, the delivered
system must meet the specification. This is known as
validation ('is this the right specification?') and
verification ('is the system correct to specification?'). Of
course, as well as wanting the right software system
built correctly, the customer wants the project to be
within budget and timescale – it should arrive when
they need it and not cost too much.
Testing and
Quality
9
View Points
Of
Expectations
and Quality
10
 Process – Testing is a process rather than a single activity – there are a series
of activities involved.
 All life cycle activities – Chapter 2 looks at testing as a process that takes place
throughout the software development life cycle. We saw earlier that the later in
the life cycle we find bugs, the more expensive they are to fix. If we can find and
fix requirements defects at the requirements stage, that must make commercial
sense.
 Both static and dynamic – We'll see in Chapter 3 that as well as tests where the
software code is executed to demonstrate the results of running tests (often
called dynamic testing) we can also test and find defects without exe cuting
code. This is called static testing. This testing includes reviewing of documents
(including source code) and static analysis. This is a useful and cost effective
way of testing.
 Planning – Activities take place before and after test execution. We need to
manage the testing; for example, we plan what we want to do; we control the
test activities; we report on testing progress and the status of the software
under test; and we finalize or close testing when a phase completes.
 Preparation – We need to choose what testing we'll do, by selecting test con
ditions and designing test cases.
 Evaluation – As well as executing the tests, we must check the results and
evaluate the software under test and the completion criteria, which help us
decide whether we have finished testing and whether the software product has
passed the tests.
 Software products and related work products – We don't just test code. We test
the requirements and design specifications, and we test related documents
such as operation, user and training material. Static and dynamic testing are
both needed to cover the range of products we need to test.
Defining
Software
Testing
11
 Planning and preparation - Both the examiner and the tester
need a plan of action and need to prepare for the test, which is
not exhaustive, but is repre sentative and allows risk-based
decisions about the outcome.
 Static and dynamic - Both dynamic (driving the car or executing
the software) and static (questions to the driver or a review of
the software) tests are useful.
 Evaluation - The examiner and the tester must make an
objective evaluation, log the test outcome and report factual
observations about the test.
 Determine that they satisfy specified requirements – The
examiner and tester both check against requirements to carry
out particular tasks successfully.
 Demonstrate that they are fit for purpose - The examiner and
the tester are not evaluating for perfection but for meeting
sufficient of the attributes required to pass the test.
 Detect defects - The examiner and tester both look for and log
faults.
 The driver being examined becomes the system or software
under test, and
 you'll see as we go through this book that the same approach
broadly holds.
Software Test
and Driving
Test
Compared
12
THANK YOU!

Fundamental of testing

  • 1.
    F u nd a m e n t a l s o f T e s t i n g T E S T I N G I M P L E M E N T A S I S I S T E M The Power of PowerPoint | thepopp.com
  • 2.
  • 3.
    The Power ofPowerPoint | thepopp.com 3 Program Studi S1 Sistem Informasi Fakultas Sains dan Teknologi UIN Sultan Syarif Kasim Riau 2017 http://sif.uin -suska.ac.id/ http://fst.uin -suska.ac.id/ http://www.uin -suska.ac.id/ REGINA KHALIDA
  • 4.
    The Power ofPowerPoint | thepopp.com 4 Software System Context Couses of Software Defects Role of Testing in Software Development, Maintenance, and Operations Testing and Quality 1 2 3 4
  • 5.
    The Power ofPowerPoint | thepopp.com 5 View Points Of Expectations and Quality Defining Software Testing Software Test and Driving Test Compared 5 6 7
  • 6.
    Some of theproblems we encounter when using software are quite trivial, but others can be costly and damaging - with loss of money, time or business reputation - and even may result in injury or death. For example, suppose a user interface has typographical defects. Does this matter? It may be trivial, but it could have a significant effect, depending on the website and the defect:  If my personal family-tree website has my maternal grandmother's maiden name spelt wrong, my mother gets annoyed and I have to put up with some family teasing, but I can fix it easily and only the family see it (probably).  If the company website has some spelling mistakes in the text, potential customers may be put off the company as it looks unprofessional.  If a software program miscalculates pesticide application quantities, the effect could be very significant: suppose a decimal point is wrongly placed so that the application rate is 10 times too large. The farmer or gardener uses more pesticide than needed, which raises his costs, has environmental impacts on wildlife and water supplies and has health and safety impact for the farmer, gardener, family and workforce, livestock and pets. There may also be consequent loss of trust in and business for the company and possible legal costs and fines for causing the environmental and health problems. Software System Context 6
  • 7.
    If someone makesan error or mistake in using the software, this may lead directly to a problem – the software is used incorrectly and so does not behave as we expected. However, people also design and build the software and they can make mistakes during the design and build. These mistakes mean that there are flaws in the software itself. These are called defects or sometimes bugs or faults. Remember, the software is not just the code; check the definition of soft- ware again to remind yourself. When we think about what might go wrong we have to consider defects and failures arising from :  errors in the specification, design and implementation of the software and system;  errors in use of the system;  environmental conditions;  intentional damage;  potential consequences of earlier errors, intentional damage, defects  and failures. Couses of Software Defects 7
  • 8.
    We have seenthat human errors can cause a defect or fault to be introduced at any stage within the software development life cycle and, depending upon the consequences of the mistake, the results can be trivial or catastrophic. Rigorous testing is necessary during development and maintenance to identify defects, in order to reduce failures in the operational environment and increase the quality of the operational system. This includes looking for places in the user interface where a user might make a mistake in input of data or in the interpretation of the output, and looking for potential weak points for intentional and malicious attack. Executing tests helps us move towards improved quality of product and service, but that is just one of the verification and validation methods applied to products. Processes are also checked, for example by audit. A variety of methods may be used to check work, some of which are done by the author of the work and some by others to get an independent view. Role of Testing in Software Development , Maintenanc e, and Operations 8
  • 9.
    What is quality? Projectsaim to deliver software to specification. For the project to deliver what the customer needs requires a correct specification. Additionally, the delivered system must meet the specification. This is known as validation ('is this the right specification?') and verification ('is the system correct to specification?'). Of course, as well as wanting the right software system built correctly, the customer wants the project to be within budget and timescale – it should arrive when they need it and not cost too much. Testing and Quality 9
  • 10.
  • 11.
     Process –Testing is a process rather than a single activity – there are a series of activities involved.  All life cycle activities – Chapter 2 looks at testing as a process that takes place throughout the software development life cycle. We saw earlier that the later in the life cycle we find bugs, the more expensive they are to fix. If we can find and fix requirements defects at the requirements stage, that must make commercial sense.  Both static and dynamic – We'll see in Chapter 3 that as well as tests where the software code is executed to demonstrate the results of running tests (often called dynamic testing) we can also test and find defects without exe cuting code. This is called static testing. This testing includes reviewing of documents (including source code) and static analysis. This is a useful and cost effective way of testing.  Planning – Activities take place before and after test execution. We need to manage the testing; for example, we plan what we want to do; we control the test activities; we report on testing progress and the status of the software under test; and we finalize or close testing when a phase completes.  Preparation – We need to choose what testing we'll do, by selecting test con ditions and designing test cases.  Evaluation – As well as executing the tests, we must check the results and evaluate the software under test and the completion criteria, which help us decide whether we have finished testing and whether the software product has passed the tests.  Software products and related work products – We don't just test code. We test the requirements and design specifications, and we test related documents such as operation, user and training material. Static and dynamic testing are both needed to cover the range of products we need to test. Defining Software Testing 11
  • 12.
     Planning andpreparation - Both the examiner and the tester need a plan of action and need to prepare for the test, which is not exhaustive, but is repre sentative and allows risk-based decisions about the outcome.  Static and dynamic - Both dynamic (driving the car or executing the software) and static (questions to the driver or a review of the software) tests are useful.  Evaluation - The examiner and the tester must make an objective evaluation, log the test outcome and report factual observations about the test.  Determine that they satisfy specified requirements – The examiner and tester both check against requirements to carry out particular tasks successfully.  Demonstrate that they are fit for purpose - The examiner and the tester are not evaluating for perfection but for meeting sufficient of the attributes required to pass the test.  Detect defects - The examiner and tester both look for and log faults.  The driver being examined becomes the system or software under test, and  you'll see as we go through this book that the same approach broadly holds. Software Test and Driving Test Compared 12
  • 13.