Flutter测试不断询问已导入的软件包

时间:2019-10-22 19:26:24

标签: flutter dart

在开始开发测试之前,我正在尝试在Flutter上运行基线测试,并且已经无法请求已经包含的软件包了:

Compiler message:
 src/resources/news_api_provider_test.dart:17:5: Error: 'expect' is imported from both 'package:flutter_test/src/widget_tester.dart' and 'package:test_api/src/frontend/expect.dart'. expect(sum, 4);
^^^^^^

src/resources/news_api_provider_test.dart:12:3: Error: 'test' is imported from both 'package:flutter_test/src/test_compat.dart' and 'package:test_api/test_api.dart'. test('FetchTopIds returns a list of ids', () {
^^^^^^

我拥有所有这些软件包:

import 'package:flutter_test/flutter_test.dart';
import 'package:flutter_test/src/test_compat.dart';
import 'package:flutter_test/widget_tester.dart';
import 'package:test_api/test_api.dart';
import 'package:test_api/src/frontend/expect.dart':

void main() {
  test('FetchTopIds returns a list of ids', () {
    // Setup a test case
    final sum = 1 + 3;

    // expectation
    expect(sum, 4);
  });
}

这里有什么?我没有在flutter.io文档中看到任何内容来澄清正在发生的事情。

2 个答案:

答案 0 :(得分:1)

因此import 'package:test/test.dart';已被import 'package:test_api/test_api.dart';取代,但尚未纳入其文档中。

在替换掉它并注释掉我的news_api_provider.dart导入后,像这样:

// import 'package:news/src/resources/news_api_provider.dart';
import 'dart:convert';
import 'package:test_api/test_api.dart';
import 'package:test_api/src/frontend/expect.dart';
import 'package:http/http.dart';
import 'package:http/testing.dart';

我通过了基线测试。

答案 1 :(得分:0)

您可以尝试使用

之一吗
    import 'package:flutter_test/widget_tester.dart';

    import 'package:flutter_test/expect.dart';

类似地,尝试使用

之一
    import 'package:flutter_test/src/test_compat.dart';

    import 'package:flutter_test/src/test_api.dart';

让我们看看这是否可以解决编译错误。