System test - system tests are performed to determine if the integrated system already meets the requirements of the specification as a whole. During system testing the entire system is verified for compatibility with:
- functional requirements,
- non-functional requirements (performance, usability, reliability).
In other words the system is fully tested using black box techniques. Knowledge of the code or the internal structure of the application is not required during system tests. System tests are the first level on which the system is tested as a whole. At lower levels (module tests, integration tests), each component and interfaces between them are checked. System tests are performed on an environment similar to production one to map the actual conditions in which the system will operate.
Static testing techniques do not perform the test program. These are manual techniques (reviews) or automated (static analysis).
Reviews are a way of testing work products (including code) and can be done before performing a dynamic test. Defects detected during early stage software review are often much cheaper to remove than defects detected during subsequent tests (e.g defects found in requirements).
The review could be done entirely as a manual operation, but there is a tool support for this process. The main manual action is to examine the product and collect the comments on it. You can review any software product, including requirements specifications, design specifications, code, test plans, test specifications, test cases, test scripts, user instructions, or web pages.
The review advantages are: improved software productivity, reduced software development time, reduced time and cost of the testing, reduced defects and better communication. During inspections, it is possible to omissions (e.g in requirements), which is much less likely during dynamic testing.
Reviews, static analysis, and dynamic testing have the same goal - identifying defects. These are complementary activities: various techniques can find different types of defects effectively and efficiently. In contrast to dynamic testing, reviews find defects rather than failures.
Typical defects that are easier to find in reviews are: deviations from standards, requirements errors, design errors, insufficient maintainability, incorrect interface specifications. It is easier to find them in reviews than dynamic tests.
We invite You to cooperate with us!