是否可以对 widgetTest 进行截图?

Is it possible to screenshot a widgetTest?

我是 Flutter 的新手,我觉得如果我能看到 widgetTest 正在“渲染”什么,作为一种调试方法,事情可能会更容易一些。目前我还不完全理解 widgetTest 的机制,但我想知道是否有可能在 widgetTest 中间捕获实际输出渲染。

我说的是 widgetTest 而不是集成测试。

我想包裹 golden_toolkit 可能就是您要找的。您将使用 testGoldens 而不是 widgetTest。如果您想使用提供的方法 screenMatchesGolden.

确保 UI 中的非回归,您甚至可以比较屏幕截图

加入你的pubspec.yaml:

#This is a development environment dependency only
dev-dependencies:
  golden_toolkit: ^0.9.0

代码示例:

testGoldens('MyWidget test', (tester) async {
  await tester.pumpWidget(MyWidget());
  await screenMatchesGolden(tester, 'my_widget-example');
});

然后运行以下命令生成或重新生成您的参考图像:

flutter test --update-goldens

您可以查看有关 testGoldens here 的文档。