我正在尝试对我的 ZF2 应用程序进行单元测试,并且为了测试我的代码而不断地与框架进行斗争。现在看来,我不喜欢使用路线。
我的 ServiceConfig 正在创建一项服务,我希望为我的服务获得一条路线。
$callbackUrl = $serviceManager->get('router')->assemble(array(), array(
'name' => 'some_random_route_name'
));
我的应用程序运行良好,但 PHPUnit 在创建服务时抱怨:
Zend\Mvc\Router\Exception\RuntimeException: Route with name "some_random_route_name" not found
在 onBootstrap() 中转储路由列表,我看到那里设置了路由,但是在我的服务工厂(称为 AFTERWARDS)中,没有。它们以某种方式被覆盖。
路由应该在我的单元测试中工作还是我需要以某种方式模拟它们?
看来我看到的唯一路线是“doctrine_cli”,我认为只有控制台路线在工作。PHPUnit 是一个控制台命令,它正在删除我的所有路由并杀死我的服务。这是正常的吗?