node.js – MongoDB / Mongoose单元测试 – 最佳实践?

我正在编写一个npm包,通过mongoose将GIS数据导入MongoDB.我已经使用mocha编写单元测试来测试在保存mongoose模型之前发生的数据转换.

我想确保所有的mongoose数据都正确保存到数据库中(包括需要进行的任何更新).在这种情况下,最佳做法是什么?

我的直觉创建了一个测试集合,插入所有记录,确保它看起来像我期望的样子,并删除集合.

解决方法

是的,设置和拆除数据库中的所有集合对于确保单元测试之间没有副作用是必要的.实际上,这意味着在您重新连接到数据库删除所有集合的beforeEach(),以及断开与数据库断开连接的afterEach().

一些更深入的信息:您在这里尝试的是集成测试,您正在测试代码和mongo之间的实际集成.单元测试是从不调用数据库或其他资源的测试.关于这里的更多信息:What’s the difference between unit tests and integration tests?对我来说,我将它们分成测试/单元和测试/集成.

我不知道有任何软件包或库为你做这件事,但请看一下this tutorial方法解决这个问题.

相关文章

这篇文章主要介绍“基于nodejs的ssh2怎么实现自动化部署”的...
本文小编为大家详细介绍“nodejs怎么实现目录不存在自动创建...
这篇“如何把nodejs数据传到前端”文章的知识点大部分人都不...
本文小编为大家详细介绍“nodejs如何实现定时删除文件”,内...
这篇文章主要讲解了“nodejs安装模块卡住不动怎么解决”,文...
今天小编给大家分享一下如何检测nodejs有没有安装成功的相关...