[Flutter][Appium] A note about iOS 14, profile build

Flutter development changes in iOS 14. So, Flutter app can run as debug mode only when the app is built by flutter command or Xcode directly. It does not work when someone launches the app via icon or somehow.

https://flutter.dev/docs/development/ios-14

It prevents testing the app under test over Appium since https://github.com/truongsinh/appium-flutter-driver connects to Dart VM getting the WebSocket url in the log.

On a real device case, flutter can build the app under test as profile mode. The mode can launch via Appium with the log. Thus, the flutter driver can launch the app with bundleId capability and attache to the DartVM over the WebSocket. Then, you can send commands to the Dart VM for testing.

Ideally, Appium want to conduct tests as blackbox completely for the Flutetr app as well, but it cannot. Some elements are not able to detect over XCTest/UIAutomator2/Espresso so far.

Leave a Comment

This site uses Akismet to reduce spam. Learn how your comment data is processed.