gpt4 book ai didi

angular - 从 Angular 11.0.3 开始,e2e 测试会产生错误

转载 作者:行者123 更新时间:2023-12-04 13:54:17 24 4
gpt4 key购买 nike

从 11.0.3 angular/core 版本开始,E2E 测试不适用于具有默认配置的项目。
我打开一个问题 https://github.com/angular/angular/issues/40221但它似乎不是回归(?)
🔬 最小化复制
https://github.com/BrunoBeraudPW/issue-angular-11.0.3
这是一个默认项目 angular 11.0.3,我已将所有包更新到最新版本
我已经“手动”更新了所有包,因为“ng new”cmd 正在创建一个 angular 10 应用程序,所以我想问题可能是由于其他包造成的。
但即使我刚刚更新了 angular 包,错误仍然存​​在
🔥 异常或错误
使用 fakeAsync 时:

Failed: zone-testing.js is needed for the async() test helper but could not be found.
Please make sure that your environment includes zone.js/dist/zone-testing.js
selenium-webdriver 库中的几个错误( promise )
C:\dev-phoenix\1-Photoweb-Forks\test\node_modules\selenium-webdriver\lib\promise.js:3067:27
this.pending_ = {task: task, q: this.subQ_};
task.promise.queue_ = this;
result = this.subQ_.execute_(task.execute);
~
this.subQ_.start();
} catch (ex) {
internal/modules/cjs/loader.js 中的几个错误
internal/modules/cjs/loader.js:955:30
jasmine-spec-reporter: unable to open 'internal/modules/cjs/loader.js'
Error: ENOENT: no such file or directory, open 'internal/modules/cjs/loader.js'
它似乎无法识别 jasmine 函数,它用红色下划线说明主要函数的名称描述、it、fit 等,就像它不包含 test.ts 及其导入 'zone.js/dist/zone-testing ';
🌍环境
**Angular Version:**
@angular-devkit/architect 0.1100.3
@angular-devkit/build-angular 0.1100.3
@angular-devkit/core 11.0.3
@angular-devkit/schematics 11.0.3
@schematics/angular 11.0.3
@schematics/update 0.1100.3
rxjs 6.6.3
typescript 4.0.5
谢谢 !

最佳答案

确保更新您的 test.ts 文件。区域导入必须在区域测试导入之前。

import "zone.js/dist/zone";
import 'zone.js/dist/zone-testing';
import { getTestBed } from '@angular/core/testing';
import {
BrowserDynamicTestingModule,
platformBrowserDynamicTesting
} from '@angular/platform-browser-dynamic/testing';

declare const require: {
context(path: string, deep?: boolean, filter?: RegExp): {
keys(): string[];
<T>(id: string): T;
};
};

// 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);
或者 src/polyfills.ts 文件丢失/导入丢失:
import 'zone.js/dist/zone';  // Included with Angular CLI.

关于angular - 从 Angular 11.0.3 开始,e2e 测试会产生错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65395520/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com