I was going through the types of software testing...Can anyone tell me what exactly are the differences between system testing and release testing?
I see this in Ian Somerville's book (9th edition, section 8.3):
There are two important distinctions between release testing and system testing during the development process:
- A separate team that has not been involved in the system development should be responsible for release testing.
- System testing by the development team should focus on discovering bugs in the system (defect testing). The objective of release testing is to check that the system meets its requirements and is good enough for external use (validation testing).
System testing of software or hardware is testing conducted on a complete, integrated system to evaluate the system's compliance with its particular needs.
System testing falls within the scope of black-box testing, and as such should require no idea of the inner design of the code or logic.
Each release undergoes a series of automated and manual testing to ensure the quality of the finished product. In order to maximize our ability to find bugs before users do, we conduct a battery of tests designed to exercise as much functionality as possible.
These tests emphasize variety over raw quantity, however, with each feature release requiring approximately a week of round-the-clock testing.
Regardless of Ian Somerville's definition there's a more obvious difference, "system" and "release" refers to different things.
System refers to the content of the activity, you can test a unit and then call it unit test, modules or subsystems then call it integration tests, or a whole system and then call it system test.
Release refers to the timing of the activity, towards a release. A release test can be either at the unit level, module or system and still be called release test.