gpt4 book ai didi

mysql - 我如何编写一个需要可操作的 mySQL 数据库的测试模块?

转载 作者:行者123 更新时间:2023-11-29 04:43:54 25 4
gpt4 key购买 nike

我正在编写一个需要 mySQL 数据库才能运行的 nodejs npm 模块。

我想编写一个连接到“假”数据库并对其进行一些操作的测试模块。

我已经在我的开发机器上本地设置了我的测试数据库,但我希望这个测试可以在任何机器上运行。

编写依赖于正在运行的 mySQL 数据库的集成测试模块的最佳实践是什么?

网络上是否存在我可以获得临时 mysql 用户/密码的公共(public)服务,我可以在有限的时间/大小内执行某些操作?

最佳答案

通常,您会设置一个持续集成 (CI) 系统,它会在您每次向版本控制系统提交更改时执行您的测试。 CI 系统将提供一个干净的 MySQL 数据库,您的测试将针对该数据库运行。如果你在云中使用 CI 系统,你通常可以轻松地配置它来提供数据库。例如。见Travis CI .

如果您设置了一个 CI 系统,其他开发人员如果想要执行测试,仍然需要在他们的计算机上运行他们自己的 MySQL 数据库。或者,您可以在测试中使用模拟而不是真实数据库。详情见:How do you mock MySQL (without an ORM) in Node.js

但是,使用模拟不会为您提供足够的测试结果,因为模拟只是以一种简单的方式模拟数据库。有时 mock 可能太简单或者只是有 bug。因此,您至少还需要针对真实数据库运行一些测试。因此,您可以选择使用 CI 系统针对真实数据库运行测试,并在开发期间针对模拟运行测试。

关于mysql - 我如何编写一个需要可操作的 mySQL 数据库的测试模块?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22788371/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com