Я пытаюсь получить отчет о покрытии для тестируемого файла, но мне не удается.
Я создал новый проект библиотеки Dart под названием FooBar со следующими файлами:
FooBar/
├── lib
│ ├── FooBar.dart
│ └── src
│ └── FooBar_base.dart
└── test
└── FooBar_test.dart
Для генерации отчета о покрытии я звоню dart --pause-isolates-on-exit --enable-vm-service=47114 test/FooBar_test.dart
, а на другой консоли звоню pub global run coverage:collect_coverage --uri=http://127.0.0.1:47114/ -o coverage.json --resume-isolates
.
С помощью этих двух команд я получаю огромный JSON-файл.
Пакет coverage
также имеет форматтер. Поэтому я звоню pub global run coverage:format_coverage -i coverage.json
. Я получаю хороший форматированный вывод, но не тот файл. Он печатает тестовый файл, но не тестируемый файл.
$ pub global run coverage:format_coverage -i coverage.json
/Users/ralphbergmann/development/dart/FooBar/test/FooBar_test.dart
|import 'package:FooBar/FooBar.dart';
|import 'package:test/test.dart';
|
1|void main() {
2| group('A group of tests', () {
| Awesome awesome;
|
2| setUp(() {
1| awesome = new Awesome();
| });
|
2| test('First Test', () {
2| expect(awesome.isAwesome, isTrue);
| });
| });
|}
Как получить отформатированный отчет о тестируемом файле? Я знаю, что есть некоторые опции для команды coverage:format_coverage
, но они не решили мою проблему. Например, я добавил опцию --packages=.packages
, в результате чего я получаю отформатированный отчет для всех файлов Dart, а не только для моих собственных.