在 Jest 测试中使用 redux-mock-store 模拟 store 状态

阅读时长 3 分钟读完

前言

在前端开发中,我们经常需要对状态进行测试。而 redux 是一个非常流行的状态管理库,它可以帮助我们更好地组织和管理状态。在 Jest 测试中使用 redux-mock-store 模拟 store 状态,可以帮助我们更方便地测试 redux 相关的代码。

redux-mock-store

redux-mock-store 是一个用于测试 redux 相关代码的模拟 store,它可以帮助我们模拟 store 的状态,并提供一些方便的方法来测试 redux 相关代码的行为。

安装

redux-mock-store 可以通过 npm 安装:

使用

首先,我们需要创建一个 mock store:

然后,我们可以使用 mock store 来模拟 store 的状态:

现在,我们可以使用 store 中的方法来测试 redux 相关的代码了。

示例

下面是一个使用 redux-mock-store 的示例:

-- -------------------- ---- -------
------ ------------------ ---- -------------------
------ ----- ---- --------------
------ - --------- - ---- ------------

----- ----------- - --------
----- --------- - --------------------------------

--------------------- -- -- -
  ---------- -------- --- ------- --------- -- -- -
    ----- ------------ - ---
    ----- ----- - ------------------------

    ----- ---- - - --- -- ----- ----- ---- --
    ----- --------------- - -
      - ----- -------------------- --
      - ----- --------------------- -------- ---- --
    --

    ------ ------------------------------------ -- -
      ----------------------------------------------------
    ---
  ---
---

在这个示例中,我们测试了一个异步的 action fetchUser。我们使用了 redux-thunk 中间件来处理异步 action。我们创建了一个 mock store,并通过 dispatch 方法来触发 action。在 action 完成后,我们使用 store 中的 getActions 方法来获取 store 中的所有 action,并断言它们是否符合预期。

总结

在 Jest 测试中使用 redux-mock-store 可以帮助我们更方便地测试 redux 相关的代码。我们可以使用它来模拟 store 的状态,并提供一些方便的方法来测试 redux 相关代码的行为。希望这篇文章能够帮助你更好地理解如何使用 redux-mock-store 进行测试。

来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/658f7d39eb4cecbf2d51f5b4

纠错
反馈