首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >将新创建的angular cli项目转换为使用mocha框架而不是jasmine

将新创建的angular cli项目转换为使用mocha框架而不是jasmine
EN

Stack Overflow用户
提问于 2018-09-05 11:19:14
回答 1查看 537关注 0票数 3

嘿,我用最新的angular cli创建了一个新项目。它创建了一个使用jasmine作为测试框架的项目。我想用摩卡咖啡。

我在项目https://github.com/arranbartish/angular-cli-seed/blob/master/karma.conf.js之后添加了所需的插件

在使用命令ng test运行测试时,我得到以下错误

有没有人遇到过错误,或者有没有办法找出是什么导致了这个问题。

EN

回答 1

Stack Overflow用户

发布于 2018-12-22 05:01:32

问题所在

当在测试环境中使用zone.js时,它会使用少量的“补丁”。为了方便起见,zone.js提供了一个将所有这些补丁捆绑在一起的模块。这个模块就是zone.js/dist/zone-testing。这是在src/test.ts中导入的@angular/cli在测试设置中使用的包。问题是zone.js/dist/zone-testing假设您使用的是jasmine,并包含了一个jasmine补丁。jasmine补丁是导致您的错误的原因。

解决之道

要修复它,您只需自己导入每个补丁,而不是使用方便的预打包模块。在src/test.ts

代码语言:javascript
代码运行次数:0
运行
复制
import 'zone.js/dist/zone-testing';

需要成为

代码语言:javascript
代码运行次数:0
运行
复制
import 'zone.js/dist/long-stack-trace-zone';
import 'zone.js/dist/proxy';
import 'zone.js/dist/sync-test';
import 'zone.js/dist/mocha-patch';
import 'zone.js/dist/async-test';
import 'zone.js/dist/fake-async-test';
import 'zone.js/dist/zone-patch-promise-test';

这些包与zone.js/dist/zone-testing使用的包完全相同;但是,它导入的是mocha-patch而不是jasmine-patch

票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/52176565

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档