Возможно ли, что класс подконтекста расширяет другие функции подконтекста и переопределения?Можно ли переопределить определения шагов в контексте поведения?
В настоящее время у меня есть
class TestContext extends BehatContext {
/**
* @Given /^a testScenarioExists$/
*/
public function aTestscenarioexists() {
echo "I am a generic test scenario\n";
}
}
и
class SpecialTestContext extends TestContext {
/**
* @Given /^a testScenarioExists$/
*/
public function aTestscenarioexists() {
echo "I am a special test scenario\n";
}
}
В контексте художественного я говорю это нам, что SpecialTestContext
как подконтекст.
Когда я запускаю тест behat жалуется
[Behat \ Behat \ Exception \ RedundantException]
Step "/^а testScenarioExists $ /" уже определено в SpecialTestContext :: aTestscenarioexists()
Может ли кто-нибудь указать мне правильное направление с этим?
Чтобы дать некоторую дополнительную информацию относительно того, почему я пытаюсь добиться этого, что я пытаюсь достичь является возможность запуска сценариев с различными средами, и имеют окружающую среду, указанные в файле огурцов, например:
Scenario: Test with generic environment
Given I am in the environment "generic"
And a test scenario exists
Scenario: Test with specialised environment
Given I am in the environment "specialised"
And a test scenario exists
Затем я могу добавить код FeatureContext
, чтобы загрузить правильный субконтекст.
Просто обновите приведенные выше ссылки. * http://docs.behat.org/en/latest/user_guide/context/definitions.html#redundant-step-definitions * http://docs.behat.org/en/latest/user_guide/context. html # contexts-lifetime – aczietlow