我想对Rails应用程序进行性能测试。
现实世界数据的大小为100 MB。
但Rails总是重建测试数据库,它会覆盖现实世界的数据。
那么如何进行性能测试?
答案 0 :(得分:16)
我会创建一个名为“performance”的新环境。您需要它来复制应用程序的生产设置(类缓存,模板等),然后加载数据库。在过去,我创建了一个专门用于性能测试的数据库,创建了一个rake任务,执行必要的迁移/加载,然后调用rails性能脚本。
您还可以在测试中关闭灯具行为 - 取决于您使用的测试框架。
我还在Running Rails performance tests on real data上发现了这个有用的帖子,其中有一些关于此方法的详细信息。
答案 1 :(得分:0)
我快速修复SQLite用户。
在TestCase中
def setup
`cp db/development.sqlite3 db/test.sqlite3`
end
答案 2 :(得分:0)
我会将应用程序部署到临时服务器(靠近您的生产环境)。并在数据库中生成数据以进行更准确的测试。您可以查看ffaker
gem来生成虚假数据。
然后使用第三方工具点击您的应用程序。导致您在服务器上运行的工具也会影响性能。我更喜欢Jmeter
作为负载测试工具。
您可以创建测试用例。
例如,您想测试登录页面。您可以设置登录参数并发布到登录URL。您可以考虑对具有数据库写入操作的页面进行测试。那些可能是你的应用程序的瓶颈。
希望这有帮助。