在给定的RSpec描述块中,let、before和it语句的顺序是否重要?

在给定的RSpec描述块中,let、before和it语句的顺序是否重要?,rspec,Rspec,如果我在RSpec中有一个descripe语句,其中包含一组let、before和it语句,那么只要保持给定语句类型中的顺序,这些语句的特定交错是否会影响行为?例如,将: describe "ordering test" do <it1> <it2> <before1> <let1> <let2> <before2> end 描述“订购测试”应该做什么 结束 始终产生与以下相同的结果: descr

如果我在RSpec中有一个
descripe
语句,其中包含一组
let
before
it
语句,那么只要保持给定语句类型中的顺序,这些语句的特定交错是否会影响行为?例如,将:

describe "ordering test" do
  <it1>
  <it2>
  <before1>
  <let1>
  <let2>
  <before2>
end
描述“订购测试”应该做什么
结束
始终产生与以下相同的结果:

describe "ordering test" do
  <let1>
  <let2>
  <before1>
  <before2>
  <it1>
  <it2>
end
描述“订购测试”应该做什么
结束

如果
是相应的
xxx
语句的实例?

否,顺序无关紧要,将
描述
块中顶级语句上的非Proc参数的任何依赖项模化

基本上,
descripe
收集传递到其
let
before
it
语句中的所有参数的值,然后执行所有
let
s,然后执行所有
before
s,然后执行所有
it
s


考虑到RSpec的正常使用,第一句中提到的例外情况将是罕见的。

很好的解释。有没有办法忽略这个顺序?查看
let
如何影响数据库将非常有用。谢谢