我有一个使用Codeception进行验收测试的Codeigniter项目。我有一个'工具' Codeigniter中的控制器设置,用于存储执行各种实用程序功能的命令行方法。
在这种情况下,我创建了一个实用程序方法来设置测试环境,切换数据库,构建/运行测试等。
我使用PHP函数shell_exec()
来运行codception命令。他们正在工作,但是当shell_exec()
发出`php codecept.phar run'命令,它不提供详细输出。它等待所有测试完成(这需要很长时间),然后在最后吐出所有输出。
有没有办法让shell_exec()在收到输出时打印输出?
示例代码:
public function run_tests()
{
$this->load->database('testing');
echo shell_exec("cd ..; php codecept.phar build");
echo shell_exec("cd ..; php codecept.phar run");
}