如何对redux的异步action进行测试

代码如下

export function get_mockdata(page) {
    return dispatch => {
        $.ajax({
            url: './data2.json/currentPage=' + page,
            method: 'POST',
            dataType: 'json',
            data: {_method: 'put', id: '12', name: 'city'}
        }).done(function (data) {
            console.log('data', data);
            if (data.status === 0) {
                dispatch({type: GET_MOCKDATA_SUCCESS, data: data.data.rows,count:data.data.count,current_page:page});
            } else {
                dispatch({type: GET_MOCKDATA_FAIL});
            }
        });
    }
}

如上,请问一下该怎么对这段代码进行单元测试?万分感激

阅读 3.6k
2 个回答

用 redux-thunk 确实不好写测试,我之前是自己实现一个类似 redux-api-middleware 的 middleware,这样 action creator 返回就是一个简单的 object 了,非常容易测试。不过再后来觉得 action creator 这么简单,其实没什么必要测试。。。

推荐问题
宣传栏