如何测试Redux-Thunk使用Unit Test Jest的动作?

Voi*_*Mập 4 unit-testing jestjs redux redux-thunk

我是一个新的单元测试Redux-thunk使用Jest的Action .

以下是代码:

export const functionA = (a,b) => (dispatch) =>{
    dispatch ({type: CONSTANT_A, payload: a});
    dispatch ({type: CONSTANT_B, payload: b});
} 
Run Code Online (Sandbox Code Playgroud)

如何测试功能使用Unit-Test Jest?任何人都可以帮助我^^.预先感谢 :)

lua*_*ped 8

您在Redux文档中有一个示例:http://redux.js.org/docs/recipes/WritingTests.html#async-action-creators

import configureMockStore from 'redux-mock-store'
import thunk from 'redux-thunk'
const middlewares = [thunk]
const mockStore = configureMockStore(middlewares)

describe('async actions', () => {

  it('should dispatch actions of ConstantA and ConstantB', () => {
    const expectedActions = [
      {type: CONSTANT_A, payload: 'a'},
      {type: CONSTANT_B, payload: 'b'} 
    ]

    const store = mockStore({ yourInitialState })
    store.dispatch(actions.functionA('a', 'b'))

    expect(store.getActions()).toEqual(expectedActions)
  })
})
Run Code Online (Sandbox Code Playgroud)