2011-08-13 79 views
5

用nginx和乘客可以運行水豚嗎?相反或webrick?水豚在軌道應用程序中與黃瓜一起安裝。用nginx運行水豚

回答

6

這很簡單 - 你唯一需要做的就是改變主意 - 水豚和黃瓜都不與當地環境聯繫,你可以測試位於互聯網上的應用程序,它不會關心它 - 你可以如果你願意,甚至可以測試google.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 wiki)在hook中,您必須發出FileUtils.touch tmp/restart.txt命令。與數據庫一樣 - 你可以手動設置鉤子截斷它,只要它需要(見database_cleaner寶石)

+0

謝謝iafonov。對於非rails數據庫,有沒有其他的數據庫清理器?我的Java應用程序使用MySQL數據庫。 – Alex

+0

你有Java或Ruby端的ORM嗎?無論如何,通過獲取表和發佈刪除命令或者在每次測試之前加載新的轉儲(但它可能會使屁股保持最新狀態),您可以輕鬆地在Java或Ruby中實現樸素截斷 – iafonov

+0

有沒有辦法做到這一點沒有orm?我沒有訪問orm – Alex