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

时间:2016-08-23 11:34:06

标签: node.js testing mongoose mocking ava

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

的讨论

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

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

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

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

有这方面的例子吗?

2 个答案:

答案 0 :(得分:1)

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

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

答案 1 :(得分:1)

不是AVA,而是Jest,您可以使用Jest testEnvironment设置创建一个新环境,该环境使用库mongodb-memory-server为每个测试构建一个mongodb数据库。

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