Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/63.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 如何测试控制器中是否发生异常?_Ruby On Rails_Ruby_Ruby On Rails 3 - Fatal编程技术网

Ruby on rails 如何测试控制器中是否发生异常?

Ruby on rails 如何测试控制器中是否发生异常?,ruby-on-rails,ruby,ruby-on-rails-3,Ruby On Rails,Ruby,Ruby On Rails 3,我想用:p=>true调用索引控制器以引发异常。 我理解assert_raise函数,但不知道如何像最终用户请求一样调用控制器。您可以这样做 # controller def index p = params[:p] raise ABCException if p end # test test "expect index controller raise ABCException" do assert_raise ABCException do # how

我想用:p=>true调用索引控制器以引发异常。 我理解assert_raise函数,但不知道如何像最终用户请求一样调用控制器。

您可以这样做

# controller
def index
  p = params[:p]        
  raise ABCException if p
end

# test
test "expect index controller raise ABCException" do
  assert_raise ABCException do
    # how do I write this block?
  end
end
assert_raise ABCException do
  get :index, :p => true
end