用于测试的临时SQL服务器

时间:2015-10-22 17:01:52

标签: mysql sql node.js testing automated-tests

我正在编写一个生成MySQL语句的Node.js模块,我想针对测试套件运行它。

我想在测试期间启动一个SQL服务器(不要介意哪个,但MySQL似乎最容易在所有平台上设置),然后再将其关闭。

最好的方法是什么?有没有一种巧妙的方式与机器上已运行的MySQL实例不冲突?

编辑 以澄清

我不希望单个实例启动并运行 - 我可以相当容易地做到这一点。我正在寻找一种可编写脚本的方法来启动和停止本地计算机上的SQL服务器,以便任何其他开发人员都可以在没有配置的情况下运行测试。

2 个答案:

答案 0 :(得分:1)

我认为您的问题是What is the best way?而不是the easy way

有两种方法可以执行此操作,VagrantDocker

<强>流浪

您可以在您的流浪汉机器中安装mysql并将其用于开发目的。您可以详细了解Vagrant here

为了让Vagrant机器启动并运行,您应遵循以下步骤(我希望您此时已经阅读过该文档)。

  1. 安装流浪汉:这取决于您的操作系统。您可以下载here
  2. 初始化您的流浪汉:您可以在所需文件夹中使用vagrant init hashicorp/precise32命令创建新的流浪汉机器。
  3. 编辑您的配置文件:下一步是编辑您Vagrantfile,您可以拥有一台没有编辑它的流浪汉机器,但只需检查每个选项,看看它是否符合您的需要。也许您需要更改流浪机的ipport
  4. 启动您的流浪汉:您可以使用简单的vagrant up执行此操作。
  5. 连接到您的流浪汉:您可以在包含vagrant ssh的文件夹中Vagrantile,并且您现在可以连接到您的流浪机。< / LI>
  6. 安装:这是一个非常广泛的步骤,但简单的方法是您可以在流浪者中安装任何内容,例如mysql。如果您想了解更多信息,请阅读vagrant + puppet以及如何以自动方式配置您的流浪汉机器。
  7. <强>泊坞

    你可以在里面安装一个带mysql的容器。如果将它与Vagrant进行比较几乎相同,但基础设施完全不同,这是另一个概念。这个更新,你可以在生产中使用它。您可以阅读更多here

    当您阅读有关docker的更多信息时,可以使用this容器。

    您可以按照以下步骤启动并运行docker容器。

    1. 安装泊坞窗工具箱:您可以从here下载。
    2. 拉出您需要的容器:只需运行docker pull mysql,您将拥有一台运行mysql的计算机。
    3. 您可以阅读文档(我强烈建议)以了解打开端口并找到docker ip。

      谈论这个主题是非常广泛的,但也非常有用,如果你了解这两件事,不仅会解决你的问题,而且将来对你有用。

答案 1 :(得分:0)

如果是Mac,那么&#34; Postgres.app&#34;是在Mac上拥有PostgreSQL数据库的最简单方法。它会显示一个图标,您可以打开/关闭服务器。如果你明确地寻找mySQL那么抱歉。