FlutterにおけるE2Eテストに「Maestro」を選んだ理由
最後はENECHANGE株式会社 エネルギークラウド事業部 エンジニアの片田優太氏が登壇した。Flutterにおけるテストは、3つに大別される。単一の関数・メソッド・クラスの検証をするUnit Test、単一のウィジェット(コンポーネント)を検証するWidget Test、アプリ全体や複数機能を結合した検証をするIntegration Testだ。
FlutterアプリでIntegration Testを実装する際には、複数のツールの選択肢がある。ENECHANGEでは実現したいことやメンバーの特性、実装コストなどを鑑みた結果、「integration_test」「Maestro」を候補として、どちらを導入するかの調査を行った。そのうえで、「自社のユースケースでは『Maestro』が有力」という結論に至ったという。
「Maestro」はシンプルに使えて効果的なモバイルUIテストフレームワークだ。このフレームワークでは、Flowsと呼ばれるyamlファイル形式で記述を行う。OS表示のUI(権限確認ダイアログなど)も操作でき、Maestro Cloudを使うことでCI上での実行が可能だ。さらに、処理の遅延を考慮しているため、基本的にsleep()を入れる必要がない。さらにセッション後半では「Maestro」活用のTipsについて説明がなされた。
そして片田氏は「利点の多いフレームワークのため、ぜひ『Maestro』を試してほしい」と推奨した。
こうして5名の発表が終了。イベント全体を通じて、有益な学びにあふれていた。