2
我有一个csv文件,它定义了要测试的路由,并且每个路由的预期状态码应该返回。Symfony 1.4功能测试 - 减少内存使用量
我正在对csv文件进行迭代并向每个路由发出请求的功能测试,然后检查是否返回了正确的状态码。
$browser = new sfTestFunctional(new sfBrowser());
foreach ($routes as $route)
{
$browser->
get($route['path'])->
with('response')->begin()->
isStatusCode($route['code'])->
end()
;
print(memory_get_usage());
}
/*************** OUTPUT: *************************
ok 1 - status code is 200
97953280# get /first_path
ok 2 - status code is 200
109607536# get /second_path
ok 3 - status code is 403
119152936# get /third_path
ok 4 - status code is 200
130283760# get /fourth_path
ok 5 - status code is 200
140082888# get /fifth_path
...
/***************************************************/
这一直持续到我得到允许的内存耗尽错误。
我增加了允许的内存量,它暂时解决了这个问题。这不是一个永久的解决方案,因为随着时间的推移,更多的路由将被添加到csv文件。
有没有办法减少这个测试使用的内存量?
这张票可能是相关的:http://trac.symfony-project.org/ticket/6621 – acleitner
没有机会。可能的解决方案是将每个路由测试作为单独的php进程运行。 – Marek
任何新闻? '也就是说,它已经在PHP 5.3中修复了。 '但我有PHP 5.3。 –