Preparing the Flutter App
For WebdriverIO and Appium to inspect and interact with internal elements inside the Flutter canvas, the application must expose a communication channel. This is achieved by enabling Flutter's test extension in the application's source code.
Automation engineers (QAs) often do not have direct access to the Flutter app codebase. If you do not maintain the app code yourself, share this page with your development team so they can add the flutter_driver extension and provide a test build (.apk, .app, or .ipa).
Flutter's recommended testing path for newer apps is the integration_test package. However, the Appium Flutter Driver integrates with the legacy flutter_driver extension, which is why this guide uses enableFlutterDriverExtension().
Configuring pubspec.yaml
Add flutter_driver under dev_dependencies in your Flutter project's pubspec.yaml file:
dev_dependencies:
flutter_test:
sdk: flutter
flutter_driver:
sdk: flutter
Fetch the dependencies:
flutter pub get