问题标签 [angular2-testing]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
2962 浏览

unit-testing - 运行 Angular2 测试调用 setTimeout 错误并出现“不能在异步区域测试中使用 setInterval”

我正在升级我们的 Angular2 应用程序以使用 rc4 并且我开始在我的单元测试中收到错误:

无法在异步区域测试中使用 setInterval

我的小部件从其ngOnInit方法发出数据请求,并在发出该请求时显示加载指示器。我的模拟服务在 1 毫秒后返回一些数据。

这是暴露问题的简化版本

这在 Angular2 rc1 中运行良好,但在 rc4 中引发错误,有什么建议吗?

此外,如果您setTimeout直接从测试本身使用 a 也不会出现错误

0 投票
1 回答
254 浏览

unit-testing - 使用 webpack 的 Angular 2 单元测试解析错误

使用 webpack 运行 Angular 2 单元测试时出现以下错误:

我看到它正在测试 webpacks bundle-js 文件,但我不确定是否需要从 Angular 核心测试中进行另一个导入

我的 HTML 设置为:

和规格测试为:

和组件:

任何提示/文章都可以提供帮助。谢谢

0 投票
2 回答
9481 浏览

angular - NG2 RC5:不推荐使用 HTTP_PROVIDERS

因此,在 Angular2 的 RC5 版本中,他们弃用HTTP_PROVIDERSHttpModule. 对于我的应用程序代码,这工作正常,但我正在努力对我的 Jasmine 测试进行更改。

这是我目前在我的规范中所做的,但由于 HTTP_PROVIDERS 已被弃用,我现在应该做什么?我需要提供什么来代替 HTTP_PROVIDERS 吗?在 RC5 世界中这样做的正确方法是什么?

0 投票
1 回答
2254 浏览

angular - 错误:必须定义令牌!使用 Angular 2 RC5 进行测试时

早在 2016 年 6 月,我写了一篇关于如何测试 Angular 2 应用程序的文章。我使用angular2-seed作为起点。

https://raibledesigns.com/rd/entry/testing_angular_2_0_rc1

我决定使用 Angular CLI(来自它的 master 分支)重写本教程,它使用 Angular 2 RC5。我从我的一项测试中看到了一个奇怪的错误。

这是我的测试:

我已将此项目发布到 GitHub,因此您可以根据需要重现此问题:https ://github.com/mraible/ng2-demo 。

0 投票
0 回答
479 浏览

node.js - 在 Karma 中运行时出现 Browserify Bundle 错误

当我使用此配置运行 Karma 时:

我不断收到以下错误:

[16:31:32] 使用 gulpfile C:\P4Space\Labs\MainRls\Labs\Web\PatientPortal\gulp\karma\gulpfile.ts [16:31:32] 开始“单元测试”... [16: 31:32] 开始'clean:build:all'... [16:31:32] 15 毫秒后完成'clean:build:all' [16:31:32] 开始'html'... [16: 31:32] 26 毫秒后完成 'html' [16:31:32] 开始'业力'... 21 08 2016 16:31:37.431:ERROR [framework.browserify]: 捆绑错误 21 08 2016 16:31: 37.432:ERROR [framework.browserify]:TypeScript 错误:C:/P4Space/Labs/MainRls/Labs/Web/PatientPortal/node_modules/@angular/core/src/application_ref.d.ts(79,88):错误 TS2304:找不到名称“承诺”。21 08 2016 16:31:37.438:ERROR [framework.browserify]: 捆绑错误 21 08 2016 16:31:37.439:ERROR [framework.browserify]: TypeScript 错误: C: /P4Space/Labs/MainRls/Labs/Web/PatientPortal/node_modules/@angular/core/src/application_ref.d.ts(137,42):错误 TS2304:找不到名称“Promise”。21 08 2016 16:31:37.440:ERROR [framework.browserify]: 捆绑错误 21 08 2016 16:31:37.441:ERROR [framework.browserify]: TypeScript 错误:C:/P4Space/Labs/MainRls/Labs/Web/ PatientPortal/node_modules/@angular/core/src/application_ref.d.ts(196,33):错误 TS2304:找不到名称“Promise”。

我尝试将文件 d.ts 添加到配置文件部分 @ karma.config,但它没有用。

0 投票
1 回答
473 浏览

angular - Angular 2 RC-5 异步测试不起作用

那是代码:

这个测试应该失败,显然awesome 不等于awesome2,为什么不工作?

0 投票
4 回答
1325 浏览

angular - 无法将@angular/testing npm 包添加到 Angular2 项目

我正在尝试使用单元测试设置 Angular2 项目。我正在使用本手册:http : //twofuckingdevelopers.com/2016/01/testing-angular-2-with-karma-and-jasmine/ 它显然已经过时了,因为现在默认的 Angular2 npm 包是 @angular/*

所述示例不起作用,因为 angular2 包不同。因此,我将所有内容重新映射到该 @angular 包。

我的 package.json 包含以下依赖项:

我删除了所有 node_packages 文件夹以从零开始。

运行“npm install”时,我看到以下输出:

我应该怎么做才能让它工作?或者,也许您可​​以建议涵盖适用于最新 Angular2 版本的单元测试的教程?

0 投票
1 回答
3386 浏览

angular - 测试Angular2组件@Input和@Output

如何为 Angular2 简单表单组件构建测试:

0 投票
1 回答
656 浏览

angular - Angular 2 RC5 测试检测更改不起作用

我正在构建一个具有以下界面的登录表单组件:

这就是测试代码:

我收到这条消息:

那么,填充输入值和模型检测到这些变化的方法是什么?

0 投票
8 回答
49782 浏览

unit-testing - 测试组件时如何模拟管道

目前,我正在覆盖提供者以使用这样的模拟服务:

我想对组件使用的管道做同样的事情。我试过了,provide(PipeA, { useClass: MockPipeA })provide(PipeA, { useValue: new MockPipeA() })两者都不起作用。