Angular 相关目标jasmine的单元测试用例
下面的部分是验证相关目标值的组件 组件技术Angular 相关目标jasmine的单元测试用例,angular,unit-testing,jasmine,Angular,Unit Testing,Jasmine,下面的部分是验证相关目标值的组件 组件技术 onFocusMethod(event) { if(event.relatedTarget && event.relatedTarget.id === 'test-id') { this.newValue = 'new test value'; } } 下面的代码是测试相关目标的规范文件 describe('relatedTarget test', () => { compoenent = fixture.c
onFocusMethod(event) {
if(event.relatedTarget && event.relatedTarget.id === 'test-id') {
this.newValue = 'new test value';
}
}
下面的代码是测试相关目标的规范文件
describe('relatedTarget test', () => {
compoenent = fixture.componentInstance;
it('should have value for property newValue', () {
const elem = document.createElement("input");
elem.addEventListener("blue", (event) => {
component.onFocusMethod(event)
});
expect(component.newValue).toBe('new test value');
})
});
就像
Random
所说的那样,您应该在组件的dom
中的focus
元素上触发input
,但只需使用TypeScript即可进行测试
describe('relatedTarget test', () => {
component = fixture.componentInstance;
it('should have value for property newvalue', () => {
const mockEvent = {
relatedTarget: {
id: 'test.id',
}
}
component.onFocusMethod(mockEvent);
expect(component.newValue).toBe('new test value');
});
});
您正在
blue
上添加一个侦听器,它应该做什么?如果您想这样做,您必须在expect
之前触发事件,因此使测试异步以等待事件触发,然后再等待结果…对不起,我的错误不是蓝色,是模糊事件