gpt4 book ai didi

flutter-test - Widget 测试 TextFormField obscureText 值

转载 作者:行者123 更新时间:2023-12-02 16:06:46 26 4
gpt4 key购买 nike

我似乎无法找到一种方法来测试 TextFormField 是否将 obscureText 设置为 true 或 false。

我知道 TextFormField 是 TextField 的包装器,而 obscureText 是 TextField 的属性,但想不出在我的测试中访问 obscureText 的方法。

因此,当我尝试访问 obscureText 时,我收到消息:没有为类型“TextFormField”定义 getter“obscureText”

有人知道如何测试 TextFormField 的 obscureText 属性吗?

  testWidgets(
'show and hide password fields',
(
WidgetTester tester,
) async {
await tester.pumpWidget(
materialWrapper(
child: emailSignUpScreen,
),
);
final Finder passwordTextFormField = find.byKey(
const Key(
'passwordTextFormField',
),
);
final TextFormField input =
tester.widget<TextFormField>(passwordTextFormField);
expect(input.obscureText, true);
},
);

最佳答案

TextFormField 使用 EditableText 来隐藏它,你可以这样做:

final passwordTextFormField = find.descendant(
of: find.byKey(const Key('passwordTextFormField')),
matching: find.byType(EditableText),
);
final input = tester.widget<EditableText>(passwordTextFormField);
expect(input.obscureText, isTrue);

关于flutter-test - Widget 测试 TextFormField obscureText 值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/69235950/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com