> For the complete documentation index, see [llms.txt](https://qatesting.gitbook.io/qa/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://qatesting.gitbook.io/qa/manual-testing/types/black-box-testing/functional-testing/system-testing.md).

# System Testing

To check the end-to-end flow of an application or the software as a user is known as **System testing**. In this, we navigate (go through) all the necessary modules of an application and check if the end features or the end business works fine, and test the product as a whole system.

{% hint style="info" %}
It is **end-to-end testing** where the testing environment is similar to the production environment.
{% endhint %}

<div data-full-width="true"><figure><img src="https://static.javatpoint.com/tutorial/software-testing/images/system-testing.png" alt=""><figcaption></figcaption></figure></div>

**System testing falls under Black Box Testing** as it includes testing of the external working of the software. Testing follows user's perspective to identify minor defects.

System Testing includes the following steps.

* Verification of input functions of the application to test whether it is producing the expected output or not.
* Testing of integrated software by including external peripherals to check the interaction of various components with each other.
* Testing of the whole system for End to End testing.
* Behavior testing of the application via a user's experience
