reactjs - cypress - 启动服务器并测试 - 在 React 应用程序上运行 http 模拟服务器和套接字服务器
问题描述
我想用 msw + cypress + start-server-and-test 运行集成测试
1-我有 msw 作为反应应用程序本身的模拟(端口 3000) 2-我在端口 5000 中有一个 socket.io 服务器
我的问题是如何正确运行它以确保 start-server-and-test 将处理我同时尝试过的它。但我不确定这是不是这样
我的 package.json:
"socket-server": "node test/socket/index.js"
"start-server": "concurrently \"npm run socket-server\" \"cross-env NODE_ENV=development craco start\"",
"test:e2e:ci": "start-server-and-test start-server \"3000\" cypress:headless",
另一个问题是,当我将端口从 3000 更改为不可用时,应用程序卡住并且测试没有关闭应用程序
谢谢
解决方案
可以通过使用 start-server-and-test 库中的“start-test”修复,以便同时运行套接字服务器 + api 或任何服务器列表,您可以运行以下命令:
start-test <first command> <first resource> <second command> <second resource> <test command>
IE
{
"scripts": {
"test": "node src/test",
"start:api": "node src/api",
"start:server": "node src/server",
"test:all": "start-test start:api 3000 start:server 8080 test"
}
}
这也写在文档中
推荐阅读
- html - 如何将我的 HTML 表单链接到 Excel 电子表格?
- vb.net - 在方法错误 CA202 中可以多次处理对象
- android - 即使设备已连接,如何修复 Visual Studio 代码找不到用于颤振开发的设备?
- spring - JPA - 对孩子列表进行分页
- azure - 如何在 Azure Function App 中获取资源组列表
- python - 如何格式化 matplotlib 堆积面积图轴以仅显示给定的范围?
- c# - 如何在 graphql-dotnet 中注入数据库上下文
- python-3.x - 重新分配从属实例变量
- reactjs - 如何在屏幕顶部显示 react-native 的标签栏
- netsuite - 如何在 NetSuite 的拣货单表单中打印非库存项目?