Symfony2 + Behat + Mink: как мне провести рефакторинг? - PullRequest
0 голосов
/ 30 сентября 2011

в этом учебнике предлагается эта файловая система:

XXXBundle
   |---Features
   |      |----FeaturesContext.php
   |---ProductCategoryRelation.feature  

, где FeaturesContext.php - файл, в котором хранятся функции

//FeaturesContext.php
/**
 * Feature context.
 */
class FeatureContext extends BehatContext
{
  /**
   * @Given /I have a category "([^"]*)"/
   */
  public function iHaveACategory($name)
  {
      $category = new \Acme\DemoBundle\Entity\Category();
      $category->setName($name);
  ...  

И внутри ProductCategoryRelation.feature предлагается написать функции и сценарии:

Feature: Product Category Relationship
  In order to setup a valid catalog
  As a developer
  I need a working relationship

This being the feature, we now need the scenarios to be defined.

Scenario: A category contains a product
  Given I have a category "Underwear"
  ...

Но если мое приложение растет, как следует реорганизовать, например, FeaturesContext.php?

1 Ответ

0 голосов
/ 02 октября 2011

Вы можете использовать подконтексты для разделения определений шагов на несколько классов контекста: http://docs.behat.org/guides/4.context.html#using-subcontexts

...