【发布时间】:2022-01-08 16:18:28
【问题描述】:
我正在为我的注册组件编写一些单元测试。在这个组件中,我有一个 html 元素:
<form class="register-form" [formGroup]="registerForm">
<mat-form-field>
.....
</mat-form-field>
...
</form>
我想写 3 个测试,首先检查我的表单元素的类,一个如果 registerForm isDefined 则通过,另一个如果 registerForm 被注入 class="register-form" 的表单则通过。
我的测试:
describe('register-form',() => {
it('register-form should have class: register-form', () => {
expect(registerForm.className).toBe('register-form');
});
it('component should have defined formGroup: registerForm', () => {
expect(registerComponent.registerForm).toBeDefined();
});
});
我的表单元素的 registerForm => formGroup 缺少连接测试。我该如何编写这个测试?
简短地说:我不想访问 HTMLElement 的 Property formGroup 。
【问题讨论】:
-
然后测试
registerForm的值。避免测试 Angular 团队已经测试过的东西。 -
是的,我可以这样做,但如果我不将 registerForm 分配给 formGroup,所有测试都会通过。
<form class="register-form"> <mat-form-field> ..... </mat-form-field> ... </form>会发出一个通过的测试。 -
<mat-form-field>...</mat-form-field>里面是什么? -
inside of
是一个带有 formControlName 的 元素。
标签: angular typescript unit-testing jasmine karma-runner