我有一些在特拉維斯上運行的水豚寫的集成測試。在測試中,我使用visit
方法打開硬編碼的URL(由Pow和符號鏈接提供)。這在Travis當然不適用。我需要做的是以某種方式區分環境。因此,當測試在Travis上運行時,它們會打到不同的url,例如localhost:5000。我把它放在我的.Travis.yml
文件中,它會在後臺運行正常的情況下啓動rails server
。問題是如何讓測試使用該網址?在特拉維斯CI上運行水豚測試不同的網址
我的配置看起來是這樣的:
language: ruby
rvm:
- 1.9.3
before_script:
- RAILS_ENV=test bundle exec rake db:create
- "bundle exec rails server -p 5000 &"
- "sleep 5" # Wait for the server to start up"
script: bundle exec rspec
我使用PhantomJS
通過poltegeist
寶石。我在想,如果我能以某種方式使用Travis env var。任何人對此有任何建議? 謝謝!
謝謝比利。當然硬編碼路徑只是概念證明。不堅持:)。 – Tim 2013-05-07 11:34:11
@Tim,如果你能發佈你如何解決這個問題,然後接受你自己的答案(這個問題被標記爲堆棧溢出回答),這將是非常棒的。 – henrikhodne 2013-07-17 20:56:19