🔽
【Flutter】Widget test で DropdownButton を触ろうとすると落ちる
問題
上記 issue の通り。Widget test で DropdownButton の中の選択肢をこんなふうに押そうとすると、「対象のウィジェットが2つ見つかってどっち押せばいいのかわからんよ」みたいなエラーが起きて落ちる。
await tester.tap(find.text('なんかの選択肢'));
The finder "2 widgets with text "なんかの選択肢" (ignoring offstage widgets): [Text("なんかの選択肢", dependencies:
[DefaultTextStyle, MediaQuery]), Text("なんかの選択肢", dependencies: [MediaQuery, DefaultTextStyle])]" (used
in a call to "tap()") ambiguously found multiple matching widgets. The "tap()" method needs a single
target.
回避策
取り急ぎの解決策として、 .last
を使うと回避できる。
// 😌
await tester.tap(find.text('なんかの選択肢').last);
たぶんバグなので、そのうち直ると思う。
Discussion