【发布时间】:2017-12-25 00:56:37
【问题描述】:
我正在开玩笑地测试一些 graphQL 查询。 我使用 beforeEach 清除数据库(mongo) 然后,每个测试都使用 graphql 查询来访问一些控制器,该控制器读取/写入/更新数据库中的某些内容。
在我的本地机器和本地 mongo 设置上一切正常。
我在 circleCI 上测试时发现问题,或者如果我使用一些非本地数据库(如 mLab)。
失败的测试看起来像这样: - 在数据库中创建一个新条目 - 返回该条目的 id - 尝试使用此 id 读取或更新它
测试会说“如果为 null,则无法读取” 所以看起来即使我创建了一个条目并取回了它的 id,但当我尝试读取它时它仍然不在数据库中。
有没有办法解决这个问题? 我想当我做类似的事情时
const todo = new Todo(props);
await todo.save();
return todo;
保存函数实际上并没有等待文档被保存?
【问题讨论】:
标签: javascript mongodb mongoose jestjs circleci