Javascript 如何测试具有大量';这';在…内
我如何测试这个没有返回验证的函数,我正在用很多方法测试一个文件,这些方法只会更改大部分标志,如下所示Javascript 如何测试具有大量';这';在…内,javascript,angular,unit-testing,tdd,Javascript,Angular,Unit Testing,Tdd,我如何测试这个没有返回验证的函数,我正在用很多方法测试一个文件,这些方法只会更改大部分标志,如下所示 customerDidProvideCellPhoneNumber() { this.screenElements.inputPhoneNumber.writable = true; this.screenElements.checkDidNotProvideEmail.writable = true; this.formGroup.get('phoneNumber').
customerDidProvideCellPhoneNumber() {
this.screenElements.inputPhoneNumber.writable = true;
this.screenElements.checkDidNotProvideEmail.writable = true;
this.formGroup.get('phoneNumber').enable({ onlySelf: true });
this.screenElements.btnSendSMS.enabled = true;
this.screenElements.alertCellPhone.visible = false;
}
假设您要进行单元测试(相对于更大范围的行为测试),您应该考虑使用模拟<代码>此< /代码>,并断言其属性按预期设置。
函数customerDidProvideCellPhoneNumber(){
this.screenElements.inputPhoneNumber.writable=true;
}
让mockThis={screenElements:{inputPhoneNumber:{}};
customerDidProvideCellPhoneNumber.call(mockThis);
断言(mockThis.screenElements.inputPhoneNumber.writable==true)代码>您的测试应该验证函数是否符合您的预期,并且除了简单地检查返回值之外,还有其他方法。在这种情况下,我假设函数应该设置系统中其他几个对象的状态。因此,您的测试可以(a)创建/初始化这些其他对象。如有必要,您可以模拟它们,(b)调用此方法,(c)检查这些其他对象以验证其状态是否已按预期更改。