如何在响应中使用笑话编写单元测试用例?

时间:2019-11-06 11:13:07

标签: arrays node.js json reactjs jestjs

我正在为我的一个React应用程序编写单元测试用例,类组件中有一些箭头功能和常规功能,但是我不知道该怎么写?那么如何触发下一页函数在测试用例中检查其状态值

 const setup = (   const store = storeFactory(initialState);

        return mountWithAppProvider(<Invoice  store = {store}/>);
    }

    const wrapper = setup();

      test('should pagination next page works properly', () => {
          wrapper.nextPage();   
      })


    renderInvoiceTotals() {
            let a = 0 ;
            let b = 0;
            let c = 0;

             c = a+b ;

             console.log("result :"c);


            }

    //arrow function

       nextPage = () => {
            const newPageNumber = this.state.currentPage + 1;
            this.setState({ currentPage: newPageNumber });
        };
  

按照代码,我想从测试文件中调用nextPage函数   但无法调用相同的renderInvoice总计   因此,在我的单元测试用例中,我只是想通过触发它来检查nextPage中的两个功能,所以我想检查期望中的状态

1 个答案:

答案 0 :(得分:0)

您要调用的方法位于包装器实例中。这意味着您需要这样称呼它:

wrapper.instance().nextPage();

像这样设置测试文件:

import React from "react";
import { mount } from 'enzyme';

describe('Testing component',() => {
  let wrapper = mount(<Invoice  store = {store} />)

  test('testing nextPage method', ()=>{
    wrapper.instance().nextPage();
    expect(wrapper.state('currentPage')).toEqual('the value you want here');
  });
});

希望这会有所帮助!