如何 运行 使用 AVA 和 Mongoose 进行并行测试

How to run parallel tests with AVA and Mongoose

基于处理并发和原子测试的讨论 (https://github.com/avajs/ava/issues/472)

我想要并行测试我的服务器端点的最佳方法。

我正在使用 koajs 服务器和 mongodb 数据库 (mongoose)

我正在尝试使用 Mockgoose (https://github.com/mccormicka/Mockgoose) 创建一个不会保留数据的临时内存 mongod

我想知道为每个测试创建一个单独的数据库是否是一个好方法?

有这方面的例子吗?

棘手。我做了一个模块来处理这个 - https://github.com/cyberwombat/mongoprime

它通过在内存中使用 mongo 并创建代理来工作。在您的测试中,您将创建一个随机数据库名称,该模块将负责为您创建和 loading/clearing 这些按需数据库。

不适用于 AVA,但对于 Jest,您可以使用 Jest testEnvironment setting to create a new environment which builds a mongodb database for each test, using the library mongodb-memory-server

我在这里写了更多细节:https://itnext.io/parallel-testing-a-graphql-server-with-jest-44e206f3e7d2