我正在使用带有mink扩展名的behat来运行fonctionnal测试。 我有一个FeatureContext,扩展了MinkContext。
我正在尝试将自定义参数传递给我的上下文,但我不确定如何。我的想法是将它们放在behat.yml中,然后使用Symfony的容器访问它们,但我不知道如何从我的FeatureContext访问它。
由于
答案 0 :(得分:1)
参数是一个简单的数组,将被传递给 实例化时上下文类的构造函数,会发生这种情况 在每个场景之前。
这意味着您behat.yml
中定义的参数:
default:
context:
parameters:
my_parameter: my_value
通过构造函数传递给您的上下文:
class FeatureContext extends RawMinkContext
{
private $parameters = array();
public function __construct(array $parameters)
{
$this->parameters = $parameters;
}
}
如果您打算从Symfony容器中更改参数,您应该在其中一个Symfony配置文件中执行此操作(您应该再次运行behat tests环境,这样配置与dev和prod分开)。