0

我正在尝试在 Test::Unit 中解析 HTTP 请求标头,但无济于事。我正在为这样的控制器编写功能测试:

test "create a shopify order" do
  get :order, PARAMS, {HEADER1 => VAL, HEADER2 => VAL}
  assert_response :success # Make sure this returns 200, first off
  ...
end

通常,我会阅读类似的标题request.headers[HEADER1],但这会nil在 Test::Unit 中返回。request没有定义。

我如何实际获取我在上述请求中设置的标头的值?我如何将它们分配给request?我的应用程序从 web 服务中提取,我需要测试在标头中传递的值,所以我不想更改我的应用程序代码。我只需要在 Test::Unit 中模拟这些请求是什么样的。

谢谢!

4

1 回答 1

1

了解您正在使用的测试肯定会有所帮助(感谢 Jesse)。我发现我一直在查看集成测试的文档,而不是功能测试,并且设置标题在功能测试中的工作方式不同:

http://twobitlabs.com/2010/09/setting-request-headers-in-rails-functional-tests/

所以我没有设置我认为的标题。他们读得很好——只是没有设置好。

于 2013-05-09T16:57:18.283 回答