在功能测试中使用全局变量(使用 Symfony 和 Codeception)
Using globals in functional tests (with Symfony and Codeception)
我想测试这个功能:
static protected function getContainerInterface()
{
global $kernel;
if (get_class($kernel) == 'AppCache') {
/** @var \AppCache $cache */
$cache = $kernel;
$kernel = $cache->getKernel();
}
return $kernel->getContainer();
}
出现错误:
在 null 上调用成员函数 getContainer()
由这个字符串触发:
return $kernel->getContainer();
如何在 codeception 中将全局 $kernel 对象传递给爬虫(即 FunctionalTester 的实例)?
全局变量是一种不好的做法。我可以假设当 运行 测试时,codeception 会创建自己的测试内核,并且这个内核不能全局使用。这个地方需要重构
我想测试这个功能:
static protected function getContainerInterface()
{
global $kernel;
if (get_class($kernel) == 'AppCache') {
/** @var \AppCache $cache */
$cache = $kernel;
$kernel = $cache->getKernel();
}
return $kernel->getContainer();
}
出现错误: 在 null 上调用成员函数 getContainer() 由这个字符串触发:
return $kernel->getContainer();
如何在 codeception 中将全局 $kernel 对象传递给爬虫(即 FunctionalTester 的实例)?
全局变量是一种不好的做法。我可以假设当 运行 测试时,codeception 会创建自己的测试内核,并且这个内核不能全局使用。这个地方需要重构