作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我已经创建了一个组件来打开我的自定义类型对话框,我只想为此方法创建 Jasmine 单元测试用例。
export class OpenPopUpComponent implements OnInit {
constructor(public dialog:NewCustomDialog) {}
ngOnInit() {
}
openModel(){
this.dialog.open(NewComponent,<NewCustomDialogConfig>{
size: 'double',
data: {
title: 'New Dialog'
}
});
}
}
最佳答案
您不会测试对话框本身。您需要做的是模拟 NewCustomDialog 并将其作为注入(inject)提供。
在你的规范中
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);
});
然后您可以检查是否已使用参数(您期望的参数)调用了 spy 程序。
关于javascript - 如何为以下 Angular 方法编写测试用例,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58663229/
我是一名优秀的程序员,十分优秀!