使用参数

时间:2018-12-07 13:05:25

标签: angular testing jasmine

我正在编写一种测试的方法,该方法将id作为参数来删除对象。测试用例如下所示:

it('should delete the car object for the given ID', () => {
    const mockId = '1';
    const carObj = component.deleteCar(mockId);
    expect(carObj).not.toEqual('1');
  });

测试用例通过。但是,当我将断言的值从“ 1”更改为“ 2”时,它仍然可以通过测试。我要去哪里错了?

1 个答案:

答案 0 :(得分:0)

它将始终通过,因为您的断言不正确。

我不确定您的deleteCar返回什么。看名字,我认为它是Object的类型。因此,假设它正在返回一个对象,则您在上面的代码块中断言该对象不是“ 1”。将通过哪个 ,因为'1'(字符串类型)确实不等于对象carObj。同样,断言expect(carObj).not.toEqual('2');的情况也会通过,因为2!== CarObject。

信息不多,但我认为您最好执行一项操作,例如单击按钮,这将触发函数deleteCar,而不是像bove一样手动调用