我有一個運行Symfony 2.0命令的測試。在測試中,我運行的命令是這樣的:如何在運行Symfony2命令測試時設置命令行標誌?
$application = new Application(static::$kernel);
$application->add(new MyCommand());
$command = $application->find('mycommand:name');
$commandTester = new CommandTester($command);
$commandTester->execute(array('command' => $command->getName()));
我想運行與--no-調試標誌,這是一個內置的標誌,該應用程序的命令:(?我猜)控制檯。我已經試過:
$commandTester->execute(array('command' => $command->getName(), '--no-debug' => true));
,我也試過:
的建議here。我也嘗試過其他一些排列。但是他們都沒有做我想做的事情,這是關閉日誌中的所有調試消息。有沒有辦法做到我想要的測試?
[手冊頁](http://symfony.com/doc/2.0/cookbook/console/usage.html)說:「除了更改環境外,還可以選擇禁用調試模式。在你希望在開發環境中運行命令的地方很有用,但避免收集調試數據的性能影響:'$ php app/console list --no-debug'。「而我的經驗正是如此,當我從命令行運行它時,--no-debug標誌關閉了調試。 我知道如何在配置文件中設置日誌級別,但我只想關閉此特定測試的調試,而不是所有測試。 – matt
好點如何在你的測試中初始化內核而不用調試? $ kernel = new AppKernel('test',false); – nifr
更新了我的答案 – nifr