Веди себя как огурец в PHP


Не поймите меня неправильно. Я думаю, что оба проекта фантастичны.

Но как разработчик php и ruby, я задаюсь вопросом, есть ли какие-либо веские причины, помимо возможного языкового барьера, почему следует выбирать Behat вместо Cucumbercuke4php) для BDD даже при работе с php или некоторыми фреймворками php.

Author: Christoph Strasen, 2011-02-09

2 answers

Я разработчик Behat.

Почему я разработал Behat вместо настройки Cucumber:

  1. Скорость. Не существует простого способа начальной загрузки/запуска PHP из кода Ruby. Это означает, что вам нужно реализовать провода/прокси-серверы и другие вещи, что делает ваши тесты безумно медленными. А более медленные тесты - это не тест, это просто код, который съедает деньги вашего клиента.
  2. Расширяемость. Существует очень мало разработчиков PHP, которые действительно знают Ruby. Это сложный в использовании инструмент, который многие не понимаю! Все примеры, написанные для Cucumber, являются кодом Ruby, и вы даже не можете посмотреть источники Cucumber, потому что, скажем, вы не знаете Ruby. Это все равно что купить подводную лодку, когда вам просто нужно такси.

С точки зрения функций, Behat и Cucumber почти одинаковы (я много работал, чтобы добиться этого). Но с точки зрения скорости/расширяемости/логики с точки зрения разработчика PHP - это лучше, потому что это быстрый и чистый собственный инструмент PHP. Бехат - это не Огуречный портвейн, как сначала вы можете подумать, что он полностью построен с нуля на PHP 5.3. Behat пытается имитировать Cucumber с его чтением ввода (функции) и форматированием вывода (форматеры), но это не порт Cucumber (в PHP нет синтаксических конструкций Ruby).

 70
Author: everzet, 2011-09-08 09:16:50

Здесь объясняется еще одна причина, по которой вам может понадобиться Behat: https://cucumber.io/blog/2014/09/10/when-cucumbers-go-bad

Если у вас есть проект PHP, вы можете создать контекст для внутреннего тестирования (уровень домена, уровень приложения).

 1
Author: Misanthrope, 2015-05-19 15:49:33