"#b-6ren">
gpt4 book ai didi

ruby - Rspec:如果最终引发异常,如何测试方法内容?

转载 作者:数据小太阳 更新时间:2023-10-29 08:07:37 25 4
gpt4 key购买 nike

我有一个方法:

  def post
...
if res.failed?
SlackNotifier.notify("Failed", { :channel => "#bugs" })
raise "Boom"
end
res
end

在 rspec 中,我正在尝试对此进行测试,但它因 RuntimeError 而失败,因为该方法最终会引发异常:

it 'posts to slack' do
allow(SlackNotifier).to receive(:notify)
subject.post
expect(SlackNotifier).to have_received(:notify).with("Failed", { :channel => "#bugs" })
end

我该如何阻止它因 raise 而失败?

最佳答案

在主题上 stub 加注修复了它:允许(subject).to receive(:raise)

关于ruby - Rspec:如果最终引发异常,如何测试方法内容?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33377681/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com