> For the complete documentation index, see [llms.txt](https://docs.qapilot.io/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.qapilot.io/ai-and-core-concepts/qapilot-overview.md).

# QApilot Overview

## What is QApilot?

QApilot is an AI-native mobile testing platform for Android, iOS, and Flutter apps. Teams use it to explore, create, run, and review automated mobile tests on local or supported cloud devices.

QApilot supports recorded test steps, autonomous Android exploration, human-in-the-loop authoring, and evidence-rich execution reports. It also integrates with cloud device providers, CI/CD workflows, and collaboration tools.

Use QApilot to build repeatable coverage for critical mobile flows. Review reports, artifacts, and healed steps to investigate failures and maintain tests across releases.

***

Core concepts:

* [**Record Mobile Test Steps**](/test-creation/record-mobile-test-steps.md): Record reusable interactions, then organize them into [test suites](/test-creation/test-suite.md).
* [**Run Mobile Test Plans**](/execution-and-reliability/run-mobile-test-plans.md): Configure and execute coverage on local or supported cloud devices.
* [**Cloud Device Recording and Execution**](/getting-started/set-up-qapilot/cloud-device-recording-and-execution.md): Upload mobile builds, select a provider connection, and start cloud sessions.
* [**Mobile Test Execution Reports**](/reports-security-and-release-readiness/mobile-test-execution-reports.md): Investigate outcomes with step-level evidence and artifacts.
* [**API Test Automation**](/test-creation/api-test-automation.md): Configure and run API requests and collections alongside mobile testing workflows.

***

## Getting Started with Automation Testing

Start with a project, an app source, and a local or cloud device connection. QApilot supports two primary execution environments:

### [Local Device Testing](/getting-started/set-up-qapilot/local-recording-and-execution.md)

Local device testing is testing mobile applications directly on physical devices you can access. Unlike cloud-based testing platforms, where tests run on remotely hosted devices, local device testing requires testers to interact directly with the hardware. This method is beneficial for validating real-world interactions and device-specific behaviors.

### [Cloud Device Testing](/getting-started/set-up-qapilot/cloud-device-recording-and-execution.md)

Cloud Device Testing involves running automated test scripts on real devices and emulators hosted in the cloud device farm. Since these devices are hosted on cloud-based servers → cloud, they’re accessible online at all times. Such a testing infrastructure is called a real device cloud → device farm which facilitates effective cloud testing.

**QApilot** integrates with cloud device providers such as BrowserStack and Sauce Labs. For cloud-provider setup, see [Integrations](/integrations.md).

***

### Cloud Architecture:

This image shows a cloud-based architecture for an automation testing solution **QApilot**. Here’s a breakdown of the components and how they interact:

<figure><img src="/files/hQrixtRJ23WpVtDUHUAD" alt=""><figcaption></figcaption></figure>

1. **Client Apps**:
   * **App UI Interface**: The front-end interface users interact with.
   * QApilot supports local device execution. See [Local Recording and Execution](/getting-started/set-up-qapilot/local-recording-and-execution.md) for setup and connection steps.
2. **API Layer**:
   * **Core APIs**: Core functionality exposed as APIs for client apps to interact with the backend services.
   * **Webhooks**: Enable asynchronous communication and event-based updates between the system and external integrations.
3. **Microservices**:
   * **Authentication**: Manages user login and security protocols.
   * **Tenant Manager**: Manages multi-tenant environments, allowing multiple clients or users to operate in isolated segments.
   * **Device Management**: Handles devices used for testing.
   * **Application Data Manager**: Manages application data required for test cases and configurations.
   * **Visual and Text AI Modules**: AI-powered modules for image recognition and text analysis in testing.
   * **Reporting**: Generates reports on test execution and results.
   * **Executions Manager**: Manages test execution workflow.
   * **Network Tracer**: Monitors and logs network traffic for analysis during tests.
   * **Others**: Placeholder for additional microservices that support other functionalities.
4. **Infrastructure Layer:**
   * **Cloud Storage**: Stores large files or test data.
   * **Database**: Stores application data, configurations, test results, etc.
   * **Logs**: Maintains logs for monitoring and troubleshooting.
   * **Cache**: Used for caching frequently accessed data to improve performance.
5. **Integrations**:
   * **Device Farms**: External device farms (BrowserStack, Sauce Labs) for testing across different devices and configurations.
   * **CI/CD**: Continuous integration and deployment help automate the testing workflow.
   * **Test Management**: Teams manage test cases, suites, and plans in QApilot.
   * **Defect Management**: The [Jira integration](/integrations/jira.md) supports issue creation from test workflows.
   * **Social Apps**: Integration with communication platforms like Microsoft Teams for notifications and updates.

This architecture supports modularity, scalability, and integration with various testing and development tools, enabling efficient automation testing workflows and management across different devices and environments.
