FUNDAMENTALS
OF TESTING
Graham et al (2006)
TESTINGDANIMPLENTASI
SISTEM
EGI ILHAM ELNUSA
114531104768
• http://uin-suska.ac.id
• http://fst.uin-suska.ac.id
• http://sif.uin-suska.ac.id
In this section, we're going
to kick off the book with a
discussion on why testing
matters. We'll describe and
illustrate how software
defects or bugs can cause
problems for people, the
environment or a company.
We'll draw important
distinctions between defects,
their root causes and their
effects. We'll explain why
testing is necessary to find
these defects, how testing
promotes quality, and how
testing fits into quality
assurance. In this section, we
will also introduce some
fundamental principles of
testing.
INTRODUCTION
As we go through this section, watch for
the Syllabus terms bug, defect, error,
failure, fault, mistake, quality, risk,
software, testing and exhaustive testing.
You'll find these terms defined in the
glossary.
INTRODUCTION, LANJUTAN …
Testing is done differently in different contexts. For
example, safety-critical software istested differently
from an e-commerce site. These days, almost
everyone is aware of software systems.
Software systems context
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 businessreputation - and even may
result in injury or death. For example, suppose auser
interface has typographical defects. Does this matter? It may
be trivial, butit could have a significant effect, depending on
the website and the defect:
If my personal family-tree website has my maternal grandmother's
maidenname spelt wrong, my mother gets annoyed and I have to
put up with somefamily 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, theeffect could be
very significant: suppose a decimal point is wrongly placed sothat the application rate
is 10 times too large. The farmer or gardener usesmore pesticide than needed, which
raises his costs, has environmentalimpacts on wildlife and water supplies and has
health and safety impact forthe farmer, gardener, family and workforce, livestock and
pets. There mayalso be consequent loss of trust in and business for the company and
possible legal costs and fines for causing the environmental and health problems.
If someone makes an error or mistake in using the software, this
may leaddirectly to a problem - the software is used incorrectly
and so does not behaveas we expected.
However, people also design and build the software
and theycan make mistakes during the design and
build. These mistakes mean that thereare flaws in the
software itself. These are called defects or sometimes
bugs orfaults. Remember, the software is not just the
code; check the definition of soft-ware again to
remind yourself.
Causes of software defects
Role of
testing in
software
development,
maintenance
and
operations
We have seen that human errors
can cause a defect or fault to be
introduced atany stage within the
software development life cycle
and, depending upon
theconsequences of the mistake,
the results can be trivial or
catastrophic.
Testing And
Quality
Testing helps us to measure the quality of software in terms of
the number ofdefects found, the tests run, and the system
covered by the tests. We can do thisfor both the functional
attributes of the software (for example, printing a
reportcorrectly) and for the non-functional software
requirements and characteristics(for example, printing a report
quickly enough).
Testing can give confidence in the quality of the software if it finds few or no defects,
provided we are happy that the testing is sufficiently rigorous . Of course, a poor test
may uncover few defects and leave uswith a false sense of security.
1 extremely thorough, exhaustive, or accurate.
2 (of a rule, system, etc.) strictly applied or adhered to. Ø adhering strictly to a belief,
opinion, or system.
3 (of weather) harsh.
– DERIVATIVESrigorously adv. rigorousness n.
– ORIGIN ME: from OFr. rigorous or late L. rigorosus, from rigor (see rigor1).
Role of
testing in
software
development,
maintenance
and
operations
We have seen that human errors
can cause a defect or fault to be
introduced atany stage within the
software development life cycle
and, depending upon
theconsequences of the mistake,
the results can be trivial or
catastrophic.
Projects aim to deliver software to specification. For the
project to deliverwhat the customer needs requires a
correct specification. Additionally, thedelivered system
must meet the specification. This is known as validation
('isthis 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 – itshould arrive when they need it and not cost
too much.
The ISTQB glossary definition covers not just the specified
requirements butalso user and customer needs and expectations. It is
important that the projectteam, the customers and any other project
stakeholders set and agree expectations. We need to understand what
the customers understand by quality andwhat their expectations are.
What we as software developers and testers maysee as quality – that the software
meets its defined specification, is technicallyexcellent and has few bugs in it –may
not provide a quality solution for our customers.
Furthermore, if our customers find they have spent more money thanthey wanted or
that the software doesn't help them carry out their tasks, theywon't be impressed by
the technical excellence of the solution. If the customerwants a cheap car for a 'run-
about' and has a small budget then an expensivesports car or a military tank are not
quality solutions, however well built theyare.
TERIMA KASIH

Presentasi fundamental of testing

  • 1.
    FUNDAMENTALS OF TESTING Graham etal (2006) TESTINGDANIMPLENTASI SISTEM EGI ILHAM ELNUSA 114531104768 • http://uin-suska.ac.id • http://fst.uin-suska.ac.id • http://sif.uin-suska.ac.id
  • 2.
    In this section,we're going to kick off the book with a discussion on why testing matters. We'll describe and illustrate how software defects or bugs can cause problems for people, the environment or a company. We'll draw important distinctions between defects, their root causes and their effects. We'll explain why testing is necessary to find these defects, how testing promotes quality, and how testing fits into quality assurance. In this section, we will also introduce some fundamental principles of testing. INTRODUCTION
  • 3.
    As we gothrough this section, watch for the Syllabus terms bug, defect, error, failure, fault, mistake, quality, risk, software, testing and exhaustive testing. You'll find these terms defined in the glossary. INTRODUCTION, LANJUTAN …
  • 4.
    Testing is donedifferently in different contexts. For example, safety-critical software istested differently from an e-commerce site. These days, almost everyone is aware of software systems. Software systems context
  • 5.
    Some of theproblems we encounter when using software are quite trivial,but others can be costly and damaging - with loss of money, time or businessreputation - and even may result in injury or death. For example, suppose auser interface has typographical defects. Does this matter? It may be trivial, butit could have a significant effect, depending on the website and the defect: If my personal family-tree website has my maternal grandmother's maidenname spelt wrong, my mother gets annoyed and I have to put up with somefamily teasing, but I can fix it easily and only the family see it (probably).
  • 6.
    If the companywebsite 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, theeffect could be very significant: suppose a decimal point is wrongly placed sothat the application rate is 10 times too large. The farmer or gardener usesmore pesticide than needed, which raises his costs, has environmentalimpacts on wildlife and water supplies and has health and safety impact forthe farmer, gardener, family and workforce, livestock and pets. There mayalso be consequent loss of trust in and business for the company and possible legal costs and fines for causing the environmental and health problems.
  • 7.
    If someone makesan error or mistake in using the software, this may leaddirectly to a problem - the software is used incorrectly and so does not behaveas we expected. However, people also design and build the software and theycan make mistakes during the design and build. These mistakes mean that thereare flaws in the software itself. These are called defects or sometimes bugs orfaults. Remember, the software is not just the code; check the definition of soft-ware again to remind yourself. Causes of software defects
  • 8.
    Role of testing in software development, maintenance and operations Wehave seen that human errors can cause a defect or fault to be introduced atany stage within the software development life cycle and, depending upon theconsequences of the mistake, the results can be trivial or catastrophic.
  • 9.
    Testing And Quality Testing helpsus to measure the quality of software in terms of the number ofdefects found, the tests run, and the system covered by the tests. We can do thisfor both the functional attributes of the software (for example, printing a reportcorrectly) and for the non-functional software requirements and characteristics(for example, printing a report quickly enough). Testing can give confidence in the quality of the software if it finds few or no defects, provided we are happy that the testing is sufficiently rigorous . Of course, a poor test may uncover few defects and leave uswith a false sense of security. 1 extremely thorough, exhaustive, or accurate. 2 (of a rule, system, etc.) strictly applied or adhered to. Ø adhering strictly to a belief, opinion, or system. 3 (of weather) harsh. – DERIVATIVESrigorously adv. rigorousness n. – ORIGIN ME: from OFr. rigorous or late L. rigorosus, from rigor (see rigor1).
  • 10.
    Role of testing in software development, maintenance and operations Wehave seen that human errors can cause a defect or fault to be introduced atany stage within the software development life cycle and, depending upon theconsequences of the mistake, the results can be trivial or catastrophic.
  • 11.
    Projects aim todeliver software to specification. For the project to deliverwhat the customer needs requires a correct specification. Additionally, thedelivered system must meet the specification. This is known as validation ('isthis 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 – itshould arrive when they need it and not cost too much.
  • 12.
    The ISTQB glossarydefinition covers not just the specified requirements butalso user and customer needs and expectations. It is important that the projectteam, the customers and any other project stakeholders set and agree expectations. We need to understand what the customers understand by quality andwhat their expectations are. What we as software developers and testers maysee as quality – that the software meets its defined specification, is technicallyexcellent and has few bugs in it –may not provide a quality solution for our customers. Furthermore, if our customers find they have spent more money thanthey wanted or that the software doesn't help them carry out their tasks, theywon't be impressed by the technical excellence of the solution. If the customerwants a cheap car for a 'run- about' and has a small budget then an expensivesports car or a military tank are not quality solutions, however well built theyare.
  • 13.