Chi*_*thi 4 ruby unit-testing rspec
我有一个布尔变量condition。我有一些 rspec 测试用例来检查输入字段的存在。
if(condition == true)
execute the following test cases.
it "some test case"
end
it "some test case 2"
end
if(condition == false)
execute the following test cases.
it "some test case 3"
end
it "some test case 4"
end
Run Code Online (Sandbox Code Playgroud)
但是所有的测试用例都被执行了。我尝试使用context.
context "When condition is true"
let(:condition) { TRUE }
it "some test case"
end
it "some test case 2"
end
context "When condition is false"
let(:condition) { FALSE}
it "some test case 3"
end
it "some test case 4"
end
Run Code Online (Sandbox Code Playgroud)
请让我知道是否需要对语法或初始化局部变量进行任何更改condition。
您可以使用RSpec 文档中记录的if:关键字
RSpec.describe "conditional contexts" do
condition = true
context "when true", if: condition do
it 'passes' do
expect(true).to be_truthy
end
end
condition = false
context "when false", if: !condition do
it 'passes' do
expect(false).to be_falsey
end
end
condition = "non-nil"
context "will not be run", if: condition.nil? do
it 'will not get run' do
expect(nil).to be_nil
end
end
end
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3421 次 |
| 最近记录: |