[eggjs/egg]npm run ci 如何取消对下边的这些验证

2024-08-05 955 views
0

npm run ci 不能取消关闭csrf,因为我做的是api,所以不需要这个 app.config.security.csrf.ignoreJSON 如何取消对test文件夹下文件的验证,我没写test

最小可复现仓库 复现步骤,错误日志以及相关配置

egg deprecated [egg-security] app.config.security.csrf.ignoreJSON is not safe now, please disable it. node_modules\egg-core\lib\lifecycle.js:92:9

1) test/app/service/hotel.test.js GET /hotels should work: SequelizeDatabaseError: Table 'egg-sequelize-ts-unittest.hotel' doesn't exist

test/app/service/hotel.test.js GET /hotels 1) should work 2) "after each" hook for "should work"

相关环境信息
  • 操作系统:win10
  • Node 版本:11.10.0
  • Egg 版本:2.22

回答

8

跟 test 没关系,你既然是提供 API 的,那就把 app.config.security.csrf 关掉即可。

9

image 大佬,这个我不关掉也报错呀。 image 关掉以后是这个错误。 image image

这个不是test/app/service/hotel.test.js的问题吗?

5

@atian25 求教

5

报错是什么,写的很清楚吧?自己搜索下。英文写的很清楚了,还红红的。

8

test/app/service/hotel.test.js GET /hotels 1) should work 2) "after each" hook for "should work" 我就是想问我怎么让他不验证test对不对,因为这个test我没做成现在的接口。

6

我没写现在用的单元测试

8

SequelizeDatabaseError: Table 'egg-sequelize-ts-unittest.hotel' doesn't exist 修复了再说。

8

好的,我正式服务器环境没创建egg-sequelize-ts-unittest这个库,只放了egg-sequelize-ts-dev一个。这个解决了就是一大堆test不通过的问题。怎么让他不进行单元测试?还是我直接把test下边的东西删了?这个访问不到的错误是要我先把服务跑起来然后再ci吗?

2

image

9

没理解你现在问题到底是啥,不想跑某个测试,就加个 skip 啊,可以学习下 mocha 。

7

image

大佬,这个hotelId ,我现在整个项目中每个文件都没有啊,他怎么去查这个呢? 我的controller、m0odel、service、config、migrations、test 里边都没有这么个东西。

6

这个报错是 Sequelize 抛的,具体的你就要自己分析了。