如何在茉莉花中编写单元测试用例?

时间:2021-04-16 11:34:29

标签: angular jasmine karma-jasmine karma-coverage

Flag(a) {
           let element=this.selected.filter(item => item.a=== a)
           return element.length > 1 ? true : false;
        }

不确定如何为上述函数编写单元测试用例。你能帮忙吗

2 个答案:

答案 0 :(得分:0)

一个测试用例总是由 3 个步骤组成:

  • 准备
  • 执行
  • 验证

就您而言,这意味着:

  • 准备:设置this.selected的值
  • 执行:使用定义的a调用Flag
  • 验证:检查函数返回false

答案 1 :(得分:0)

这应该很简单:

it('should run #Flag(a) method', () => {
  component.selected = [{ someKey1: 'someValue1' }, { someKey2: 'someValue2' }];
  const val = 'someValue1';
  spyOn(component, 'Flag').and.callThrough();
  component.Flag(val);
  expect(component.Flag).toHaveBeenCalled();
})