Slide 1

Slide 1 text

Flutter テストことはじめ Flutter Meetup Tokyo #2 @takattata #flutter_meetup_tokyo

Slide 2

Slide 2 text

Takasy (高島 友里) @takattata アプリエンジニア (iOS/Android) Swift/Kotlin ままのて

Slide 3

Slide 3 text

導入:質問です! Flutterのテスト 書いたこと ありますか?

Slide 4

Slide 4 text

導入 新しくやり始めた時は ひとまずテストを書いてみたくなる病 ※とはいえテストに詳しい訳ではない

Slide 5

Slide 5 text

テストの種類 1. Unit testing 2. Widget testing 3. Integration testing スライド全体の参照: Testing Flutter Apps 1 2 3 大きく3種類

Slide 6

Slide 6 text

・外部の依存関係にはモックを使う ・読み書き、UI、ユーザーのアクションは範囲外 ・目的:様々な条件下でロジック部分の正確性を検証すること Unit testing Unit package: flutter_test

Slide 7

Slide 7 text

Widget testing ・1つのウィジェットをテストする ・ユーザーのアクション、レイアウト、子のウィジェットを作れる 環境で行なう ・目的:ウィジェットのUIが期待通りに見え、やりとりするのを確 認すること Widget package: flutter_test

Slide 8

Slide 8 text

Integration testing ・シミュレータで実行する ・アプリのパフォーマンス検証もできる ・Espresso, UI Automation etc… => Flutter Driver ・目的:アプリが正しく機能していること、構成する全てのウィ ジェットが期待通りに統合されていること Integration package: flutter_driver

Slide 9

Slide 9 text

GitHub: Flutter gallery Flutter Galleryの テストコードを見てみよう!

Slide 10

Slide 10 text

Unit testing ↑ロジックはこのクラスにある

Slide 11

Slide 11 text

Unit testing

Slide 12

Slide 12 text

Widget testing ~Stateの内容 ・validate掛ける ・personにsetStateで設定 ・見た目作る

Slide 13

Slide 13 text

Widget testing ↓CommonFinders

Slide 14

Slide 14 text

Widget testing この上でnameFieldに#を入れてる

Slide 15

Slide 15 text

乞うご期待 Integration testing 学んだことはブログに書くと思います

Slide 16

Slide 16 text

良きテストライフを!