VIP Model Call Girls Hadapsar ( Pune ) Call ON 9905417584 Starting High Prof...
Â
System Testing.pptx
1. By:M.R.M.Nowfeek
MCS(SL),MSc in IT, PGD in IT, BSc in MIT, BSc in IT, HNDE, BTEC ,ICDL,DICAP
Certified Trainer :IPICT/ASAP/EPASS
Dip in ICT , Dip in IT , Dip in Hardware & Networking
Higher Diploma in Business
Management
CS250-Management Information
System
3. Software Testing
Software testing is the process of evaluation a
software item to detect differences between
given input and expected output. Also to
assess the feature of A software item. Testing
assesses the quality of the product.
Software testing is a process that should be
done during the development process.
By:M.R.M.Nowfeek 3
4. Software Testing
Software testing is an investigation conducted
to provide stakeholders with information
about the quality of the software product or
service under test. Software testing can also
provide an objective, independent view of the
software to allow the business to appreciate
and understand the risks of software
implementation.
By:M.R.M.Nowfeek 4
5. Validations and Verification
â˘Validation and verification ( V & V ) is the name given to the
checking and analysis processes that ensure that software conforms
to its specification and meets the needs of the customers who are
paying for the software.
⢠V & V is a whole life-cycle process. It starts with requirements
reviews and continues through design reviews and code inspections
to product testing. There should be V& V activities at each stage of
software process.
⢠Validation : Are we building the right product?
Verification : Are we building the product right?
By:M.R.M.Nowfeek 5
7. Black-box testing
⢠Black-box testing is a method of software
testing that examines the functionality of an
application without peering into its internal
structures or workings. This method of test can
be applied virtually to every level of software
testing: unit, integration, system and acceptance.
It is sometimes referred to as specification-based
testing.
8
By:M.R.M.Nowfeek 8
8. Black-box testing
⢠Black Box Testing, also known as Behavioral
Testing, is a software testing method in which
the internal structure/ design/ implementation
of the item being tested is not known to the
tester.
9
By:M.R.M.Nowfeek 9
9. Black-box testing
⢠Black Box testing takes an external perspective of the
test object to derive test cases.
⢠The test designer selects valid and invalid inputs and
determines the correct output.
⢠There is no knowledge of the test object's internal
structure.
⢠Typical black box test design techniques include:
⢠Decision table testing
⢠Pair wise testing
⢠State transition tables
⢠Use case testing
⢠Cross-functional testing
10
By:M.R.M.Nowfeek 10
10. Black-box testing
⢠White box testing is the testing of
the internal workings or code of a
software application. In contrast,
black box or System Testing is the
opposite. System test involves the
external workings of the software
from the user's perspective.
11
By:M.R.M.Nowfeek 11
11. Black-box testing
ď Approach to testing where the program is considered as a
âblack-boxâ
ď The program test cases are based on the system specification
ď Inputs from test data may reveal anomalous outputs i.e. defects
ď Test planning can begin early in the software process
ď Main problem - selection of inputs
Program
Requirements
Test cases Test results
By:M.R.M.Nowfeek 12
12. White-box testing
⢠White-box testing (also known as clear box
testing, glass box testing, transparent box
testing, and structural testing) is a method of
testing software that tests internal structures
or workings of an application, as opposed to
its functionality (i.e. black-box testing). In
white-box testing an internal perspective of
the system, as well as programming skills, are
used to design test cases
13
By:M.R.M.Nowfeek 13
13. White-box testing
⢠White box testing (clear box testing, glass box
testing, transparent box testing, or structural
testing) uses an internal perspective of the
system to design test cases based on internal
structure.
⢠It requires programming skills to identify all
paths through the software.
14
By:M.R.M.Nowfeek 14
14. White-box testing
⢠Sometimes called Structural testing or glass box
testing
⢠Derivation of test cases according to program
structure. Knowledge of the program used to
identify additional test cases
⢠Objective is to exercise all program statements
(not all path combinations)
Test results
Code Code Code Code Code Code Code Code Code Code Co
de Code Code
Code Code Code Code Code Code Code Code Code Code Code Code Code Code Code Code Code Code
Code Code Code Code Code Code Code Code Code Code Code Code Code
Code Code Code Code Code Code Code
Code Code Code Code Code
Code Code Code Code Code Code Code Code Code Code Code Code Code Code Code Code Code Co
de Code Code Code Code Code Code Code Code Code Code Code Code Co
e Code Code Code Co
de Code Code Code Code Code Code Code Code Code
Code Code Code Code Code Code Code Code Code Code Code Code Code Code Code Code Code Code
Code Code Code
Code Code Code Code Code Code Code Code Code Code Code Code Code Code Code Code Code Code
Code Code Code Code Code Code Code Code Code Code Code Code Code Code Code Code Code Code
Code Code Code Code Code Code Code Code Code Code Code Code Code Code Code Code Code Code
Code Code Code Code Code Code Code
Test
cases
By:M.R.M.Nowfeek 15
15. 16
⢠The tester chooses test case inputs to exercise
paths through the code and determines the
appropriate outputs.
⢠Typical white box test design techniques
include:
⢠Control flow testing
⢠Data flow testing
⢠Branch testing
White-box testing cont..
By:M.R.M.Nowfeek
16. Gray Box Testing
17
⢠Gray Box Testing is a software testing method
which is a combination of Black Box Testing
method and White Box Testing method.
By:M.R.M.Nowfeek
18. Unit testing
⢠Unit testing - testing performed on each
module or block of code during
development. Unit Testing is normally done by
the programmer who writes the code
19
By:M.R.M.Nowfeek 19
19. Unit Testing
âunit testing is a software verification and validation
method in which a programmer tests if individual
units of source code are fit for use.
âUnit Testing is performed by using the White Box
Testing method.
20
Who performs it?
performed by software developers themselves
By:M.R.M.Nowfeek 20
20. Unit Testing
Unit Testing is carried out as a part of the coding task. This
phase is based on the design of the software for a piece of
code. Unit testing should prove the following about the
code
â˘Robust â the code should not fail under any
circumstances.
â˘Functionally correct â the code should carry out the
task defined by the code design
⢠Correct interface â the inputs and outputs from the
code should be as defined in the design
By:M.R.M.Nowfeek 21
21. Benefits of unit testing
⢠Facilitates change
âUnit testing allows the programmer to refractor
code at a later date, and make sure the module still
works correctly
⢠Simplifies integration
âUnit testing may reduce uncertainty in the units
themselves and can be used in a bottom-up testing
style approach.
⢠Documentation
âUnit testing provides a sort of living
documentation of the system
22
By:M.R.M.Nowfeek 22
22. Limitations of unit testing
23
⢠Testing cannot be expected to catch every
error in the program, it will not catch
integration errors or broader system-level
errors .
⢠Software testing is a combinatorial problem
By:M.R.M.Nowfeek
23. 2. Integration testing
⢠Integration is the phase in software testing in
which individual software modules are combined
and tested as a group.
⢠The purpose of integration testing is to verify
functional, performance, and reliability
requirements placed on major design items.
24
By:M.R.M.Nowfeek 24
24. 2. Integration Testing
⢠Integration testing - testing done before,
during and after integration of a new
module into the main software package.
This involves testing of each individual code
module. One piece of software can contain
several modules which are often created by
several different programmers. It is crucial to
test each module's effect on the entire
program model.
25
By:M.R.M.Nowfeek 25
25. Integration/Sub-systems Testing
Integration Testing is carried out after the separate
software modules have been unit testing.
Integration testing is based on the functional
specification of the software. Integration testing
should prove the following about the software:
Integration - the modules of the system should
interact as designed.
Functionally correct - the system should
behave as defined in the functional specification
By:M.R.M.Nowfeek 26
26. 27
METHOD
Any of Black Box Testing, White Box Testing,
and Gray Box Testing methods can be used.
Normally, the method depends on your
definition of âunitâ.
Integration testing cont..
By:M.R.M.Nowfeek
27. 28
⢠Some different types of integration testing are,
â top-down(an approach to integrated testing where the top
integrated modules are tested and the branch of the
module is tested step by step until the end of the related
module.)
â bottom-up (an approach to integrated testing where the
lowest level components are tested first, then used to
facilitate the testing of higher level components.)
Integration testing cont..
By:M.R.M.Nowfeek
28. 3. System Testing
29
System Testing is a level of the software testing
process where a complete, integrated
system/software is tested.
METHOD
Black Box Testing method is used.
Who performs it
independent Testers perform System Testing.
By:M.R.M.Nowfeek
29. 3. System Testing
30
⢠System testing - testing done by a
professional testing agent on the
completed software product before
it is introduced to the market.
By:M.R.M.Nowfeek
30. 4. User acceptance testing
⢠User Acceptance Testing (UAT) is a process to
obtain confirmation by a Subject Matter Expert
(SME), preferably the owner or client of the
object under test, through trial or review, that
a system meets mutually agreed-upon
requirements.
31
By:M.R.M.Nowfeek 31
31. Acceptance Testing
Acceptance testing is carried out at the
customers site with the customer in
attendance. The purpose of the
acceptance test is to show to the
customer that the software does indeed
work. These tests are usually a sub set
of the system test.
By:M.R.M.Nowfeek 32
32. Test automation
⢠Test automation is the use of software to
â control the execution of tests
â the comparison of actual outcomes to predicted
outcomes
â the setting up of test preconditions
â test reporting functions.
⢠There are two general approaches to test
automation:
⢠Code-driven testing
⢠Graphical user interface testing.
33
By:M.R.M.Nowfeek 33
33. Test automation..
⢠Automated testing tools are sometimes
referred to as Computer Aided Software
Testing (CAST) tools.
34
By:M.R.M.Nowfeek 34
34. Alpha, Beta and Regression Testing
Alpha Testing â
Alpha testing is the first real use of the software product. Having completed system
testing the product will be given to a small number of selected customers or possible just
distributed within the company itself. The software will be used and errors reported to the
development and maintenance team.
Beta Testing â
After alpha testing has been completed and any changes made a new version of the
product will be released to much wider audience. The objective of Beta testing is to iron
out the remaining problems with the product before it is put on the general release.
Regression Testing â
Regression testing carried out after any changes are made to a software application. The
purpose of regression test is to prove that the change has been made correctly and that the
change has not introduced any new errors.
Regression test plans are usually a sub-set of the integration or systems test plans. It is
designed to cover enough functionality to give confidence that the change has not effected
any other part of the system. By:M.R.M.Nowfeek 35
35. Testing Strategy
⢠A testing strategy should cover the following
areas.
â Strategy approach- A testing strategy should be formulated
â Test plan â A test plan should be developed
â Test design â The logic and reasoning behind the design of
the tests should be explained.
â Performing tests â Detailed procedures should be provided
for all tests.
â Documentation â It must be clear how the results of tests
are to be documented.
â Re-testing â The re-test procedure should be explained.
36
By:M.R.M.Nowfeek 36
36. The limitations of software testing
⢠Poor testing process
⢠Inadequate time
⢠Future requirements not anticipated
⢠Inadequate test data
⢠Software changes inadequately test
37
By:M.R.M.Nowfeek 37