Software testing is a combination of static
testing and dynamic testing.
Static Testing- It is
process of verifying we are developing the right system or not. This static
testing will be carried out by the help of reviews and walkthroughs
Reviews: Examining project related work is
called review.
Types of reviews: These reviews are conducted
at development time.
i) Management
Review
ii) Technical
Review
iii) Code
Review
iv) Formal
Review
v) Informal
Review
1. Management
Review: This review will be conducted by top level or
middle level management to monitor the project status.
2. Technical Review: Those
reviews will be conducted by technical people to decide the best approach of
designing documents.
3. Code
Review: These reviews will be conducted by
programmers to decide best approach of coding part.
4. Formal
Review: If a review is carried out by following plan,
documentation, systematic process then conducting reviews which is called
‘formal review’
5. Informal
Review: If a review is conducted without following
any documentation, plan, systematic process conducting reviews are called
‘informal review’
Reviews(In any phase):
I.
Self review: By same
person.
II.
Peer review:
Conducting by collegues.
III.
Lead review:
Conducting by team lead.
IV.
Manager review:
Conducting by team manager.
V.
Client review: Done by
current project client.
Objectives of reviews:
a.
To find defects in requirements.
b.
To find defects in design.
c.
To identify deviations in any process
d.
To provide valuable suggestions to improve the process
Walk
Throughs: A
step-by-step presentation conducted by the domain expert to confirm the corfirm
the correctness of the lines of code.
Dynamic Testing- It’s a
process of validating developed product is right or not called validation also
called as dynamic testing. It will be carried by the help of whitebox testing,
black box testing and grey box testing.
1) Unit
Testing: It is smallest testable portion or part in the source code of the
application is called unit testing. During unit test, programmers will conduct
below whitebox technique.
I.
Whitebox coverage
II.
Condition coverage
III.
Path or Branch coverage
2) Integration
Testing: Once the unit testing is completed developer will integrate all
source code units and checks interactions among all those units which is called
integration testing. Based on the availability of the code integration
approaches
I.
Top-down approach
II.
Bottom-up approach
III.
Hybrid approach
IV.
Big-bang approach
Advantages
of the white box testing:
I.
To ensure 100% code coverage.
II.
Finding defects is easy as code is visible.
III.
White box testing is more economical while compare
to black box testing.
Black Box Testing- Once
100% coding & whitebox testing is completed, to confirm the correctness of
customer requirement on application which is conducting by testing engineer and
customer called black box testing also called as closed box testing.
Two levels will be performed under black box
testing:
I.
System testing
II.
User Acceptance testing
System
testing:
Validating both functional and non functional requirement of the application
called system testing.
Functional
system testing types: Once project is scheduled for system testing as
customer requirements(functional requirements)
During this test, we can conduct below
testings
1)
Smoke or build verification testing
2)
Positive and negative testing
3)
Retesting
4)
Regression testing
5)
Database testing
-
Data validation
-
Data Integrity
-
Data volume testing
6) Exhaustive testing
7) End to End testing
8)
Ad-hoc testing
Non-Functional
system testing types: Once functional requirements are satisfied on
application to confirm the customer expectations, testing engineer can
concentrating on non-functional requirement of the application.
I.
GUI (Graphical user interface) testing
II.
Usability testing
III.
Compatibility testing
-
Software compatibility
-
Hardware compatibility
IV.
Inter system
testing
V.
Security
testing
-
Authentication testing
-
Direct URL testing
-
User access or user privileges testing
-
Encryption testing
VI.
Recovery
testing
VII.
Port testing
VIII.
Installation
testing
IX.
Standards testing or compliance testing
X Performance
testing
-
Load testing
-
Stress testing
-
Spike testing
XI.
Endurance testing
User
Acceptance testing: It will be initiated after system testing.
·
It’s a process of conducting testing on application
to check that application is ready for use or not & it will be carried out
by domain expert / client.
·
This testing conducting at 2 levels:
(i)
Alpha testing
(ii)
Beta testing
|
Alpha testing |
Beta testing |
|
1) It is suitable for project |
1) It is suitable for product |
|
2) It is also called as first level of
user acceptance testing |
2) It is also called as last level of
user acceptance testing |
|
3) It is conducting at development
premises |
3) It is conducting at client premises |
|
4) It is always performed by domain
experts/separate team |
4) It is always performed only by
client |
|
5) Alpha testing conducting by real
time environment |
5) Beta testing conducting by virtual
environment |

No comments:
Post a Comment