【发布时间】:2019-02-23 20:14:54
【问题描述】:
您好,我是测试新手。 我尝试了很多来测试一个函数,但即使在阅读了所有关于此的 Stackoverflow 主题之后也无法成功。 我希望你能找到一种方法来帮助我..
这是我的 html 的摘录:
<form #myForm="ngForm">
这是我的一张:
@ViewChild('myForm')myForm: NgForm;
我有一个验证功能:
public valider(): void {
if (this.myForm.form.valid) {
//doSomething
} else {
console.log('your form is not valid.');
}
}
最后是我要运行的测试:
it('should send an error when the form is not valid', () => {
fixture = TestBed.createComponent(myComponent);
comp = fixture.componentInstance;
fixture.detectChanges();
fixture.whenStable().then(() => {
fixture.detectChanges();
expect(comp.myForm.form.invalid).toBeTruthy();
comp.valider();
});
});
我得到的错误是:
未处理的 Promise 拒绝:', 'Cannot read property 'form' of undefined'
非常感谢大家
【问题讨论】:
-
您是否在
TestBed中导入了FormsModule? -
是的,我会添加我的测试配置
标签: angular angular5 angular2-forms