代码之家  ›  专栏  ›  技术社区  ›  Cheng

如何使用真实数据库测试Rails应用程序的性能/基准测试?

  •  9
  • Cheng  · 技术社区  · 16 年前

    我想测试一个Rails应用程序的性能。

    真实世界的数据大小是100MB。

    但是Rails总是重建测试数据库,这会覆盖真实世界的数据。

    那么如何进行性能测试呢?

    3 回复  |  直到 16 年前
        1
  •  16
  •   Toby Hede    16 年前

    我会创造一个叫做“表演”的新环境。您需要这个来复制应用程序的生产设置(类缓存、模板等),然后加载数据库。在过去,我专门为性能测试创建了一个DB,创建了一个rake任务来执行必要的迁移/加载,然后调用rails性能脚本。

    您还可以在测试中关闭fixture行为—这取决于您使用的测试框架。

    我在网上也发现了这个有用的帖子 Running Rails performance tests on real data

        2
  •  0
  •   Cheng    16 年前

    我有一个快速修复SQLite用户。

    在测试用例中

    def setup
      `cp db/development.sqlite3 db/test.sqlite3`
    end
    
        3
  •  0
  •   nyzm    13 年前

    我会将应用程序部署到一个临时服务器(靠近您的生产环境)。并在数据库中生成数据以进行更精确的测试。你可以看看 ffaker Jmeter 作为负载测试工具。 您可以创建测试用例。

    例如,您想测试您的登录页面。您可以设置登录参数并发布到登录url。您可以考虑对对数据库进行写操作的页面进行测试。这些可能会成为你应用的瓶颈。

    JMeter User Manual

    Jmeter Tutorial

    希望这有帮助。