Ruby on rails Rails最小测试断言等于200 | 304

Ruby on rails Rails最小测试断言等于200 | 304,ruby-on-rails,testing,minitest,Ruby On Rails,Testing,Minitest,我使用Minitest,我想知道使用200或304 page.status_代码是否可以成功进行测试 不太清楚,但我试过: assert_equal 200 || 304 , page.status_code 声音不起作用 因此,有一种方法可以实现这一点 Thx据我在文档中的测试和挖掘所知,assert_equal和assert_response仅取一个值 我不知道是否建议这样做,但您可以断言响应代码是其中之一 test 'should get right code' do get so

我使用Minitest,我想知道使用200或304 page.status_代码是否可以成功进行测试

不太清楚,但我试过:

assert_equal 200 || 304 ,  page.status_code
声音不起作用

因此,有一种方法可以实现这一点


Thx

据我在文档中的测试和挖掘所知,
assert_equal
assert_response
仅取一个值

我不知道是否建议这样做,但您可以断言响应代码是其中之一

test 'should get right code' do
  get some_path
  assert status === 200 || status === 304
end

我会用
assert\u includes(array,object)
解决这个问题,它测试
object
是否在
array

在您的示例中,这将是:

assert_includes [200, 304], page.status_code

文档:

您能否在一个方法中使用多个状态进行响应?我的意思是没有AJAX交互。如果我错了,请纠正我,我只是想知道。事实上,我使用的是Ajax,当我启动rake时,我的测试是随机进行的,有时通过或失败,因为我只是在等待200和304的到来。这就是我的问题。也许是一种避免这种随机性的方法?