Code review, which involves a detailed examination of the software's source code to identify potential vulnerabilities, weaknesses, or compliance issues.
Static testing, which focuses on analyzing the software's structure, design, and code without executing it, and is typically performed through manual or automated reviews.
Dynamic testing, which involves evaluating the software's behavior and response during runtime by executing various inputs and scenarios.
White box testing, which requires access to the internal workings and source code of the software to assess its internal components, logic, and implementation details.