相关疑难解决方法(0)

Flutter 黄金图像测试 diff 阈值

我正在利用黄金图像测试来测试颤动中的简单无状态小部件。每隔几次测试运行,我都会将以下错误打印到控制台:

\n
\xe2\x95\x90\xe2\x95\x90\xe2\x95\xa1 EXCEPTION CAUGHT BY FLUTTER TEST FRAMEWORK \xe2\x95\x9e\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\nThe following TestFailure object was thrown running a test (but after the test had completed):\n  Expected: one widget whose rasterized image matches golden image\n"goldens/mywidget.png"\n  Actual: _WidgetTypeFinder:<zero widgets with type "MyWidget" (ignoring offstage widgets)>\n   Which: Golden "goldens/mywidget.png": Pixel test failed, 0.04% diff detected.\n          Failure feedback can be found at\n/home/cirrus/project/test/widgets/failures\n\nWhen the exception was thrown, this was the stack:\n
Run Code Online (Sandbox Code Playgroud)\n

这令人愤怒有两个原因:

\n
    \n
  1. 没有任何变化,差异似乎是子像素渲染差异。这种情况不应该发生,因此黄金测试变得毫无用处。
  2. \n
  3. 即使出现上述消息,测试也会通过。所以 flutter 认为有一个例外,但甚至没有通过它的测试。
  4. \n
\n

有没有办法设置差异阈值,以便忽略差异低于 5% 的测试,以避免我的测试输出过于冗长和嘈杂?

\n …

flutter flutter-test

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

标签 统计

flutter ×1

flutter-test ×1