2016-03-21 30 views
1

Aradığım şeyin mümkün olup olmadığından emin değilsiniz.Tek bir bağlamın liste tanımları

Behat kullanıyorum ve aynı temel kodda çalışan birkaç ekibiz. Yani birbiriyle değiştirilemeyen birçok cümle tanımı var.

Cümleleri, bağlama göre, behat -dl gibi bir şey listelemek istiyorum, ancak yalnızca tek bir bağlam dosyasından getirme (veya bunların listesini isimlendirebilirsem daha iyi).

Mümkünse bir fikriniz var mı?

Düzenleme: ekleyerek behat -di çıkış

... 
Then /^the response status code should be (?P<code>\d+)$/ 
    - Checks, that current page response status is equal to specified. 
    # FeatureContext::assertResponseStatus() 

Then /^the response status code should not be (?P<code>\d+)$/ 
    - Checks, that current page response status is not equal to specified. 
    # FeatureContext::assertResponseStatusIsNot() 

Then /^(?:|I)should see "(?P<text>(?:[^"]|\\")*)"$/ 
    - Checks, that page contains specified text. 
    # FeatureContext::assertPageContainsText() 

Then /^(?:|I)should not see "(?P<text>(?:[^"]|\\")*)"$/ 
    - Checks, that page doesn't contain specified text. 
    # FeatureContext::assertPageNotContainsText() 
... 

cevap

0

Eh kutunun dışında böyle bir çözüm yoktur. FAKAT! grep işlevini kullanabilirsiniz. F.e.

./bin/behat -di| grep "Test\\\\Context\\\\FeatureContext" 

NOT: Eğer bir sonraki komutu kullanabilirsiniz dosyası tarafından Sonuca filtre istiyorsak

TestSuite | When /^I am searching with "([^"]*)" text$/ 
      | at `Test\Context\FeatureContext::simpleSearch()` 

:

./bin/behat -di 

testi adımlar hakkında genişletilmiş bilgi size sonuçlanacak mı: Backslash, şu şekilde değerlendirilmelidir: this problem

UPDATE: Çözüm, yalnızca Suites işlevi kullanılarak Behat sürümü> 3 için uygulanır.

+0

Bu benim için işe yaramıyor. v2.4 kullanıyorum olabilir mi? – mloureiro

+0

hm, tam olarak ne işe yaramıyor? './bin/be -di' çıktı mı üretiyor? eğer evet ise, o zaman yapıştırabilir ve grep ile çalıştığınızı belirtebilirsiniz. –