はじめに
FlutterでWidgetTestを書いていて、特定の場所でのみtester.tapが反応しなかった。
1週間くらいハマっていたがようやく解決できたので備忘録として残しておく。
なお、基本的なテストの書き方の説明は行わないので、ご了承いただきたく。
オチ
先にオチを書いてしまうと、テスト環境の画面サイズが800x600と小さかったために
Expanded内のボタン表示エリアがまるっと潰れてタップが反応しなかった。
実機やエミュレータで確認する際は1080x1920の端末で見ていたので全く気づかなかった。
# 対策
テスト環境の画面サイズを大きくする。
WidgetsBinding.instance.renderView.configuration = TestViewConfiguration(size: const Size(1080, 1920));
これをsetupにいれてやれば画面サイズが1080x1920となる。
まとめ
マジでこれに気づくまで1週間位かかってすごいつらかったので、同じ罠にハマる人が一人でも減れば幸いである。
あとデフォルトでこんな微妙なサイズを設定するのやめてくれ…