# 3.1 Static Testing Basics

In contrast to dynamic testing, which requires the execution of the software being tested, static testing relies on the manual examination of work products (i.e., reviews) or tool-driven evaluation of the code or other work products (i.e., static analysis). Both types of static testing assess the code or other work product being tested without actually executing the code or work product being tested.&#x20;

Static analysis is important for safety-critical computer systems (e.g., aviation, medical, or nuclear software), but static analysis has also become important and common in other settings. For example, static analysis is an important part of security testing. Static analysis is also often incorporated into automated software build and distribution tools, for example in Agile development, continuous delivery, and continuous deployment.

{% content-ref url="3.1-static-testing-basics/3.1.1-work-products-that-can-be-examined-by-static-testing" %}
[3.1.1-work-products-that-can-be-examined-by-static-testing](3.1-static-testing-basics/3.1.1-work-products-that-can-be-examined-by-static-testing)
{% endcontent-ref %}

{% content-ref url="3.1-static-testing-basics/3.1.2-benefits-of-static-testing" %}
[3.1.2-benefits-of-static-testing](3.1-static-testing-basics/3.1.2-benefits-of-static-testing)
{% endcontent-ref %}

{% content-ref url="3.1-static-testing-basics/3.1.3-differences-between-static-and-dynamic-testing" %}
[3.1.3-differences-between-static-and-dynamic-testing](3.1-static-testing-basics/3.1.3-differences-between-static-and-dynamic-testing)
{% endcontent-ref %}

