问题标签 [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 回答
559 浏览

angular - Angular 单元测试路由卡在根目录上,而不是在 redirectTo 中定义的路由

我正在尝试对指令进行单元测试,但我在路由设置方面遇到了一个奇怪的问题。尽管路由重定向到仍然是foo当我在测试用例中记录它时。path: ''/

所以我的问题是为什么foo当我记录它时路线不是?

我也试过了,{path: '**', redirectTo: 'foo'}但它仍然给出/

0 投票
1 回答
2445 浏览

angular - 无法在构造函数角度单元测试中覆盖服务

我该如何解决这个问题?

大家好,我对使用 karma 和 jasmine 对 Angular 6 进行单元测试非常陌生

我正在尝试覆盖组件构造函数内部但无法执行的服务。'it' 块 'should create component' 覆盖了构造函数内的行,但服务返回的数据除外。

组件.ts

组件.spec.ts

0 投票
1 回答
45 浏览

angular - Error:- Can't read property variable of undefined during unit testing

variable from service is coming as undefined

Below is my ts file

below is my spec file

The error which I am getting is

typeError: Cannot read property 'isAdminFlow' of undefined TypeError: Cannot read property 'isAdminFlow' of undefined at RegisterComponent../src/app/pages/registration/register.component.ts.RegisterComponent.ngOnInit

0 投票
1 回答
675 浏览

javascript - Angular Unit Test:如何在方法中模拟属性?

这是我要测试的服务:

规格文件

错误:TypeError:无法读取 null 的属性“userPreferences”

我相信我需要为this.appConstants.userPreferences.modelData['basicDetails']['itemId'];this.dmConstants.URLs.GETBOMREVISIONS + itemId + "/GetRevisionsAsync";

0 投票
1 回答
5921 浏览

javascript - Angular 单元测试:如何对 .map() 进行单元测试?

我需要测试一种服务方法,但我不确定如何为调用某些注入服务方法而运行的部分代码实现 100% 的代码覆盖率。

待测服务方式:

我如何覆盖:

在下面的:

测试:

0 投票
1 回答
204 浏览

angular - 使用大量注入服务测试 Angular 应用程序

我最近有一个要为其编写单元测试的企业项目。该应用程序真的很大。它有一个大的注射三。当我设置测试时,我花了半天时间只模拟注入的服务。问题是,我正在测试的服务有n许多注入服务,其中每个注入服务都有注入服务n的数量,并且列表继续到无限数量。目前我只是通过创建假类来模拟它们,但话又说回来,为每个假类编写假方法在这个项目中是一项非常耗时的任务。(主要是因为每个注入的服务在构造函数中都有大量的订阅)。

我目前的测试设置:

我想知道是否有一种更简单(耗时更少)的方式来做到这一点?

0 投票
2 回答
2232 浏览

angular - ng-bullet vs karma-parallel vs 先配置测试模块 - Angular 单元测试性能改进

我试图找出最好和可靠的解决方案来加快我在 Angular 项目中编写的单元测试。

我浏览了一些建议使用的博客

Angular 4 单元测试(TestBed)非常慢(第 4 点)

我的问题是我们是否可以一次使用所有这些选项来加快单元测试执行和构建时间,如果不能,我应该选择哪个选项来提高单元测试用例执行的性能。

还有哪个选项更可靠且易于使用?

任何帮助/建议都是可观的。

谢谢

0 投票
1 回答
2781 浏览

javascript - 用于单元测试的假文件删除事件

我正在尝试模拟文件Drop事件以测试角度指令,但我无法创建DragEvent.

我不确定如何处理第二个参数以将我的文件放在那里..

0 投票
1 回答
1797 浏览

unit-testing - 业力测试用例多次运行:Angular 单元测试

我无法理解为什么我的业力测试用例在一个固定的测试用例之后会重新运行多次。

已断开连接,因为 50000 毫秒内没有消息。Chrome 75.0.3770 (Windows 10.0.0): 执行 131 of 251 DISCONNECTED (1 min 9.028 secs / 18.285 secs)

Chrome 75.0.3770 (Windows 10.0.0):执行 131 of 251 DISCONNECTED (47.273 secs / 18.169 secs)

Chrome 75.0.3770 (Windows 10.0.0): 执行 131 of 251 DISCONNECTED (1 min 9.028 secs / 18.285 secs)

Chrome 75.0.3770 (Windows 10.0.0):执行 131 of 251 DISCONNECTED (47.273 secs / 18.169 secs)

Chrome 75.0.3770 (Windows 10.0.0):执行 97 of 251 DISCONNECTED (22.07 secs / 19.87 secs)

Chrome 75.0.3770 (Windows 10.0.0): 执行 131 of 251 DISCONNECTED (1 min 9.028 secs / 18.285 secs)

Chrome 75.0.3770(Windows 10.0.0):执行 131 次,共 251 次成功(0 秒 / 17.406 秒)

Chrome 75.0.3770(Windows 10.0.0):执行 239 次,共 251 次成功(0 秒 / 20.912 秒)

下面是karma.conf.js的配置

当我将 singleRun 更改为 false 并使用 ng test 执行测试用例时,它工作正常,问题仅在于我将其更改为 true 时。

我看到了几个博客并试图通过添加更多配置来解决它

但没有什么对我有用。

下面是 devDependencies 中的配置(我使用的是 Angular cli 版本 8)

请推荐!!!!

0 投票
1 回答
6542 浏览

angular - 测试 angular if else block 和 subscribe(response => {} block in jasmine

我在编写组件方法的测试用例时遇到了问题。

如何测试内部和内部的 Angular 组件方法if else块。subscribe((res) => { ///block}ToasterService

我在 component.ts 文件中调用了 Angular 服务方法。在服务调用内subscribe(response=>{}

我已经验证了if else块中的响应值,并根据结果显示烤面包机消息,但我的业力报告说:response=> function not covered并且if else块内没有声明未涵盖。

组件.ts

组件.spec.ts

期待下面的块也被茉莉花测试:

业力报告:

业力报告