> For the complete documentation index, see [llms.txt](https://docs.elentra.org/api/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.elentra.org/api/automated-testing.md).

# Automated Testing

- [Getting Started](https://docs.elentra.org/api/automated-testing/getting-started.md): This section is on how to run, create and edit automated tests for the Elentra API repository.
- [Setting up a testing environment](https://docs.elentra.org/api/automated-testing/getting-started/setting-up-a-testing-environment.md): Steps on how to setup a testing environment to run the API automated tests
- [Running Automated Tests](https://docs.elentra.org/api/automated-testing/getting-started/running-automated-tests.md): The page demostrates the mutliple ways to run the automated functional tests for the API
- [Seed Data](https://docs.elentra.org/api/automated-testing/seed-data.md)
- [Folder Structure](https://docs.elentra.org/api/automated-testing/seed-data/folder-structure.md): Functional tests require data already populated in the database for the endpoints to return a response. Seed data allows pre-determined data to be populated in the database, allowing accurate asserts.
- [Creating Seed Data](https://docs.elentra.org/api/automated-testing/seed-data/creating-seed-data.md): Steps in creating a new seed data file
- [Functional Tests](https://docs.elentra.org/api/automated-testing/functional-tests.md): Functional tests are any tests in which the end user interacts with the application. In the case of the API
- [Creating a Functional Test File](https://docs.elentra.org/api/automated-testing/functional-tests/creating-a-functional-test-file.md)
- [Testing HTTP Verbs](https://docs.elentra.org/api/automated-testing/functional-tests/testing-http-verbs.md)
- [Creating an HTTP Test](https://docs.elentra.org/api/automated-testing/functional-tests/testing-http-verbs/creating-an-http-test.md)
- [GET Requests](https://docs.elentra.org/api/automated-testing/functional-tests/testing-http-verbs/get-requests.md)
- [POST / PUT / DELETE Requests](https://docs.elentra.org/api/automated-testing/functional-tests/testing-http-verbs/post-put-delete-requests.md)
- [GraphQL Requests](https://docs.elentra.org/api/automated-testing/functional-tests/testing-http-verbs/graphql-requests.md)
- [Asserting API Response](https://docs.elentra.org/api/automated-testing/functional-tests/asserting-api-response.md): Automation tests are only validating if they assert the expected results. Asserts are used to verify the expected results from the endpoint.
- [Annotations](https://docs.elentra.org/api/automated-testing/functional-tests/annotations.md): Elentra's API contains custom annotations for functional tests that help developers easily create and manage tests.
- [Code Style Linting](https://docs.elentra.org/api/automated-testing/code-style-linting.md): Elentra API uses php-cs-fixer to verify that code styles are enforced.
