在Flutter测试中打印小部件树

16
在Flutter中,我如何在widget单元测试中打印出当前的widget树,以便于调试理解UI的当前状态?(例如,在React/Enzyme中,我可以使用debug()。在Flutter中是否有类似的功能?)
1个回答

20

你可以使用debugDumpApp

这将基于Diagnosticable接口打印小部件树,Widget、RenderObject和Element都实现了该接口。

请注意,对于自定义小部件,您需要实现一个方法来显示它们的内容在该树中: debugFillProperties


看起来很有前途,但是当我调用它时它会抛出一个异常:https://gist.github.com/mdr/915a269a6a314d49f90041736480c5a4 - Matt R
2
考虑创建一个问题。那个断言非常不清楚。 - Rémi Rousselet
通过排除法,似乎是我使用的某些主题自定义存在问题。 我会尝试制作一个最小可复现的测试用例,并将其提交为错误。但无论如何,都非常有效,谢谢! - Matt R

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接