【问题标题】:"Bad state: Cannot call `when` within a stub response", "type 'Null' is not a subtype of type [...]"“错误状态:无法在存根响应中调用 `when`”,“类型 'Null' 不是类型 [...] 的子类型”
【发布时间】:2021-12-16 23:15:35
【问题描述】:

我为我的 Flutter 应用程序编写了一些单元和小部件测试。 当从 VSCode 的测试窗口调用时,它们都通过了:

但是当我从终端调用 flutter test 或在 Android Studio 中运行测试时,它们没有通过并且总是抛出相同的 2 个错误,如下所示:

VSCode 有什么不同,它们都在那里传递但从终端失败?

【问题讨论】:

    标签: flutter testing visual-studio-code mockito flutter-test


    【解决方案1】:

    如果您使用具有 null 安全性的 dart/flutter 并因此使用具有 null 安全性的 mockito,您必须严格遵守以下规定: https://github.com/dart-lang/mockito/blob/master/NULL_SAFETY_README.md

    我的导入中有一个简单的错误,我没有使用自动生成的 MockRepository,而是使用了一些不安全的旧文件!如果您遇到问题标题中的错误,我 100% 确信您没有正确实现用于 null 安全的 mockito。

    为什么在 VSCode 上通过测试仍然是个谜,但对我来说并不重要,因为它们现在无处不在。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2022-07-10
      • 2023-01-12
      • 2022-08-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多