ReactJS的首选测试方法

preferred testing methods for ReactJS?

本文关键字:测试方法 ReactJS      更新时间:2023-09-26

刚刚确定了我们的第一个严肃的React with NodeJs项目的范围,我们正在重新评估我们的测试过程。仅供参考,我们传统上是一家基于Angular的机构,运行Jasmine/Karma等设置,迈出进入ReactJS的第一步。

我们已经提出了几种方法,通常是基于JsDOM的Mocha框架,结合Chai/Mockery/FShouldJS等

但我们没有经验的新玩家已经被推荐,比如Tape、Jest

然后是即将推出的Shallow Rendering功能,它听起来很棒,但在当前的限制下,它是否稳定且可用?有人在使用它吗?今年早些时候,另一个帖子上有一篇有趣的文章。

人们通常仍然在React项目中使用硒吗?或者坚持他们在Mocha中可以做的事情,或者有首选的替代品吗?单是这个话题似乎就有很多建议。

我意识到有多种测试路线和适合这份工作的"正确工具",尤其是在考虑以下内容时:

  • 状态测试
  • 事件模拟
  • 浅层渲染
  • 效用测试
  • 真实DOM
  • 等等

因此,任何对首选流程的社区见解和经验输入都将不胜感激!

我们一直在使用茉莉花/因果报应和摩卡,React的报告非常好。我们发现即使进行少量测试,玩笑也很慢。

使用React的TestUtils,您可以轻松测试事件模拟,例如

TestUtils.Simulation.click(element, eventObj);

测试组件状态就像一样简单

expect(component.state.myValue).toBe("hello");

设置与Angular没有太大区别。