# 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.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.elentra.org/api/automated-testing.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
