Runtime error detection
Appearance
Program execution |
---|
General concepts |
Types of code |
Compilation strategies |
Notable runtimes |
|
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
- Exceptions
- Resource leaks
- Memory leaks
- Security attack vulnerabilities (e.g., SQL injection)
- Null pointers
- Uninitialized memory
- Buffer overflows[1]
Runtime error detection tools can only detect errors in the executed control flow of the application.[2]
See also
References
- ^ 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