blu*_*blu 8 node.js knex.js jestjs
我有以下简单的测试设置:
test('what did I do to deserve this', async () => {
expect.assertions(1)
const data = await fetchData() // or fetchData2
expect(data).toBe('peanut butter')
})
async function fetchData () {
return "peanut butter"
}
async function fetchData2 () {
return knex.select('name').from('foos')
}
Run Code Online (Sandbox Code Playgroud)
使用fetchData玩笑的话愉快地结束。
但是当我使用fetchData2它时会抱怨这个:
测试运行完成后,Jest 一秒钟都没有退出。
这通常意味着在您的测试中没有停止异步操作。考虑运行 Jest
--detectOpenHandles来解决这个问题。
数据变量确实具有 db 查询的结果,API 中更高级别的其他调用者可以很好地解析查询并继续执行其他语句。
我试过了:
--detectOpenHandles标志,但它不显示我什么。fetchData2如果是此处描述的问题,则进行期望通过donearg传递给test. 它确实存在,但调用它并不能修复警告。感谢您提供的任何帮助,让这一切变得快乐。
事物的版本:
小智 10
强行关闭 Jest 而不是 DB Connection :
--forceExit
Run Code Online (Sandbox Code Playgroud)
所以我的测试脚本看起来像这样,
"scripts": {
"test": "jest --forceExit"
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
14108 次 |
| 最近记录: |