2011-09-08 134 views
0

我是一個ruby/rails新手,我正在開發的應用程序從另一個網站的HTTP帖子開始,它傳遞一些數據,然後在調用之前顯示一些數據捕獲屏幕一個Web服務。使用Cucumber測試控制器在Rails中沒有視圖

我想在外部使用Cucumber進行集成測試和rspec功能/單元測試。

使用黃瓜如何從外部網站模擬帖子,以便我可以使用應用程序測試流程。

回答

1

對呼叫發起的應用無關緊要;只是提供的參數與引用頁面中的預期參數相匹配。如果您依賴於特定的HTTP_REFERER設置,請查看this answer關於如何在Cucumber中設置標題。

add_headers({'HTTP_REFERER' => 'http://referringsite.com'}) 

既然你已經知道哪些查詢參數/頭您的應用,您可以創建一個安裝塊將爲每個黃瓜適當地設置這些參考網站的期望。

+0

對不起,要麼我完全失去了,要麼我沒有正確地得到我的問題。 我想要做的是從水豚發佈請求。 我不能簡單地導航到視圖,並填寫和張貼表單,因爲沒有視圖。 – Niall

0

如果你正在使用黃瓜與水豚,你可以做這樣的HTTP POST。

When /^I sign in$/ do 
    @user = Factory(:user) 
    get "/login" 
    page.driver.post sessions_path, :username => @user.username, :password => @user.password 
end 

或者,如果你有一個觀點,它會是這樣的。

When /^I sign in$/ do 
    @user = Factory(:user) 
    visit "/login" 
    fill_in "Username", :with => @user.username 
    fill_in "Password", :with => @user.password 
    click_button "Log in" 
end 
相關問題