理解しておくべき重要な概念は、タグとプロファイルの間に違いがあるということです。Guard with Cucumberも使用していますが、デフォルトのプロファイルが引き続き使用され、@ wip(Work In Progress)タグが取得されていないことに不満を感じていました。なぜそうなったのかは今や明らかです。他のフォーラムで述べられているように、私のデフォルトのプロファイルは@wipを除外します。
<config / cucumber.yml>
<%
rerun = File.file?('rerun.txt') ? IO.read('rerun.txt') : ""
rerun_opts = rerun.to_s.strip.empty? ? "--format #{ENV['CUCUMBER_FORMAT'] || 'progress'} features" : "--format #{ENV['CUCUMBER_FORMAT'] || 'pretty'} #{rerun}"
base_opts = "--format #{ENV['CUCUMBER_FORMAT'] || 'pretty'}"
std_opts = "#{base_opts} --strict --tags ~@wip"
wip_opts = base_opts
%>
default: --drb <%= std_opts %> features
wip: --drb <%= wip_opts %> --tags @wip:3 --wip features
rerun: --drb <%= rerun_opts %> --format rerun --out rerun.txt --strict --tags ~@wip
"std_opts ="#{base_opts} --strict --tags〜@ wip "<= wipはここstd_optsで除外されます
'@wip'でマークされたシナリオまたは機能を含む'wip'プロファイルを使用したい!
wip:--drb <%= wip_opts%> --tags @ wip:3 --wip features"<=数値は実行するシナリオの最大数を表します;'--wip'は、Cucがテストが失敗することを予期していることを示します(私たちはそれに取り組んでいるので)
したがって、タグはすでに構成されており、*。featureファイルに「@wip」を含めています。プロファイルはどうですか?Guard(Spork)を使用する場合、「wip」プロファイルを使用するには、それを構成する必要があります。それは理にかなっている; コンピューターは私の心を読み取ることができません!'wip'プロファイルを使用するようにGuardfileを更新します。
<ガードファイル>
guard 'cucumber', :cli => "--drb -p wip", :all_on_start => false, :all_after_pass => false do
watch(%r{^features/.+\.feature$})
watch(%r{^features/support/.+$}) { 'features' }
watch(%r{^features/step_definitions/(.+)_steps\.rb$}) { |m| Dir[File.join("**/#{m[1]}.feature")][0] || 'features' }
end
ガード'キュウリ'、:cli => "--drb -p wip "<= '-p'目的のプロファイルを指定します
そして今、私のシナリオは「wip」によって正常にフィルタリングされています。