我已经在 setUp() 方法中分配了变量,但仍然抛出错误。如果我将 MockBuildContext 设置为可为空,则测试运行成功,但这不是正确的方法。有什么我错过的或建议更好的方法来解决这个问题。
看我的代码:
void main(){
MockBuildContext mockBuildContext;
setUpGetIt(testing: true);
setUp((){
mockBuildContext = MockBuildContext();
});
group("banks test", (){
test("Calling fetchAllBanks returns instance of BanksModel list", () async {
banksBloc.init(mockBuildContext);
await banksBloc.fetchAllBanks();
banksBloc.allBanks?.listen((event) {
expect(event, isInstanceOf<List<BanksModel>>);
});
});
});
}
Run Code Online (Sandbox Code Playgroud)
我的错误日志:
C:\Src\flutter\bin\flutter.bat --no-color test --machine --start-paused test\unit_test\system\bank_configuration\banks_test.dart
Testing started at 18:52 ...
test/unit_test/system/bank_configuration/banks_test.dart:24:22: Error: Non-nullable variable 'mockBuildContext' must be assigned before it can be used.
banksBloc.init(mockBuildContext);
^^^^^^^^^^^^^^^^
Run Code Online (Sandbox Code Playgroud)