jasmine 相关问题

Jasmine是一个用于测试JavaScript代码的行为驱动开发(BDD)框架。 Jasmine没有外部依赖,也不需要DOM。

如何全局模拟 Jasmine 的 Angular 服务

我已将浏览器的控制台对象配置为 Angular 服务,以便我可以将其注入到其他服务中,如下所示: 导出 const CONSOLE = new InjectionToken('控制台', {

回答 2 投票 0

NullInjectorError:没有 InjectionToken ToastConfig 的提供者!在 Angular + Electron 项目的 jasmine 规范中

问题 大家好你们好!第一次在这里提问,希望得到帮助。我目前正在开发一个 Electron+Angular 应用程序,我终于准备测试所有服务了

回答 7 投票 0

如何在jasmine单元测试中触发ngxsAfterBootstrap?

在我的角度应用程序中,我使用 NGXS 和 Jasmine。 在我的一些商店中,我使用 ngxsAfterBootstrap 作为初始化,在其中分派一些操作。 我无法使用 ngxsOnInit 因为,不确切知道 w...

回答 2 投票 0

Angular 单元测试 - 测试 Promise 拒绝时的错误

我试图确保我的服务上的函数的 catch 块被覆盖,但我只是无法让它正常工作。 我尝试了几种不同的方法。在版本 1 中,它看起来更干净,但我确实...

回答 1 投票 0

Angular 单元测试服务 - 服务构造函数中的属性不使用间谍OnProperty 中的值

我正在尝试为我的 AuthService 编写一个负面测试,如果 angularFireAuth 没有返回任何内容,则构造函数中的属性将设置为 null。这个测试用例的积极一面正在发挥作用,...

回答 1 投票 0

Angular 单元测试 - 将 Mock 中的属性设置为 Null (spyOnProperty)

我在对查看 authService 上的属性的 ngIf 语句进行负面测试时遇到问题。 我已经有一个模拟提供商,并且此测试的正面版本效果很好。我可以看到...

回答 1 投票 0

Angular 18 - 组件单元测试服务中没有使用 Http 客户端的提供程序

我有一个使用 Angular 18 的应用程序,并且有一个使用服务的组件。该服务调用 HttpClient,获取实体列表,然后组件在构造函数上使用该列表。 单位...

回答 1 投票 0

Angular reCaptcha V2 令牌测试

我是 Angular 新手,我正在尝试在测试中获取 reCaptcha 令牌。我如何模拟单击重新捕获“我不是机器人框”或类似的内容并将令牌响应记录在测试中...

回答 1 投票 0

由于绑定到服务属性的 HTML NgModel 中的数据未更新,Angular 单元测试失败

我有一个 LoginPageComponent,其中包含电子邮件和密码字段,其值是绑定到 LoginServices 的属性 loginInfo 的 NgModel。 LoginPageComponent还有登录按钮,登录时禁用...

回答 1 投票 0

我如何为文档可见性更改事件编写茉莉花单元测试

我正在订阅文档的visibilityChanged事件。下面是代码。文档是使用依赖注入来注入的。 ngOnInit(){ fromEvent(文档, '可见性变化') ...

回答 1 投票 0

如何在 Jasmine 单元测试中订阅 Observable?

我有一些模拟 json 数据,我想将其读入一些单元测试。我将其作为一个实用程序,以便其他单元测试文件可以使用它。例如: @Injectable({providedIn: 'root'}) 出口类

回答 3 投票 0

如何检查 Karma/Jasmine 中的控制台日志?

假设我有一个要测试的函数: var 测试 = 函数 () { console.log('单词!'); }; 我会写这样的东西 定义('测试()',函数(){ it('在屏幕上打印“单词!”...

回答 2 投票 0

使用 Jasmine 编写单元测试时无法访问 ng-template 内的元素

所以我尝试访问 ng-container 内的按钮,但即使手动将 ngIf 条件的值设置为 true 后,元素内的元素也不会在我的测试中呈现

回答 2 投票 0

Angular 17 测试mapbox

在我的组件中,加载地图样式后我会显示一条消息: 从“mapbox-gl”导入*作为mapboxgl; ... this.map.on('style.load', () => { this.map.loadImage(路径, (err, img) => { ...

回答 1 投票 0

Angular Radio Group [(ngModel)] 值在 jasmine 测试中未更新

我的组件中有这个 html 代码 我的组件中有这个 html 代码 <mat-radio-group aria-label="Select an option" [(ngModel)]="searchType" (change)="changeSearchType()" class="form-row"> <mat-radio-button [value]="searchByUserType" class="mr-5 max-w-1/2 flex-1">{{'CONTENT.Search by User' | translate }}</mat-radio-button> <mat-radio-button [value]="searchByRegType" class="max-w-1/2 flex-1">{{'CONTENT.Search by Reg' | translate }}</mat-radio-button> </mat-radio-group> 还有这个测试 it('should select the correct value for the radio buttons', () => { const radioGroupDebugElement = fixture.debugElement.query(By.css('mat-radio-group')); const radioButtons = radioGroupDebugElement.queryAll(By.css('mat-radio-button')); // Simulate user selecting the first radio button radioButtons[0].nativeElement.click(); console.log(radioButtons[0].nativeElement.value); fixture.detectChanges(); // Manually dispatch a change event radioGroupDebugElement.nativeElement.dispatchEvent(new Event('change')); fixture.detectChanges(); expect(component.searchType).toBe(component.searchByUserType); // Simulate user selecting the second radio button radioButtons[1].nativeElement.click(); fixture.detectChanges(); // Manually dispatch a change event radioGroupDebugElement.nativeElement.dispatchEvent(new Event('change')); fixture.detectChanges(); expect(component.searchType).toBe(component.searchByRegType); }); 并且我的测试失败,并显示“预期未定义为‘SearchByUser’”。和“预计未定义为‘SearchByReg’。” 测试中未捕获单选按钮的值。 我在这里缺少什么? 谢谢 我们可以使用 Angular Material 网站 中的演示代码,我们在其中使用 getAllHarnesses it('should select the correct value for the radio buttons', async () => { const childLoader = await loader.getChildLoader('mat-radio-group'); const buttons = await childLoader.getAllHarnesses(MatRadioButtonHarness); // Simulate user selecting the first radio button // Manually dispatch a change event await buttons[0].check(); fixture.detectChanges(); expect(component.searchType).toBe(component.searchByUserType); // Simulate user selecting the second radio button buttons[1].check(); fixture.detectChanges(); // Manually dispatch a change event await buttons[1].check(); fixture.detectChanges(); expect(component.searchType).toBe(component.searchByRegType); }); Stackblitz 演示

回答 1 投票 0

Jasmine + Karma 错误:路由“...”配置无效 必须提供以下其中一项:组件、redirectTo、children 或 loadChildren

我在自己的路由模块文件中定义了这个组件,如下所示: { 小路: '', 重定向到:“列表”,路径匹配:“完整” }, { 路径:'列表', 成分:

回答 1 投票 0

如何在 Angular 8 单元测试中读取文本文件

我已经编写了一个 Angular 8 应用程序并计划编写单元测试。特别是我需要测试我开发的文件解析器。 我如何从大学读取文本文件,这是我的黄金模型......

回答 2 投票 0

WebdriverIO + Jasmine:如何在基于测试文件名运行套件时排除特定测试文件

我们目前使用最新的 8.X WebdriverIO 版本和最新的 Jasmine 4.X,使用最新的 Node 18.X。 在我的 Wdio.conf.js 文件中,我有套件: 全部:['路径/test1.js','路径/test2.js'], test1.js 有一个

回答 1 投票 0

inject() 必须从单元测试中的注入上下文中调用

当我一开始尝试在测试文件中使用 AlertsComponent 时,它需要一些服务。添加这些服务后出现以下错误: ject() 必须从注入中调用...

回答 1 投票 0

我们应该保留 Angular CLI 创建的“应该创建”茉莉花测试吗?

我们在 Angular 项目中编写了一些 Jasmine 测试,但我们也保留了 Angular CLI 创建的所有“应该创建”测试。它们看起来像这样: it('应该创建', () =&g...

回答 2 投票 0

© www.soinside.com 2019 - 2024. All rights reserved.