基础Behat用例推荐使用 FeatureContext
类。此外,您可以在 features/bootstrap
目录中指定任何其他 PHP 类并加载它们,但无论依赖项是什么,都按字母顺序加载。
假设有一个特征和一个 FeatureContext 类:
features/bootstrap/FeatureContext.php
features/bootstrap/MyLovelyTrait.php
正确加载它的最佳方法是什么?显然,在 FeatureContext 中使用了 MyLovelyTrait:
class FeatureContext extends BehatContext {
use MyLovelyTrait;
}
这失败了,因为 M > F
,在字母表中。
我很乐意使用 composer 自动加载,但我不想 require_once
BehatContext.php< 顶部的
文件。有没有办法在 autoload.php
文件behat.yml
配置中指定它?此外,任何其他有关 Behat 上下文文件类加载的最佳实践答案将不胜感激。
最佳答案
我不是 100% 确定这会回答您的问题,但我的印象是您正在尝试使用多个上下文文件?如果是这样,您不需要在 FeatureContext.php 构造方法中使用 use 语句,我们使用以下行:
$this -> useContext('Subcontext', new Subcontext($parameters));
在这种情况下,您要使用的其他上下文称为“子上下文”。
关于php - 在特质中表现上下文,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22199514/