Flutter, тестирование будущего, которое выдает ошибку, делает тест не загружаемым

#flutter #dart #flutter-test

#флаттер #dart #флаттер-тест

Вопрос:

Я пытаюсь запустить тест на флаттер, где a widget отображает страницу с ошибкой, когда Future предоставленный ему выдает ошибку (через FutureBuilder ).

Однако строка, в которой я создаю future, похоже, приводит к сбою теста.

 final futureError = Future.delayed(Duration(milliseconds: 20))
    .then((value) => throw Error());
 

с сообщением

  Failed to load "D:Projectsflutter....dart": Instance of 'Error'
 

Ответ №1:

Помещение его в тестовую функцию решило проблему

 testWidgets('...',
    (WidgetTester tester) async {
     await tester.runAsync(() async {
          final futureError = Future.error('error');
          // ...
 

(до этого это было в методе group)