Я использую jest Framework для модульного тестирования моего Angular приложения.У меня проблемы с test.ts файлом с zone.js Я думаю.
Я получаю трассировку стека ошибок
TypeError: Cannot read property 'prototype' of undefined
3 | import { getTestBed } from '@angular/core/testing';
4 | import 'zone.js/dist/zone-testing';
> 5 | import {
| ^
6 | BrowserDynamicTestingModule,
7 | platformBrowserDynamicTesting
8 | } from '@angular/platform-browser-dynamic/testing';
at __extends (node_modules/zone.js/dist/zone-testing.js:394:73)
at node_modules/zone.js/dist/zone-testing.js:530:9
at node_modules/zone.js/dist/zone-testing.js:619:7
at node_modules/zone.js/dist/zone-testing.js:620:3
at Object.<anonymous>.NEWLINE (node_modules/zone.js/dist/zone-testing.js:9:65)
at Object.<anonymous> (node_modules/zone.js/dist/zone-testing.js:12:2)
at Object.<anonymous> (src/test.ts:5:1
Я ищу способ исправить эту проблему с минимальными изменениями в коде.
Я уже пытался адаптироваться к решениям, приведенным в https://github.com/AlexanderZaytsev/react-native-i18n/issues/233 и
Jest: TypeError: Не могу прочитать свойство undefined без какой-либо удачи.
Кроме того, я пробовал документы, но в нем ничего не указано, или я его пропустил.
Это мой test.ts файл.
import { getTestBed } from '@angular/core/testing';
import 'zone.js/dist/zone-testing';
import {
BrowserDynamicTestingModule,
platformBrowserDynamicTesting
} from '@angular/platform-browser-dynamic/testing';
declare const require: any;
// First, initialize the Angular testing environment.
getTestBed().initTestEnvironment(
BrowserDynamicTestingModule,
platformBrowserDynamicTesting()
);
// Then we find all the tests.
const context = require.context('./', true, /\.spec\.ts$/);
// And load the modules.
context.keys().map(context);
Я использовал compilerOptions
,
"esModuleInterop": true,
"module": "es2015",
Как ясказал, что я ищу способ исправить это с минимальным изменением кода.Любая помощь приветствуется.