是否可以使用 nginx 和乘客运行 capybara ?相反还是webrick? Capybara 在 Rails 应用程序中安装了 cucumber 。
最佳答案
这很容易——你唯一需要做的就是改变你的想法—— capybara 和 cucumber 都不受本地环境的约束,你可以测试位于互联网上的应用程序,它不会关心它——你甚至可以测试谷歌。 com,如果你愿意。
对于您的特定问题,您必须设置
Capybara.run_server = false
Capybara.server_port = 8000 # or whatever port is your instance of nginx is configured to serve
Capybara.app_host = 'http://www.google.com' # if your instance is running on remote machine, else just drop it and capybara will use localhost
您可以使用 cucumber 钩子(Hook)轻松控制应用程序的重新启动,您可以将其配置为在每次测试之前或测试套件之前重新启动。 (见 cucumber wiki )在钩子(Hook)中你必须发出
FileUtils.touch tmp/restart.txt
命令。与数据库相同 - 您可以手动设置 Hook 以在需要时截断它(参见 database_cleaner gem)
关于ruby-on-rails - 使用 nginx 运行 capybara,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7047972/