System Testing is one of the Software Testing levels, in which the complete integrated system is tested to verify its behavior against specified requirements. The below are few points, which help you in understanding System Testing in more detail:
- > System testing is generally performed after Integration testing and before Acceptance testing.
- > System testing involves both functional and non-functional testing
- > Usually, the independent testing team performs System testing
- > System testing comes under the black box testing category where the tester is involved in testing the external working of the software from the user’s perspective.
- > In System testing, testing team is involved in creating the detailed test cases and test suites which are required for testing the application from outside without looking at the internal source code.
Real world example: Let’s take an example of a mobile phone, where the individual units like Touch Screen, Battery, Camera, Music system etc are unit tested separately. And later the Integration testing is performed to check whether the two or more units are working together. i.e. As part of Integration testing, the Camera and Music system are combined together to check whether taking a picture is making capture sound or not. And later as part of System testing, all the units like Screen, Battery, Camera, Music system etc. are combined together to form the completely integrated mobile phone and verified against the specified requirements.
Types of System Testing: As System testing involves both Functional and Non-Functional testing, the below are the major types of testing which can be performed as part of System Testing.
- > Functional Testing
- > Performance Testing
- > Security Testing
- > Regression Testing
- > Usability Testing
- > Recovery Testing
- > Migration Testing
- > GUI Testing
- > Compatibility Testing
- > Load Testing
- > Volume Testing
- > Stress Testing
- > Scalability Testing
- > Sanity Testing
- > Smoke Testing
- > Exploratory Testing
- > Ad-hoc Testing
- > Installation Testing
- > Maintenance Testing
- > Accessibility Testing
Conclusion: System testing is the third level of Software Testing, where the fully/completely integrated system is tested from outside to verify its behavior against specified requirements.
- > To learn more about Software Testing, continue to the next post (Click on the Next Post link below)
- > Check complete Software Testing Tutorial Contents here (Click here)
Please leave your questions/comments/feedback below.
Happy Learning ?
On a mission to help the Software Testing Community in all possible ways.