小编Mil*_*son的帖子

Flutter:如何测试 Widgets State 类中的方法?

我有一个小部件测试,用于我命名的抽屉DefaultDrawer。我还想测试一下我在里面所做的方法DefaultDrawerState.例如,

class DefaultDrawerState extends State<DefaultDrawer> {

  @override
  Widget build(BuildContext context) {
    // ..build..
  }

  Widget _circleAvatar() {
    // a method I want to test
  }
}
Run Code Online (Sandbox Code Playgroud)

_circleAvatar()flutter_test查找器似乎无法调用我的小部件或其状态中的方法时,如何测试该方法?

下面是我现在的测试文件,没有测试小部件内的方法:

void main() {
  testWidgets('Drawer Test', (WidgetTester tester) async {
    final key = GlobalKey<ScaffoldState>();
    await tester.pumpWidget(
        MaterialApp(home: Scaffold(key: key, drawer: DefaultDrawer())));

    // open drawer
    key.currentState.openDrawer();
    await tester.pump();

    // did drawer open?
    final drawerFinder = find.byType(Drawer);
    expect(drawerFinder, findsOneWidget);
  });
}
Run Code Online (Sandbox Code Playgroud)

unit-testing widget flutter

7
推荐指数
1
解决办法
3835
查看次数

Flutter TextInputType.number 不强制使用数字键盘

我不明白我在这里缺少什么。我将 TextInputType 设置为数字,并且仍然可以输入任何字母、特殊字符甚至是表情符号。我也试过让孩子成为 TextInputType.numberWithOptions() 小部件,它打开相同的键盘。这只是我手机上的错误吗?P20 Pro

      Row(
          children: <Widget>[
            Text('TextInputType.number:'),
            Flexible(
                child: TextField(
              maxLength: 3,
              keyboardType: TextInputType.number,
            )),
          ],
        )
Run Code Online (Sandbox Code Playgroud)

应该只有数字

flutter

5
推荐指数
2
解决办法
6853
查看次数

标签 统计

flutter ×2

unit-testing ×1

widget ×1