带有笑话和酶的反应单元测试
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了带有笑话和酶的反应单元测试相关的知识,希望对你有一定的参考价值。
[令我感到惊讶的是,许多博客都使用Jest和Enzyme编写了针对React Application的单元测试。不能,我们仅通过玩笑或仅通过酶来编写针对React应用程序的单元测试?
如果是的话,要得到一个组件,我们在酶中使用shallow(),但在Jest中使用什么?
我认为您不完全理解jest
和enzyme
的概念。
笑话
TL; DR: Jest只是类固醇的javascript测试者(不仅仅是react
)。
jest
的主要功能是执行JavaScript测试。它为您提供了组织测试的工具,例如使用describe
,it
或test
块。 jest
带有很多build-in assertions(例如expect(actual).toBe(expected)
),可帮助您识别失败和成功的测试。 jest
最重要的是,它还具有其他功能,例如,它使您可以轻松地mock functions甚至是complete modules。
jest
绑定到react
,但与react
结合使用效果很好,因为它由Facebook维护,就像react
本身一样。因此,基本上每次都是正确的选择,recommended by react
。酶
TL; DR:实用程序的集合,以简化测试/渲染react
组件。从技术上讲,您不需要react
或任何其他框架来测试Enzyme
组件(只需react
)。 jest
已经公开了react
,但是在没有正确包装和简单地提供其API的情况下使用它们确实很麻烦。这正是react-dom/test-utils
所做的。它基本上在enzyme
上放了一层抽象,并添加了一堆实用程序,因此您不必担心自己实现它们。
[我强烈推荐
您查看react-dom/test-utils
,它是react-testing-library
的替代产品,并阅读其创始人编写的react-testing-library
。enzyme
与"Testing Implementation Details" blog post相似,react-testing-library
。以上是关于带有笑话和酶的反应单元测试的主要内容,如果未能解决你的问题,请参考以下文章