问题标签 [angular-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 投票
1 回答
1598 浏览

angular - 以角度进行单元测试时,无法读取未定义错误的属性“导航”

为什么在对需要调用的函数进行单元测试时看到此错误:这是我的代码,首先是 .spec.ts 的代码:

这是component.ts中的函数:

执行 ng test 时发现此错误,
显示错误的图片

我知道问题出在这一行:

在 component.ts 文件中,因为当我评论它测试通过时,我该如何解决它。

非常感谢

0 投票
0 回答
229 浏览

angular - 如何配置 Karma 以提供单例全局服务?

我正在编写一些 Angular 单元测试,大多数都需要相同的模拟服务。不必在每个规范文件中配置 TestBed,有没有办法设置 Karma,该服务可用于全球所有测试?此外,此服务需要是单例的,并且每次注入时都不会创建新实例。如果是这样,这是在哪里配置的(我无法通过阅读文档来确定)?

0 投票
1 回答
3048 浏览

angular - 在不设置 formcontrol 的情况下测试角度反应形式输入值

我有这样的表格:

我有一个这样的测试:

在我的组件中,输入值没有更新 myForm。如果我使用注释掉的语法,表单会更新,但不会填充输入标签。

我正在尝试模拟来自用户的输入值,formcontrol 是否应该通过测试中的输入值进行更新?我觉得如果我只是手动更新了表单控件,我就不是在模拟用户。

更新:

0 投票
3 回答
2856 浏览

javascript - 没有将“exportAs”设置为“ngForm”的指令

0 投票
0 回答
81 浏览

angular - 如何在 Angular 5 中测试简单的求和方法?

在 Angular 5 中进行测试时,我简直是个业余爱好者。

这是我的简单组件:

如您所见,它非常简单。我正在使用 http 服务加载数据,loadTransactionSummary()然后运行calculateTotalAmount()对接收到的数据求和的方法。

我想知道我应该如何测试这种calculateTotalAmount()方法。由于有一些业务逻辑,所以应该进行测试。正确的?我真的应该发出http请求来获取transactionSummary数据,还是应该以某种方式模拟这些数据?在这种情况下,最好的方法是什么?能给我举个例子?

0 投票
1 回答
1474 浏览

angular - 如何从 Angular 5 测试中模拟 ActivatedRoute - 错误无法读取未定义的属性“参数”

这是我的带有 ActivatedRoute 的构造函数

我试图以这种方式在测试中模拟这个 ActivateRoute:

但是在构建测试时我收到一个错误:TypeError: Cannot read property 'params' of undefined

0 投票
2 回答
7472 浏览

angular - 如何在 ngOnInit 中测试函数

我的组件类很简单。它从父组件获取输入,并根据该输入从ngOnInit
My Component 类中的 ENUM 解析参数:


我的测试班:


问题serviceUrl不是因为“serviceType”而被污染——undefined即使在调用更改检测之后,输入也会出现。

0 投票
1 回答
198 浏览

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

我有一部分模板

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

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

0 投票
2 回答
9156 浏览

angular - 如何在 Angular 2 中为单元测试创​​建新事件?

嗨,我正在为我的角度代码编写单元测试用例。我正在尝试更新 gridview 中的文本框。下面是我的gridview代码。

下面的函数执行更新。

下面的单元测试用例我写来检查上面的代码。

在上述方法中,第一个参数应该是事件。有人可以帮我如何创建活动吗?任何帮助,将不胜感激。谢谢

0 投票
1 回答
4042 浏览

angular - 如何以角度访问事件发射器返回的值

就像我有一个方法 -

我使用值从我的单元测试中调用此方法 -

组件中的方法是 -

我想断言在此方法中发出的事件返回的值与传递给它的值相同。当我尝试(在测试中)-

它给了我类似下面的东西,但不是发射器返回/发射的值 -