Определения шагов хранятся в features/step_definitions
, и именно это говорит Cucumber, что делать, когда он сталкивается с такими утверждениями, как «Учитывая, что у меня 3 огурца в животе»:
Given /^I have (\d+) cucumbers in my belly$/ do |cukes|
# Some Ruby code here
end
http://github.com/aslakhellesoy/cucumber/wiki/Step-Definitions
Чтобы написать свои шаги в PHP, просто поместите их в features/step_definitions
и настройте свою среду (features/support/env.rb
) соответственно.В документации по Cucumber есть полезная информация в виде функции Cucumber:
http://github.com/aslakhellesoy/cucumber/wiki/php
Быстрый поиск в Google также привел к появлению следующей статьи о тестировании PHP с Cucumber, Webrat иSelenium, который выглядит довольно полезным:
http://dev.af83.com/testing/acceptance-tests-php-project-cucumber-webrat-selenium-trio/2010/06/03
Другие языки, которые не поддерживаются напрямую, могут использовать проводной протокол Cucumber, что, например, делает Clucumber (Common Lisp):
http://github.com/aslakhellesoy/cucumber/wiki/wire-protocol
Я не занимаюсь PHP, но надеюсь, что мой ответ все еще помогает.