2011-09-08 43 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 
相关问题