Как запустить тест pytest-bdd? - PullRequest
0 голосов
/ 18 февраля 2019

Я не понимаю, как правильно запустить простой тест (файл функций и файл python) с библиотекой pytest-bdd.

Из официальной документации , я не могу понятькакую команду выдать для запуска теста.

Я пытался использовать команду pytest, но я видел, что тест НЕТ выполнен.Нужно ли использовать другую библиотеку behave для запуска файла объектов?

Ответы [ 2 ]

0 голосов
/ 19 февраля 2019

Файлы объектов и файлы Python могут быть помещены в разные папки с помощью хука bdd_features_base_dir , предоставляемого pytest-bdd ;Я думаю, что лучше иметь файлы объектов в разных папках.

Здесь вы можете увидеть рабочий пример (простой тест BDD hello world):

Если выхотите попробовать pytest-bdd без установки, вы можете использовать Docker.Создайте папку с вашими BDD-файлами pytest и, если вам нужна отдельная папка features , предназначенная для bdd_features_base_dir , и запустите:

docker run --rm -it -v $ (pwd): / src davidemoro / pytest-play: последняя

0 голосов
/ 19 февраля 2019

Я пытался в течение 2 дней, чтобы,

для запуска pytest-bdd теста, были определенные требования, по крайней мере, на мой взгляд.

  1. поставить обаfeature file и python file в одном каталоге (возможно, это можно изменить с помощью файлов конфигурации)
  2. имя python file должно начинать с test_
  3. python file должен содержать метод , имя которого будет начинаться с test_
  4. метод, начинающийся с test_, должен быть назначен@scenario предложение
  5. до запустить тест, выполнить команду pytest в том же каталоге (возможно, это также настраивается)

  6. После выдачи вы только увидите метод с именем, начинающимся с test_, но все тесты на самом деле выполнялись .Для проверки вы можете assert False любым аннотированным методом @when или @then, он выдаст ошибки.

Система содержит: pytest-bdd==3.0.2 (скопировано с pip freezeвыход)

...