2011-10-01 94 views
2

我正在用叉子使用黃瓜。我非常喜歡Rspec上的run_all_when_everything_filtered。如果沒有匹配的標籤,它將運行所有規格。我可以用黃瓜做這個嗎?例如在我的自動測試配置文件中,我指定了--tags @wip,但是如果沒有匹配的標籤,它將運行所有場景如何使黃瓜運行所有功能,如果沒有匹配的標籤

+0

您能否澄清 - 您希望能夠指定一個標籤,例如'@ wip',並讓它運行標記爲這樣的場景,但是如果它發生在整個suite_中的_no場景有'@ wip'標籤,那麼它會運行一切? –

+0

是的,這是正確的 – ahmy

回答

2

我敢肯定,黃瓜不支持這本地。如果您使用Guard來運行這些,您可能會通過調用腳本或自定義rake任務而不是直接調用Cucumber來獲得您所需的行爲。

它應該是相當瑣碎寫一個腳本或耙任務調用黃瓜與-t @wip參數,然後檢查是否輸出包含「0的情況」,如果這樣的話沒有-t爭論再次運行黃瓜,到執行整個套件。

1

如果您知道標籤的名稱,則可以使用「〜」 「在標籤之前。那是--tags [email protected]

這是什麼意思,是你指定給黃瓜的標籤,可以是一個布爾表達式。

  • 標記前的「〜」選項代表NOT
  • 如果您編寫--tags @wip1,@wip2,您可以指定一個OR
  • 通過多次寫入--tags選項,您可以指定AND

我鼓勵您運行cucumber -h並簽出選項--tags,以查看更多信息。

+0

我對標籤選項非常熟悉,但我使用了後衛,所以基本上它是在cucumber.yml中指定的。但切換到使用標籤意味着我必須手動編輯它。這就是我現在正在做的事情,rspec在指定'標記'時有這個功能,但沒有標記,它運行所有的規範(就像它忽略了標記)。我想知道黃瓜是否有這個功能。 – ahmy

相關問題