我创建了一个打开自定义类型对话框的组件,我只想为此方法创建Jasmine单元测试用例。
export class OpenPopUpComponent implements OnInit {
constructor(public dialog:NewCustomDialog) {}
ngOnInit() {
}
openModel(){
this.dialog.open(NewComponent,<NewCustomDialogConfig>{
size: 'double',
data: {
title: 'New Dialog'
}
});
}
}
最佳答案
您将不会测试对话框本身。您需要做的是模拟NewCustomDialog并按注入方式提供它。
根据您的要求
beforeEach(() => {
const spy = jasmine.createSpyObj('NewCustomDialog', ['open']);
TestBed.configureTestingModule({
// Provide (spy) dependency
providers: [
{ provide: NewCustomDialog, useValue: {newCustomDialogSpy} }
]
});
// Inject both the service-to-test and its (spy) dependency
masterService = TestBed.get(MasterService);
valueServiceSpy = TestBed.get(ValueService);
});
然后,您可以检查是否已使用参数(您期望的参数)调用了间谍。
关于javascript - 下面的 Angular 方法如何编写测试用例,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/58663229/