![](/img/trans.png)
[英]Knex MySQL Migration “Unhandled rejection Error: Transaction query already complete”
[英]Transaction query already complete, run with DEBUG=knex:tx
当我使用 japa 测试运行器 adonisJs 5 时,我的测试失败并出现此错误:
× Uncaught exception
Transaction query already complete, run with DEBUG=knex:tx for more info
1 completedError
node_modules/knex/lib/execution/transaction.js:396
2 anonymous
node_modules/knex/lib/execution/transaction.js:362
3 Client_MySQL2.trxClient.query
node_modules/knex/lib/execution/transaction.js:358
4 Runner.query
node_modules/knex/lib/execution/runner.js:123
5 ensureConnectionCallback
node_modules/knex/lib/execution/internal/ensure-connection-callback.js:13
6 Runner.ensureConnection
node_modules/knex/lib/execution/runner.js:300
7 Runner.run
node_modules/knex/lib/execution/runner.js:30
8 QueryRunner.executeQuery
node_modules/@adonisjs/lucid/build/src/QueryRunner/index.js:78
我不知道为什么我在某些我不知道的测试中会出现此错误
日本测试亚军 adonisJs 5
我遇到了同样的问题,对我来说问题是在我的一个断言中返回 promise 的数据库调用中缺少等待,
所以当返回响应时,测试套件中的全局事务已经回滚
一旦我添加了等待,错误就解决了,所以我建议你仔细检查你的测试中你可能没有等待响应的任何异步调用。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.