问题标签 [angular-unit-test]

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 投票
0 回答
1204 浏览

unit-testing - 在单元测试中模拟 Observable concatMap 函数(Angular 5)

编辑:我想通了,问题是spyOn它会监视返回的函数undefined,需要and.callThough显式调用。

我正在尝试测试我的组件,它使用 ngrx 商店。我在这样的单元测试中存根我的商店:

meetup-view.component.spec.ts

问题是,在我的组件中,我使用 concatMap (并使用导入它import 'rxjs/add/operator/concatMap';

meetup-view.component.ts

当我运行我的单元测试时,我总是得到这个错误:Cannot read property 'concatMap' of undefined. 我已经尝试导入concatMap我的单元测试,但没有运气。现在已经搜索了几个小时:(。

0 投票
2 回答
7313 浏览

angular - ngOnChanges not called in Angular 4 unit test detectChanges()

The question

I have a button component that accepts a promise and disables the button until the promise has resolved and I want to write a unit test for this functionality.

My Code

My button component has an input for the promise

Inside ngOnChanges I listen for the promise

Then I store an array of active promises so multiple promises can be passed in

Then finally in my template I disable the button if there are any promises in the array.

Help me obi-wan

I have been dabbling and trying different things to make this work, this is my current test code that doesn't work. Basically I need to check that the button is disabled before the promise resolves, and I will then want to do another test that checks it is re-enabled after the promise resolves.

As always any help will be appreciated, thanks.

0 投票
1 回答
271 浏览

karma-jasmine - 通过 karma 在 all.spec 文件中包含一个角度模块

我有一个角度模块,它有一些角度配置,我希望所有测试在运行之前都有。我可以进入所有文件并通过包含该模块angular.mock.module但我想知道我是否可以通过 karma 以某种方式做到这一点。

0 投票
2 回答
58 浏览

javascript - 什么时候必须用异步包装规范的回调函数?

出于某种原因,这两个规范正在通过,但是第二个规范正在模板内测试插值,使用来自服务的异步数据。为什么不需要用异步包装回调函数?

0 投票
1 回答
2209 浏览

angular - Angular 4 单元测试模板解析错误:

使用 Jasmine 运行角度单元测试时出现以下错误。

错误:模板解析错误:嵌入模板上的任何指令未使用属性绑定 cdkHeaderRowDef。确保属性名称拼写正确,并且所有指令都列在“@NgModule.declarations”中。(" [错误->]

它看起来像材料设计解析错误。请建议我会是什么问题?

0 投票
3 回答
42627 浏览

angular - 如何在角度单元测试中使用 debugeElement 访问 nativeElement 属性

我想编写一个简单的单元测试来检查当某个值为空或为空时按钮是否被禁用。

以下是我的规格文件:

测试规范.ts

测试失败:

预期未定义为“禁用”。

我在互联网上搜索了 debugElement 函数来获取元素的属性,但找不到确切的解决方案。

这是一个类似的参考SO Question

更新:

下面是组件的 HTML

HTML

在 html 的末尾有 textarea 和 button,当 textarea 为空时,我正在测试将其禁用。

在组件类中,变量名称是注释,对于要禁用的按钮,该注释应为空。这是我测试的断言。

下面是组件类:

0 投票
1 回答
4397 浏览

angular - 角度 httpClientTestingModule httpMock 给出错误:找到 2 个请求

我已经编写了第一个测试来测试服务类:

服务等级:

规格文件:

我收到错误,我在互联网上没有找到任何解决方案,因为我不熟悉httpClientTestingModule 的实际工作方式以及这些代码行意味着我无法调试或理解错误,因此无能为力。

错误:

错误:应为条件“匹配 URL:../../../../assets/json/comments.json”提供一个匹配请求,但找到 2 个请求。

我在服务文件中向其发出请求的 Comments.json 文件:

0 投票
1 回答
198 浏览

angular - 如何在模板中对作业进行单元测试

我有一部分模板

当我输入错误value或然后memorySlotsAngularemptyMessage在生产构建期间捕获此错误。

当我输入错误时,designation编译就可以了。因此,我想在模板中添加属性的单元测试测试分配。但这是孙子组件。我怎样才能做到这一点?

0 投票
1 回答
1369 浏览

angular - 为什么 Angular 需要浏览器来运行单元测试

当我们运行角度单元测试时,它会启动 chrome 浏览器或 karma.config.js 中提供的浏览器。为什么浏览器需要以及在运行角度单元测试时到底发生了什么。

0 投票
3 回答
9687 浏览

angular - “在 afterAll\n[object ErrorEvent] 中抛出了一个错误”-Angular 4 单元测试

当我进行 Angular 4 单元测试时,其中一个使用谷歌地图和 agm 包的页面显示了一个错误:

有谁知道问题可能是什么?

控制台截图