> 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/mobile-testing/flutter-app-testing.md).

# Flutter App Testing

## Flutter App Testing

QApilot supports Flutter-specific recording setup and shared Android and iOS test cases. Select Flutter Driver before recording when your application requires Flutter context.

### How Flutter testing works

When starting a cloud recording session, choose an automation type. The default is UIAutomator2. Select **Flutter Driver** to initialize Flutter-specific dependencies.

After recording, organize steps in a test case. Flutter projects support OS tags at both test case and test step levels.

### Create a Flutter test

1. Configure [cloud recording and execution](/getting-started/set-up-qapilot/cloud-device-recording-and-execution.md).
2. Select the target OS and app source.
3. Choose **Flutter Driver** before launching the recording session.
4. Record and review the flow in the [test recorder](/test-creation/record-mobile-test-steps/create-test-steps-with-the-test-recorder.md).
5. Tag the test case and individual steps for Android, iOS, or both.

### Share one case across Android and iOS

A Flutter test case tagged **Both** can contain shared and platform-specific steps. QApilot executes only the applicable steps for the selected OS.

For example, a shared sign-in flow can use one Android-specific sign-in provider step and one iOS-specific provider step. Shared setup and assertion steps run on both platforms.

This approach reduces duplicate cases. It still requires deliberate platform-specific actions where the UI or behavior differs.

### Considerations

* Select Flutter Driver before the session starts.
* Use OS tags rather than assuming identical platform behavior.
* Re-record or update locators after meaningful UI changes.
* Review [cross-platform execution guidance](/mobile-testing/cross-platform-execution-for-android-and-ios.md) for Android and iOS differences.

### Related documentation

* [Cloud Recording and Execution](/getting-started/set-up-qapilot/cloud-device-recording-and-execution.md)
* [Android and iOS Mobile Testing Quickstart](/getting-started/android-and-ios-mobile-testing-quickstart.md)
* [Cross-Platform Execution for Android and iOS](/mobile-testing/cross-platform-execution-for-android-and-ios.md)
* [Run Mobile Test Plans](/execution-and-reliability/run-mobile-test-plans.md)
* [Mobile Test Execution Reports](/reports-security-and-release-readiness/mobile-test-execution-reports.md)
