【问题标题】:React Testing Setup with Enzyme, Mocha and Rails使用 Enzyme、Mocha 和 Rails 进行反应测试设置
【发布时间】:2017-06-06 21:28:25
【问题描述】:

我有一个带有反应前端的 Rails 应用程序,我使用 webpacker gem 安装了它。我将如何设置 Mocha 和 Enzyme 来处理这个问题?

【问题讨论】:

  • 我会使用 Jest 而不是 Mocha,它工作得很好,易于设置并且有很多功能:)
  • Jest 和 Mocha 有什么区别? Jest 会与 air bnb 的酶一起使用吗?还有安装指南的链接吗?
  • 是的,它适用于酶。 Jest 是像 Mocha 一样的测试运行程序,但它有更多功能,我最喜欢的是能够只运行您正在处理的测试,它会自动找出更新了哪个文件,然后它只运行该套件而不是再次运行所有东西.您还可以使用 Jest 附带的 expect 工具以及模拟 API,效果非常好,监视功能等...... Jest 文档包含启动和运行所需的一切。

标签: ruby-on-rails reactjs mocha.js enzyme


【解决方案1】:

mocha-webpack为此提供了解决方案。

TLDR:

yarn add mocha-webpack -D
echo "--webpack-config config/webpack/test.js" > mocha-webpack.opts

然后将您的默认test.js 更改为

const nodeExternals = require('webpack-node-externals')
const merge = require('webpack-merge')
const sharedConfig = require('./shared.js')
module.exports = merge(sharedConfig, {
    target: 'node',
    externals: [nodeExternals()]
})

最后,将脚本添加到您的package.json

"scripts": {
    "test": "NODE_ENV=test mocha-webpack test/javascript/*.spec.js"
}

您可以在测试文件中要求您需要的任何内容,例如 chai 或酵素。

您还可以将 --colors--recursive 等标志添加到 opts 文件中。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-08-03
    • 1970-01-01
    • 2016-06-13
    • 2016-10-30
    • 2015-12-06
    • 2020-08-27
    • 1970-01-01
    • 2017-02-18
    相关资源
    最近更新 更多