ken1flanのブログ

自己紹介・最近やってることなどを書くつもりです。

ゆめみ×MagicPod Flutterアプリのテストはどーやる? に参加しました

ゆめみ×MagicPod Flutterアプリのテストはどーやる?に参加しました。

trident-qa.connpass.com

感想など

(Flutterテストの)沼にハマってやってみた

  • 趣味でやっていたので、オレオレテストでしかやってませんでした。
  • エミュレータを使ったテストのためのツールやサービスがわかったよかったです。
  • テストの使い分けも。

FlutterアプリのE2Eテストツール事情

speakerdeck.com

  • E2Eテストツールがいろいろあること、それぞれの長所短所がわかってよかったです。
  • MagicPod、使ってみたい気持ちになりました。

パネルトーク

  • 「1つめのテストが大事」は自分も実感しました。
    • 今の職場にテストを持ち込んだときに、自分が最初にいくつか書いたら、なんなく続いてくれました。
    • ひとつめのテストって、環境整備も含むし、結構大変ですよね。
  • Flutter Webのクセが強い理由もわかってよかったです…。まさかcanvasとは…。

全体を通して

  • 結構ひとりでやることが多いので、テストは欠かせないと思ってます。なのに、不慣れなせいもあってFlutterのテストの情報を集められずに結構困ってました…。
  • 今回参加してよかったです!ありがとうございました!

メモ

  • 聞きながらメモしたもの、そのままです…。

(Flutterテストの)沼にハマってやってみた

  • 脱出ゲームの進捗管理アプリ…!
    • たしかにこういうの、ぴったりかも。
  • unit, widget, integration の3種
  • unit
  • widget
    • UIが期待通りに表示されること
    • golden testも含まれる
  • integration
  • テストの重要性
    • 考慮漏れのパターンを見つける!
  • カバレッジ80〜85%あたりが普通くらい
    • 今うち、85.85%だ…!
  • widgetテストはエミュレータなしで動くから割りとよい
  • integrationテストはエミュレータ/実機を使うので…OS依存などあるときは重要。
  • テスト効率化ツール
    • data_fixture_dart
    • riverpodのモックオブジェクト
    • gicen_when_then
  • 抽象度 unit < widget < integration
  • integration

FlutterアプリのE2Eテストツール事情

  • MagicPod
    • Web / モバイル
    • ノーコード
  • UIテスト
    • ユーザの要求に答えられているか?
  • Flutter公式パッケージ
    • test
    • flutter_test
    • (flutter_driver)
    • integration_test
  • E2Eテストツール
    • Appium
      • 昔はFlutter UI苦手だった
    • Patrol
      • テストフックが…

パネルトーク

  • 最初のテストが大事。2つめ以降は広げていくだけなので、とっつきやすい。わかる!
  • Flutter webはいろんなところで非対応 ← Canvasで書かれてるから><