【问题标题】:preferred testing methods for ReactJS?ReactJS 的首选测试方法?
【发布时间】:2015-11-23 15:29:41
【问题描述】:

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

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

但我们建议使用我们没有经验的新玩家,例如TapeJest

还有即将推出的Shallow Rendering 功能,听起来不错,但在当前限制下它是否稳定且可用 - 有人在使用它吗?今年早些时候在另一个线程上有一个interesting read

人们通常仍将 Selenium 用于 React 项目,还是坚持他们在 Mocha 中可以做的事情,或者是否有首选的替代方案?光是这个话题,似乎就几乎是马米提建议了。

我意识到这项工作有多种测试路线和“正确的工具”,尤其是在考虑以下问题时:

  • 状态测试
  • 事件模拟
  • 浅层渲染
  • 实用程序测试
  • 真实的 DOM

因此,我们将非常感谢任何社区对首选流程的见解和经验输入!

【问题讨论】:

  • 这是“浅”而不是“吞”:)
  • 好地方,有趣的图片!

标签: javascript unit-testing reactjs automated-tests karma-mocha


【解决方案1】:

我们一直在使用 jasmine/karma 和 mocha,React 报告非常好。我们发现 jest 即使进行少量测试也很慢。

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

TestUtils.Simulation.click(element, eventObj);

测试组件状态很简单:

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

设置与使用 Angular 并没有太大区别。

【讨论】:

  • 谢谢,很高兴知道,但听到关于 Jest 的消息令人遗憾,因为仅自动模拟功能看起来很有希望,而且,我想我认为 Facebook 会给予它相同级别的支持/转头React 享有的地位
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多