gpt4 book ai didi

ruby-on-rails - 如何在没有 Shoulda 的情况下在 Rspec 中进行单行测试?

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

我有一堆非常重复的 rspec 测试,它们都具有相同的格式:

it "inserts the correct ATTRIBUTE_NAME" do
@o.ATTRIBUTE_NAME.should eql(VALUE)
end

如果我能像这样进行一行测试就好了:

compare_value(ATTRIBUTE_NAME, VALUE)

但是 shoulda 似乎并不适合这些类型的测试。还有其他选择吗?

最佳答案

有时我后悔将subject 暴露为最终用户设备。引入它是为了支持扩展(如 shoulda 匹配器),因此您可以编写如下示例:

it { should do_something }

但是,像这样的例子读起来不太好:

it { subject.attribute.should do_something }

如果你要显式使用subject,然后在示例中显式引用它,我建议使用specify 而不是it :

specify { subject.attribute.should do_something }

底层语义是一样的,但是这个^^可以大声读出来。

关于ruby-on-rails - 如何在没有 Shoulda 的情况下在 Rspec 中进行单行测试?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5656967/

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