В Нью-Йорке нет данных. nyc_output/out.json = Angular18 + Cypress + покрытие кода

Минимальное воспроизводимое РЕПО = https://github.com/david-kirkland/ng18-code-coverage

Я несколько раз начинал с нуля и не могу получить тестовое покрытие e2e, используя Angular 18, cypress, @cypress/code-coverage, @cypress/schematic, nyc (также известный как Стамбул) и т. д.

Кажется, он инструментирует код, потому что я получаю данные в .nyc_output/ как динамически генерируемый файл...

...но данные никогда не перемещаются в .nyc_output/out.json...

Я предполагаю, что это то, что @cypress/code-coverage использует, потому что отчеты пусты...

Cypress также выдает ошибку: Did you forget to instrument your application?...

Я прочитал всю документацию, которую смог найти, и следовал всем руководствам, пробуя различные методы. Мне еще предстоит найти рабочий пример покрытия кода тестирования Cypress e2e с помощью Angular 18. Совместимы ли они вообще?

Какие скрипты выполняются? служить: сср + е2е?

P.St.Pierre 19.07.2024 09:06

В минимально воспроизводимом репо (ссылка выше) я запускал... tsc && nyc ng e2e.

Kirkland 19.07.2024 13:36
Тестирование функциональных ngrx-эффектов в Angular 16 с помощью Jest
В системе управления состояниями ngrx, совместимой с Angular 16, появились функциональные эффекты. Это здорово и делает код определенно легче для...
Angular и React для вашего проекта веб-разработки?
Angular и React для вашего проекта веб-разработки?
Когда дело доходит до веб-разработки, выбор правильного front-end фреймворка имеет решающее значение. Angular и React - два самых популярных...
Эпизод 23/17: Twitter Space о будущем Angular, Tiny Conf
Эпизод 23/17: Twitter Space о будущем Angular, Tiny Conf
Мы провели Twitter Space, обсудив несколько проблем, связанных с последними дополнениями в Angular. Также прошла Angular Tiny Conf с 25 докладами.
Угловой продивер
Угловой продивер
Оригинал этой статьи на турецком языке. ChatGPT используется только для перевода на английский язык.
Мое недавнее углубление в Angular
Мое недавнее углубление в Angular
Недавно я провел некоторое время, изучая фреймворк Angular, и я хотел поделиться своим опытом со всеми вами. Как человек, который любит глубоко...
Освоение Observables и Subjects в Rxjs:
Освоение Observables и Subjects в Rxjs:
Давайте начнем с основ и постепенно перейдем к более продвинутым концепциям в RxJS в Angular
1
2
51
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

У меня это работает. Минимально воспроизводимый репозиторий стал рабочим репозиторием как с покрытием кода Cypress e2e (npm run e2e), так и с тестированием компонентов (npm run ct). Я надеюсь, это поможет вам. :)

https://github.com/david-kirkland/ng18-code-coverage

Есть объяснение? Изменения Cypress так же задокументированы, но как насчет Angular.json изменений, пожалуйста, объясните эти артефакты.

Hong.Chau 24.07.2024 21:49

В nyc есть ошибка, вызывающая проблемы. Я сообщил об этом: github.com/istanbuljs/nyc/issues/1575. В этом репозитории я исправляю несогласованные пути в nyc.util.mjs (через npm run test:data:scrub), прежде чем дать указание nyc объединить данные покрытия. Чтобы всё сделать просто бегите npm run test:coverage.

Kirkland 26.07.2024 22:52

Другие вопросы по теме