我在生成coverage.lcov
时遇到了麻烦
在单线程中运行github action
(使用melos)
我认为问题可能是由覆盖引起的,但也有可能
我错过了一些突破性的变化(去年我很忙)
这是melos.yaml
的相关部分
test:format:
run: melos exec -c 1 -- format_coverage --lcov --check-ignore --in=coverage --out=coverage.lcov --packages=.packages --report-on=lib
description: Format Dart tests' coverage data
select-package:
flutter: false
dir-exists: test
这是失败的coverage
命令
format_coverage --lcov --check-ignore --in=coverage --out=coverage.lcov --packages=.packages --report-on=lib
使用这些日志
261
Unhandled exception:
262
FormatException: Unexpected character (at character 1)
263
# This file is deprecated. Tools should instead consume
264
^
265
#0 throwError (package:package_config/src/errors.dart:32:35)
266
#1 parsePackageConfigString (package:package_config/src/package_config_json.dart:54:12)
267
#2 PackageConfig.parseString (package:package_config/src/package_config.dart:94:7)
268
#3 Resolver._parsePackages (package:coverage/src/resolver.dart:115:23)
269
#4 Resolver.create (package:coverage/src/resolver.dart:34:13)
270
#5 HitMap.parseJson (package:coverage/src/hitmap.dart:191:46)
271
#6 HitMap.parseFiles (package:coverage/src/hitmap.dart:212:41)
272
#7 main (file:///home/runner/.pub-cache/hosted/pub.dartlang.org/coverage-1.5.0/bin/format_coverage.dart:66:31)
273
#8 _delayEntrypointInvocation.<anonymous closure> (dart:isolate-patch/isolate_patch.dart:295:32)
274
#9 _RawReceivePortImpl._handleMessage (dart:isolate-patch/isolate_patch.dart:192:12)
279
--------------------------------------------------------------------------------
生成coverage.lcov
的正确命令是什么?
这里是日志
请试试这个
dart pub global run coverage:format_coverage --packages=.dart_tool/package_config.json --report-on=lib --lcov -i coverage -o coverage/lcov.info
查看详细信息。
结果是命令dart test --coverage="coverage"
和flutter test --coverage
已经输出了一个lcov.info
文件
(我很确定不是总是这样)
所以根本不需要运行format_coverage
(codecov/codecov-action@v3
很好地接受了)