在其他上下文块中嵌套上下文块似乎不好吗?
例如:
describe "update_management" do
context "with a typical update" do
context "when a red flag has been raised" do
it "" do
end
end
context "when a yellow flag has been raised" do
it "" do
end
end
etc...
end
end
答案 0 :(得分:11)
尽管这是一个老问题,但由于两个原因,我将在此处发布另一个答案:
这是几乎所有与RSpec上下文嵌套相关的Google最高结果。
这里唯一的其他答案指向BetterSpecs,它并未明确解决该问题,并且还没有搜索功能...。
您 CAN 在RSpec中嵌套上下文,它们将起作用。问题在于这是一个两极分化的话题,有些人宁愿远离它。有些人会告诉你这是一个好习惯,其他人会告诉你这不是……没有真正的共识。
老实说,如果嵌套上下文适用于您的用例,则一定要去做。 重要的是,即使嵌套了上下文描述符也很有意义,顺便说一下,这也是一个两极分化的话题,正如您在this issue中看到的那样,它已经开放了半年以上(截至今天)。
尽管BetterSpecs是一个很好的信息来源,但它要么无法提供示例案例,要么就某些人(例如我)而言不够愚蠢。我非常喜欢Jake Goulding's explanations作为对这些文档的补充,您应该查看一下。
答案 1 :(得分:2)
我强烈建议您查看Better Specs,了解在RSpec测试中使用contexts
时的最佳做法。您还可以查看rspec-style-guide以了解有关最佳做法的更多信息。