Можно исключить тег с Behat?

Я знаю способ запуска только тегов, отмеченных выбранным @tag:

@invite
Feature: As User I want to invite a friend to join on MySocial

  @mytag
  Scenario: Exists a Facebook user
    Given I go to "/"
    When I follow "Invite a friend"
    ...

Можно ли сделать точно противоположное?

Ответ 1

Да, в командной строке можно исключить тег или список тегов:

behat --tags '[email protected]'

Также возможно установить исключенные (и включенные) теги в профиль в файле behat.yml.

Behat 2.x

default:
  filters:
    tags: "[email protected]&&[email protected]&&[email protected]"

В приведенном выше примере я исключаю все, что было в taged @wip (незавершенная работа), @postponed или @disabled.

Behat 3.x

В Behat 3 вы можете не только настраивать теги для профилей, но также и для наборов. Синтаксис немного отличается:

default:
    gherkin:
        filters:
            tags: "[email protected]&&[email protected]"

suites:
    admin:
        filters:
            tags: "@admin"

Связанные документы

Ответ 2

Если вы хотите просто сделать один тег, например, Jakub:

behat --tags '[email protected]'

если вы хотите запускать несколько сценариев с такими тегами, как @Done, а не @javascript:

behat --tags '@Done&&[email protected]'