programing

상태, 커밋, 디스패치 및 게터에 의존하는 Vuex 액션을 테스트(모카)하려면 어떻게 해야 합니까?

firstcheck 2022. 7. 9. 09:32
반응형

상태, 커밋, 디스패치 및 게터에 의존하는 Vuex 액션을 테스트(모카)하려면 어떻게 해야 합니까?

테스트해야 할 매우 복잡한 Vuex 작업이 있습니다. 이 작업은 {commit}뿐만 아니라 전체 shebang({commit, dispatch, state, getters})에 대한 액세스 권한이 필요합니다.

여기서 actions.getTotals()를 테스트합니다.Mocha/Chai 기반의 프레임워크에서는 어떻게 생각하십니까?

API에서 아무것도 조롱할 필요가 없습니다.로컬 데이터베이스와 대조하여 테스트합니다.

const actions = {
  getTotals: ({ commit, getters, state, dispatch }, metadata) => {
    dispatch('startTimer')
    return api.totals({
      dateFrom: getters.startDate,
      dateTo: getters.endDate,
      clientId: state.filters.client.id,
      metadata: metadata
    })
    .then((response) => commit(types.UPDATE_TOTALS, response.data.result))
    .then(() => dispatch('stopTimer'))
  },
  startTimer: ({commit}) => commit('START_TIMER', Date.now()),
  stopTimer: ({commit}) => commit('STOP_TIMER', Date.now())
}

언급URL : https://stackoverflow.com/questions/46981503/how-do-you-unit-test-mocha-vuex-actions-that-rely-on-state-commit-dispatch

반응형