我想使用软件包cypress-react-unit-test
独立测试我们的React组件。几天后,我无法使其与现有的React Webpack配置一起使用。
通过赛普拉斯的窗口打开文件时收到错误消息:TypeError: path argument is required to res.sendFile
。
我正在使用示例存储库中的文件进行测试: https://github.com/cypress-io/cypress-example-recipes/blob/master/examples/unit-testing__react/greeting.jsx
我们确实使用TypeScript,但我想先让它开始工作。
我尝试覆盖path
,因为它默认为undefined
,但是我遇到了同样的错误。
{
options: {
path: "/my/home/dir/"
}
}
在我的cypress/plugins/index.js
文件中,我有:
const wp = require("@cypress/webpack-preprocessor");
const webpackConfig = require("../../node_modules/react-scripts/config/webpack.config")("development");
module.exports = on => {
const options = {
webpackOptions: webpackConfig
};
on("file:preprocessor", wp(options));
};
我显然缺少一些东西,但是我对Webpack的了解不够。如有任何建议,我将不胜感激!谢谢!
答案 0 :(得分:0)
$menu["Accounts"]["Overview"]
答案 1 :(得分:0)
我也遇到了同样的问题,这就是我的问题得到解决的方式。
将以下代码粘贴到您的plugins/index.js
文件中
module.exports = (on, config) => {
config.env.webpackFilename = './cypress/webpack.config.js' // or path to your webpack.config.js
require('cypress-react-unit-test/plugins/load-webpack')(on, config)
return config
}
在您的cypress.json
文件中添加以下内容
"componentFolder": "cypress/component"
将此导入内容添加到您的support/index.js
文件中
import 'cypress-react-unit-test/support'
在Cypress文件夹下创建一个名为“ components”的文件夹,并将测试文件写入此处。 现在运行赛普拉斯。