繁体   English   中英

Redux异步操作测试的目的是什么?

[英]What is the purpose of Redux Async Action Testing?

有人可以解释为什么我们测试异步操作? 我们希望什么能确保工作?

所以在文档http://rackt.org/redux/docs/recipes/WritingTests.html中 ,我们模拟了服务器请求。

nock('http://example.com/')
  .get('/todos')
  .reply(200, { todos: ['do something'] })

const expectedActions = [
  { type: types.FETCH_TODOS_REQUEST },
  { type: types.FETCH_TODOS_SUCCESS, body: { todos: ['do something']  } }
]
const store = mockStore({ todos: [] }, expectedActions, done)
store.dispatch(actions.fetchTodos())

所以我们没有测试我们是否联系服务器。 我们正在测试是否发生了正确的操作顺序,给出200的正确响应?

是的,此类测试的目的不是查看您的网络请求是否正常工作,而是确保您希望触发的操作序列实际触发。 它还可用于确保从服务器返回的数据是您的前端所期望的正确格式。

如果你在实现代码之后编写测试,这可能看起来微不足道,但是说在未来的路上,你或其他开发人员决定对这些操作进行一些轻微的调整或完全删除一个。 在最糟糕的情况下,您的代码会无声地失败,让您不知道出了什么问题。 这些类型的测试可帮助您避免此类问题。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM