Runtime error detection
|Types of code|
|Notable compilers & toolchains|
Runtime error detection is a software verification method that analyzes a software application as it executes and reports defects that are detected during that execution. It can be applied during unit testing, component testing, integration testing, system testing (automated/scripted or manual), or penetration testing.
Runtime error detection can identify defects that manifest themselves only at runtime (for example, file overwrites) and zeroing in on the root causes of the application crashing, running slowly, or behaving unpredictably. Defects commonly detected by runtime error detection include:
- Race conditions
- Resource leaks
- Memory leaks
- Security attack vulnerabilities (e.g., SQL injection)
- Null pointers
- Uninitialized memory
- Buffer overflows
Runtime error detection tools can only detect errors in the executed control flow of the application.
- ^ Runtime Error Detection by Parasoft
- ^ MUST: A Scalable Approach to Runtime Error Detection in MPI Programs by Tobias Hilbrich, Martin Schulz, Bronis R. de Supinski, Matthias S. Müller, in Tools for High Performance Computing 2009