Static Testing:
This test is manual review of documents to find the errors. The documents include requirements specifications, design specifications, test plans. Static testing is a method to find causes of defects.Benefits of Static testing:
Helps in early defect detection
Improves development productivity
Opportunity for improvements
Reduces the overall testing time and cost
Reduces defects in the application/sooftware
Helps in detecting omissions if any
Types of Static Testing:
Informal: As the word suggests it does not follow any formal process.
Technical lead will review the design
Results should be documented
The results and benefits of this depends on the reviewer.
It is an inexpensive way to get results and benefits
Inspection: This is led by a trained moderator
It is conducted as a peer examination
Consists of defined roles
This is a formal process carried depending on rules and checklists
Results in inspection report that includes list of findings
Formal follow-up process is defined.
Walk through: This is a meeting led by author
Peer group participation
Open-ended sessions are included
Optional scribe(Who is not the author)
Main benefits of walkthrough are learning, gaining thoroug understanding and finding defects in early stages.
Dynamic Testing:
This testing involves interaction with the program while it runs. Inthis testing the code is executed.
Code is compiled and run. The testing verifies the outputs with
different inputs.
different inputs.
Dynamic testing includes 4 testing levels:
1. Unit Testing
2. Integration Testing
3. System Testing
4. User Acceptance Testing
Unit Testing:
This testing is done by the developers. A unit is the smallest testable part of software. In this testing the individual units/components of a software/application are tested to verify that each unit of the software performs as intended.
Integration Testing:
This testing is done only after unit testing. The individual units are combined together and then tested to verify that they work fine even when they are put together.
Different types of integration testing are Big Bang, Top-down and Bottom-up.
Big Bang:
Top-Down:
This is is 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:
System testing is the testing of behaviour of a complete and
fully integrated software product
based on the software requirements specification(SRS) document.
This testing is to be carried out only after system Integration testing is complete where both
Functional and Non-Functional requirements are verified.
Different types of integration testing are Big Bang, Top-down and Bottom-up.
Big Bang:
In this approach, all or most of the developed modules are coupled together to form a complete software system or major part of the system and then used for integration testing.
The Big Bang method is very effective for saving time in the integration testing process.Top-Down:
This is is 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:
This is an approach to integrated testing where the lowest level components are tested first, then used to facilitate the testing of higher level components. The process is repeated until the component at the top of the hierarchy is tested.
System Testing:
System testing is the testing of behaviour of a complete and
fully integrated software product
based on the software requirements specification(SRS) document.
This testing is to be carried out only after system Integration testing is complete where both
Functional and Non-Functional requirements are verified.
User Acceptance Testing:
User acceptance testing (UAT) is the last phase of the software testing process. During UAT, actual software users test the software to make sure it can handle required tasks in real-world scenarios, according to specifications.
UAT is one of the final and critical software project procedures that must occur before newly developed software is rolled out to the market.
No comments:
Post a Comment