How to test Flutter widgets on different screen sizes?

后端 未结 5 2006
长情又很酷
长情又很酷 2020-11-29 09:09

I have a Flutter widget which shows extra data depending on the screen size. Does anyone know a way of testing this widget on multiple different screen sizes?

I\'ve

5条回答
  •  温柔的废话
    2020-11-29 09:59

    Not sure why but solution of @rémi-rousselet didn't work for me. I've had to specify screen size using binding.window.physicalSizeTestValue and binding.window.devicePixelRatioTestValue so that output is fully deterministic

    I've added a little bit more code for flutter beginners like me. Check this:

    void main() {
    
      final TestWidgetsFlutterBinding binding =
        TestWidgetsFlutterBinding.ensureInitialized();
    
      testWidgets("Basic layout test (mobile device)", (tester) async {
        binding.window.physicalSizeTestValue = Size(400, 200);
        binding.window.devicePixelRatioTestValue = 1.0;
    
        await tester.pumpWidget(new MyApp());
    
        expect(find.byType(MyHomePage), findsOneWidget);
        // etc.
      });
    }
    

提交回复
热议问题