0

我想用 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 更改为不可用时,应用程序卡住并且测试没有关闭应用程序

谢谢

4

1 回答 1

0

可以通过使用 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"
  }
}

这也写在文档中

https://github.com/bahmutov/start-server-and-test

于 2021-01-10T14:08:40.433 回答