如何编写单元测试用例以使用angular重设单选按钮值

时间:2020-03-16 09:43:27

标签: angular jasmine karma-jasmine

我正在尝试编写单元测试用例以清除单选按钮的检查值

通过点击删除图标链接,它应该清除值

HTML文件

 <mat-icon  class="remove-icon" (click)="resetradioValues('gender')">delete</mat-icon>

ts文件

 resetradioValues(name: string){
    this.form.get(name).patchValue(null);
  }

我已经为上述代码编写了一个单元测试用例,但是它对我不起作用

it('should clear radio button values', () => {
    const param = Object.assign({},radio, { name: 'test' });
    console.log(param);
    component.resetradioValues(param.name);

    });

请让我知道任何人都可以解决这个问题

1 个答案:

答案 0 :(得分:1)

我们将通过实际单击图标并查看会发生什么来进行集成测试。

尝试:

it('should clear radio button values', () => {
      // arrangement
      const matIconElement = fixture.debugElement.query(By.css('mat-icon.remove-icon')).nativeElement;
      // click
      matIconElement.click();
      // assertions, you can assert how you like
      expect(component.form.get('test').value).toBe(null);
    });
// ========== Edit (Unit test) ==============
it('should clear radio button values', () => {
      // arrangement
      component.resetradioValues('test);
      // assertions, you can assert how you like
      expect(component.form.get('test').value).toBe(null);
    });