小编use*_*503的帖子

是否有可能在behat上下文中覆盖步骤定义?

是否有可能让子上下文类扩展另一个子上下文并覆盖函数?

目前我有

class TestContext extends BehatContext {
    /**
     * @Given /^a testScenarioExists$/
     */
    public function aTestscenarioexists() {
        echo "I am a generic test scenario\n";
    }
}
Run Code Online (Sandbox Code Playgroud)

class SpecialTestContext extends TestContext {
    /**
     * @Given /^a testScenarioExists$/
     */
    public function aTestscenarioexists() {
       echo "I am a special test scenario\n";
    }
}
Run Code Online (Sandbox Code Playgroud)

在特征上下文中,我告诉它们SpecialTestContext作为子上下文.

当我运行测试behat抱怨

[Behat\Behat\Exception\RedundantException]
步骤"/ ^ testScenarioExists $ /"已在SpecialTestContext :: aTestscenarioexists()中定义

有人可以用这个指向我正确的方向吗?

为了让一些进一步的信息,为什么我试图做到这一点我想实现是运行与不同的环境场景,并在小黄瓜文件中指定的环境的能力,例如:

Scenario: Test with generic environment
Given I am in the environment "generic"
    And a test …
Run Code Online (Sandbox Code Playgroud)

behat

10
推荐指数
2
解决办法
3104
查看次数

标签 统计

behat ×1