Software Testing
Testing
• “Testing is the process of executing a program
with the intention of finding errors.”
• “Testing can show the presence of bugs but
never their absence.”
Levels of Testing
• Unit Testing
• Integration Testing
• Validation Testing
• Regression Testing
• Alpha Testing
• Beta Testing
• Acceptance Testing
• Other testing method
Unit Testing
•Unit testing is the process of testing
a singular item of software. An
example would be a window/form
which allows a user to choose two
ways of launching the application.
Specification Testing
•To perform specification testing, the
analyst examines the specifications
starting what the program should do
and how it should perform under
various conditions
Alpha Testing
• An alpha release is the first working draft
of a project.
• An alpha release of a project is only for
internal circulation.
• Alpha testing is usually done “in-house” by
team members.
• Alpha releases are expected to have
problems or to be incomplete.
Beta Testing
•Beta testing is done with a wider
array of testers.
•Beta testers should be representative
of real users.
•These testers should be people who
were not involved with the actual
production.
•Beta level bugs are typically less
virulent than alpha bugs.
Acceptance Testing
• Usually the tests are developed by the
customer
• User acceptance is a type of testing
performed by the Client to certify the
system with respect to the requirements
that was agreed upon. This testing
happens in the final phase of testing
before moving the software application to
Market or Production environment.
Regression testing
• The purpose of regression testing is to
confirm that a recent program or code
change has not adversely affected existing
features.
• Regression testing is nothing but full or
partial selection of already executed test
cases which are re-executed to ensure
existing functionalities work fine.
Test Methods
• White box or glass box testing
• Black box testing
White Box Testing
• Knowing the internal workings of a product, test
that all internal operations are performed
according to specifications and all internal
components have been exercised
• Involves tests that concentrate on close
examination of procedural detail
• Logical paths through the software are tested
• Test cases exercise specific sets of conditions
and loops
White Box Testing
Component
code
Test
outputs
Test data
DerivesTests
Black Box Testing
• Knowing the specified function that a product
has been designed to perform, test to see if
that function is fully operational and error free
• Includes tests that are conducted at the
software interface
• Not concerned with internal logical structure of
the software
Black Box Testing
I
e
Input test data
OeOutput test results
System
Inputs causing
anomalous
behaviour
Outputs which reveal
the presence of
defects

ITFT--Software testing

  • 1.
  • 2.
    Testing • “Testing isthe process of executing a program with the intention of finding errors.” • “Testing can show the presence of bugs but never their absence.”
  • 3.
    Levels of Testing •Unit Testing • Integration Testing • Validation Testing • Regression Testing • Alpha Testing • Beta Testing • Acceptance Testing • Other testing method
  • 4.
    Unit Testing •Unit testingis the process of testing a singular item of software. An example would be a window/form which allows a user to choose two ways of launching the application.
  • 5.
    Specification Testing •To performspecification testing, the analyst examines the specifications starting what the program should do and how it should perform under various conditions
  • 6.
    Alpha Testing • Analpha release is the first working draft of a project. • An alpha release of a project is only for internal circulation. • Alpha testing is usually done “in-house” by team members. • Alpha releases are expected to have problems or to be incomplete.
  • 7.
    Beta Testing •Beta testingis done with a wider array of testers. •Beta testers should be representative of real users. •These testers should be people who were not involved with the actual production. •Beta level bugs are typically less virulent than alpha bugs.
  • 8.
    Acceptance Testing • Usuallythe tests are developed by the customer • User acceptance is a type of testing performed by the Client to certify the system with respect to the requirements that was agreed upon. This testing happens in the final phase of testing before moving the software application to Market or Production environment.
  • 9.
    Regression testing • Thepurpose of regression testing is to confirm that a recent program or code change has not adversely affected existing features. • Regression testing is nothing but full or partial selection of already executed test cases which are re-executed to ensure existing functionalities work fine.
  • 10.
    Test Methods • Whitebox or glass box testing • Black box testing
  • 11.
    White Box Testing •Knowing the internal workings of a product, test that all internal operations are performed according to specifications and all internal components have been exercised • Involves tests that concentrate on close examination of procedural detail • Logical paths through the software are tested • Test cases exercise specific sets of conditions and loops
  • 12.
  • 13.
    Black Box Testing •Knowing the specified function that a product has been designed to perform, test to see if that function is fully operational and error free • Includes tests that are conducted at the software interface • Not concerned with internal logical structure of the software
  • 14.
    Black Box Testing I e Inputtest data OeOutput test results System Inputs causing anomalous behaviour Outputs which reveal the presence of defects