2016-01-05 2 views
1

Я использую behat с laravel. У меня есть некоторые функции, которые я хочу игнорировать в тестах. Так что у меня внутри имеется папка:
- a.feature
- b.feature
- c.featureКак я могу игнорировать функцию в behact?

Я хочу, чтобы исключить функцию с из тестирования. На данный момент, если я хочу исключить функцию c из тестов, мне нужно переименовать ее - например, в «c.feature.tmp».
Есть ли еще более интеллектуальный способ ... что-то вроде java или .NET. У нас есть @Ignore аннотация.

+0

Проверьте, что делает тестовые наборы подходит для вас: http://docs.behat.org/en/latest/guides/5.suites.html –

ответ

3

Вы можете указать функции, которые вы не хотите тестировать, как @notesting, а затем запустить так, как показано на рисунке.

behat --tags '[email protected]'

~ знак является NOT оператором.

Или как @ grzegorz-zadja упомянутый вы также можете использовать test suites.

В вашем файле настроек прямо над вашей функцией: вы можете поместить теги. Просто добавьте @notesting. См. documentation.

+0

как я могу отметить функцию, которая является для тестирования? Другими словами, что мне нужно сделать, чтобы исключить его из-за тега '@notesting'? – gandra404

+0

@ gandra404 в вашем файле свойств прямо над вашей функцией: вы можете поместить теги. Просто добавьте '@ notesting'. См. Документацию: http://docs.behat.org/en/v2.5/guides/1.gherkin.html#tags – TeeDeJee

+0

спасибо! Я попробую, а затем примите, если работает. Благодаря! – gandra404

1

Tag фильтров поддерживает три логических операторов:

метки, разделенные commas будут объединены с помощью OR операцию метки, разделенные && будут объединены с помощью AND операцию метки предшествует ~ будут исключены с помощью NOT операции

Например:

  • $ behat --tags '@orm,@database'
  • $ behat --tags 'ticket,723'
  • $ behat --tags '@orm&&@fixtures'
  • $ behat --tags '[email protected]'
  • $ behat --name 'number has'

Первая команда будет работать только функции или сценарии, которые имеют @orm ИЛИ @database тег (или оба).

Вторая команда будет запускать только те функции или сценарии, которые имеют тег ИЛИ @723 (или оба).

В третьей команде будут выполняться только функции или сценарии с тегами @orm и @fixtures (они должны иметь оба).

Четвертая команда будет запускать все функции или сценарии, не помеченные @javascript. (Все, кроме тех, которые отмечены @javascript)

В пятой команде будут задействованы только функции и сценарии, содержащие number has в их названии.


gherkin filters

Смежные вопросы