相关疑难解决方法(0)

如何在不同的屏幕尺寸上测试Flutter小部件?

我有一个Flutter小部件,根据屏幕大小显示额外的数据.有没有人知道在多种不同的屏幕尺寸上测试这个小部件的方法?

我已经浏览了widget_tester源代码,但找不到任何东西.

flutter flutter-test

11
推荐指数
6
解决办法
1414
查看次数

Flutter Widget 测试无法正确模拟不同的屏幕尺寸

在部署我的 Flutter 应用程序之前,我想在多个屏幕尺寸上对其进行测试,以检查是否有Renderflex overflow适用于较小屏幕的应用程序。

但是当我在小部件测试期间第一次修改屏幕尺寸以匹配我在开发期间使用的设备时,我意识到小部件测试已经抛出Render overflow错误,即使它在真实设备上没有这样的错误。所以我问了这个问题How to fix A RenderFlex overflowed during Widget Test

但我在进一步调查并使用 Flutter 黄金功能测试后,将 png 从小部件测试中提取出来,我将问题缩小到文本大小的差异。

您可以在可重复步骤清楚地看到下面的窗口小部件文本中的文字是更强壮(右侧)比在真实设备的实际文本(左侧)。

在此处输入图片说明

Widget 测试期间较大的文本大小会导致RenderFlex error我的应用程序中出现 。

重现步骤:

  1. 现在连接一个真实的设备并运行此代码 flutter run

lib/main.dart

import 'package:flutter/material.dart';

void main() {
  runApp(
    MaterialApp(
      home: TextScaleComparaison(),
    ),
  );
}

class TextScaleComparaison extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    final widget = Scaffold(
      body: LayoutBuilder(
        builder: (BuildContext context, BoxConstraints constraints) {
          final width = MediaQuery.of(context).size.width;
          final height …
Run Code Online (Sandbox Code Playgroud)

testing unit-testing dart flutter

6
推荐指数
1
解决办法
1951
查看次数

标签 统计

flutter ×2

dart ×1

flutter-test ×1

testing ×1

unit-testing ×1