flutter 模拟尾中的registerFallbackValue是什么

qoefvg9y  于 2023-01-06  发布在  Flutter
关注(0)|答案(1)|浏览(171)

我正在尝试在flutter中实现单元测试。为此我使用了mocktail库。我遇到了registerFallbackValue方法,但我似乎没有从文档中完全理解它。
你能更详细地解释一下这种方法吗?

ercv8c1e

ercv8c1e1#

为了支持任何()并捕获任意()mocktail必须注册默认的回退值,以便在使用参数匹配器时返回。开箱即用,它自动处理所有的原语类型,然而,使用参数匹配器代替自定义类型时,开发人员必须使用registerFallbackValue()提供默认返回值。每个类型只需调用一次registerFallbackValue(),因此建议将所有registerFallbackValue()调用放在setUpAll()中。
Fake帮助我们定义任何()。然后,我们在registerFallbackValue中设置类型()方法。对于模拟方法,我们将使用when mockito和mocktail包附带的方法。它接受一个方法,您可以使用thenReturn(),然后回答(),然后抛出()。如果您的方法接受任何参数,解决方案是任何()方法的重要部分。()方法的一个优点是它有一些预先注册的类型值,比如int、String等等。但是有时候你可能需要更多的类型。在这种情况下,您需要使用registerFallbackValue()方法来定义。

相关问题