如何使用Jest测试类中的函数

时间:2020-01-22 19:41:01

标签: jestjs

我有一个在类中的函数:

简化版:

export class Button {
  getAttributes(el) {

    //random code that was removed for simplicity

    return dataAttrs;
  }
}

我想知道如何在Jest中对此进行测试。

2 个答案:

答案 0 :(得分:0)

这对我有用:

test('get attributes on element', () => {
  let button= new Button();
  var element = document.createElement('a');
  element.setAttribute('href', 'https://www.google.ca/');
  element.innerHTML = 'Test';


  expect(breadcrumb.getAttributes(element)).toBe('Hello');


});

答案 1 :(得分:0)

如果有一个简单的类(如您定义的类)可以做:

it('We can check the class constructor', () => {
  const classObject = new classObject();
  expect(classObject ).toHaveBeenCalledTimes(1);
});

并使用Jest拥有的任何方法。

但是,如果存在复杂的类和方法,它们相互依赖,我建议您阅读this,您可以使其自动化或手动完成,模拟依赖关系并进行测试。