Testing 如何修复get_版本插件导致的缺少插件异常(package_info)?

Testing 如何修复get_版本插件导致的缺少插件异常(package_info)?,testing,plugins,dart,flutter,Testing,Plugins,Dart,Flutter,我有一个颤振应用程序,我正在编写一个测试用例,将当前版本的应用程序与可用的最新版本进行比较。该函数只接受currentVersion和latestVersion的值,并根据currentVersion返回true或false。我假设您使用的是Android Studio或类似工具,然后单击“播放”按钮运行测试。 我试过了,结果和你一样。 但是,通过单击此按钮(插件需要此按钮),测试似乎不会在设备上运行,因此通过从终端运行并指定文件,测试似乎运行良好: flutter run test.dart

我有一个颤振应用程序,我正在编写一个测试用例,将当前版本的应用程序与可用的最新版本进行比较。该函数只接受currentVersion和latestVersion的值,并根据currentVersion返回true或false。我假设您使用的是Android Studio或类似工具,然后单击“播放”按钮运行测试。 我试过了,结果和你一样。 但是,通过单击此按钮(插件需要此按钮),测试似乎不会在设备上运行,因此通过从终端运行并指定文件,测试似乎运行良好:

flutter run test.dart
您需要在main()的第一行添加以下内容,否则会出现不同的错误:

TestWidgetsFlutterBinding.ensureInitialized();
最终代码:

import 'package:flutter_test/flutter_test.dart';
import 'package:get_version/get_version.dart';
import 'package:pub_semver/pub_semver.dart';

void main() {
  TestWidgetsFlutterBinding.ensureInitialized();

  test('checkAppVersion', () async {
    String currentVersion = await GetVersion.projectVersion;
    String latestVersion = '0.0.1';
    expect(checkAppVersionTest(Version.parse(currentVersion), Version.parse(latestVersion)), false);
  });
}

bool checkAppVersionTest(Version currentVersion, Version latestVersion) {
  bool updateRequired = false;
  if (currentVersion < latestVersion) {
    updateRequired = true;
  }
  return updateRequired;
}
导入“包:颤振测试/颤振测试.dart”;
导入“package:get_version/get_version.dart”;
导入“包:pub_semver/pub_semver.dart”;
void main(){
TestWidgetsFlutterBinding.ensureInitialized();
测试('checkAppVersion',()异步{
字符串currentVersion=await GetVersion.projectVersion;
字符串latestVersion='0.0.1';
expect(checkAppVersionTest(Version.parse(currentVersion)、Version.parse(latestVersion)),false);
});
}
bool checkAppVersionTest(当前版本、最新版本){
bool updateRequired=false;
如果(当前版本<最新版本){
updateRequired=true;
}
返回所需的更新;
}
如果任何人在正常运行应用程序时遇到类似问题,请尝试终止应用程序并运行
flatter clean
在终端中。

我有相同的问题,您找到解决方案了吗?相同的问题。有解决办法吗?没有,还没找到解决办法。
import 'package:flutter_test/flutter_test.dart';
import 'package:get_version/get_version.dart';
import 'package:pub_semver/pub_semver.dart';

void main() {
  TestWidgetsFlutterBinding.ensureInitialized();

  test('checkAppVersion', () async {
    String currentVersion = await GetVersion.projectVersion;
    String latestVersion = '0.0.1';
    expect(checkAppVersionTest(Version.parse(currentVersion), Version.parse(latestVersion)), false);
  });
}

bool checkAppVersionTest(Version currentVersion, Version latestVersion) {
  bool updateRequired = false;
  if (currentVersion < latestVersion) {
    updateRequired = true;
  }
  return updateRequired;
}