- Web Engineer
- アウトバウンド営業
- Webエンジニア(リーダー)
- Other occupations (17)
- Development
- Business
[Flutter] integration test でiOS/Androidアプリのテストを自動化!(導入編)【株式会社ライトコード】
※弊社エンジニアの記事になります。
はじめに
皆さん、テスト、書いてますか。
ユニットテストならぼちぼち、E2Eテストは全く未経験!な自分が
Flutter integration testでFlutterアプリのE2Eテストを自動化してみました。
- どうやって導入する?
- 実際どんな感じ?
を纏めて見たので、結合テストの自動化に興味がある方はぜひ参考にしてみてください!
初めてでも”理解る”E2Eテスト
ユニットテストでは機能単位でテストを行いますが、
E2Eテストは、全システムを結合した状態で入力を行うことで、システム全体のテストを行います
Flutter integration testでは、E2Eテスト(もちろん結合テストでも)の入力にあたるFlutterアプリのユーザー操作部分を自動化することができます!
Flutter integration test とは
FlutterSDKに含まれている、Flutter標準のテスト機能です。
以下は、他にもいくつか自動テストツールを試した上での感触です。
メリット案外Flutterに正式対応している自動テストツールは少ない(2023年7月現在)ので、公式なのは保守を考えても嬉しい…!同じテストコードでiOS/android両方のテストが可能。UI要素の取得も容易です!デメリットDartで記述を行うため、非技術者がテストを書くのはかなり難しいintegration_testから、Flutterアプリ以外の他アプリやOS機能を触れないため、色々と回避策が必要
導入方法
今回は、Flutter公式のサンプルアプリに導入して、iOS/Androidエミュレータでテストを成功させることを目標にします。
もちろん既存のアプリにも導入可能ですが、色んな機能が実装されているアプリでテストを通すためにはなかなか大変なので…ぜひ一度、サンプルアプリでどんな風に動くのか見てみてください!
※flutter driverパッケージを利用する方法もありますが、flutter driverはintegration_testパッケージができる前に使われていたもので、基本的にはintegration_testに置き換わっています
flutterプロジェクトを準備
好きなディレクトリで以下コマンドを実行して、プロジェクトを準備します
$ flutter create <project name>
上で作ったFlutterプロジェクトのpubspec.yamlファイルを開き、
dev_dependenciesの項目にintegration_testパッケージを追加します。
dev_dependencies:
flutter_test:
sdk: flutter
integration_test: #この二行を追加
sdk: flutter #
※integration_testパッケージは元々FlutterSDKに含まれているので、追加でインストールなどは不要です
ここで依存関係を追加しておくだけで使用できます!
記事の続きは下のリンクをクリック!
https://rightcode.co.jp/blog/information-technology/flutter-integration-test-ios-android
【2024年卒】新卒採用エントリー開始しました!
特設ページはこちら:https://rightcode.co.jp/recruit/entry-2024
インターン募集!未経験ok、チャレンジ精神ある方求む
メディア運営:https://rightcode.co.jp/recruit/intern-media
社長と一杯飲みながらお話しませんか?(転職者向け)
特設ページはこちら: https://rightcode.co.jp/gohan-sake-president-talk
もっとワクワクしたいあなたへ
現在、ライトコードでは「WEBエンジニア」「スマホアプリエンジニア」「ゲームエンジニア」、「デザイナー」「WEBディレクター」「エンジニアリングマネージャー」「営業」などを積極採用中です!
有名WEBサービスやアプリの受託開発などの企画、開発案件が目白押しの状況です。
- もっと大きなことに挑戦したい!
- エンジニアとしてもっと成長したい!
- モダンな技術に触れたい!
現状に満足していない方は、まずは、エンジニアとしても第一線を走り続ける弊社代表と気軽にお話してみませんか?
ネット上では、ちょっとユルそうな会社に感じると思いますが(笑)、
実は技術力に定評があり、沢山の実績を残している会社ということをお伝えしたいと思っております。
- ライトコードの魅力を知っていただきたい!
- 社風や文化なども知っていただきたい!
- 技術に対して熱意のある方に入社していただきたい!
一度、【Wantedly内の弊社ページ】や【コーポレートサイト】をのぞいてみてください。
【コーポレートサイト】https://rightcode.co.jp/
【採用募集】https://rightcode.co.jp/recruit(こちらからの応募がスムーズ)
【wantedlyぺージ】https://www.wantedly.com/companies/rightcode