PHPSpec - 使用 AbstractSpec 进行测试

PHPSpec - testing with AbstractSpec

找不到此解决方案,因为越来越多的人尝试测试摘要 类。这不是我想要的。

我有模式策略,所有类都应该实现接口。 想要添加基础规范,其余的应该扩展并添加自己的东西。

我应该在所有规范中重复我的代码吗?

现在,我有 2 个策略规格:

function it_should_implements_LoadStrategyInterface()
{
    $this->shouldBeAnInstanceOf(LoadStrategyInterface::class);
}

如何不重蹈覆辙?

我尝试做 AbstractStrategy,但得到了

Class 'spec\LoadStrategy\Strategies\AbstractStrategy' not found

我错过了什么?或者像这样的代码,不是自动加载的?或许,这是不好的做法?

是的,你应该在每个规格中重复它。一种解决方法是让您的 Spec 文件扩展另一个 Spec 文件(您有这个常见示例),该文件本身扩展了基本 phpspec class。顺便说一下,我会在每个具体 class 中明确描述(测试)这个约束。