0
私は特定の要素の存在を主張することに基づいて特定のit
ブロックを含めるか除外する方法を模索しています。
背景:要素のセクションの機能を調べるスモークテストがあります。私の希望は、追加の機能を追加するテストですが、ページに特定のセクションがある場合は、のみが追加されます。私の考えの
擬似コード:Rspecとwatir-webdriver;アサーションに基づいてテストを実行/スキップしますか?
describe 'Smoking sections' do
it 'runs test 1' do
# does stuff
end
it 'runs test 2' do
# does more stuff
end
# if foo_section.present? == true do
# run additional tests using `it` blocks
# else
# p "Section not present"
# end
it 'continues doing more tests like normal' do
# does additional tests
end
end
は、可能なフィルタリングのこの種のですか?
ありがとうございます!これは私が探していたものです。テストをスキップするべきではないことに同意します。私の現在の目標は、リファクタリングに時間がかかり、より小さな仕様(つまり、より簡潔な)テストに分割するまで、現在のスモークテストに追加し続けることです。 – kmancusi
しかし、私は1つの質問があります:私は仕様を設定するとき、それは私の既存の 'それはすべてのブロックを通過し、最初に_そして_それはスキップ可能なものを通過しました。期待通りですか?私はそれがスキップ可能なピースを含むトップダウンで動くという印象の下にあった – kmancusi
それは期待されている。例として[実行順序が定義されています](https://relishapp.com/rspec/rspec-core/docs/command-line/order)が上から下に、次にネストされたグループが上から下に表示されます。スキップ可能なテストがネストされたグループにあったとすると、それらは最後に実行されました。テストを特定の順序にする必要がある場合は、ネストを変更することができます。 –