我使用测试框架 DalekJS 来测试用户界面。要执行我的测试脚本 mytest.js,我在 shell 中输入:
cd /Applications/XAMPP/xamppfiles/htdocs/tests
dalek mytest.js
它工作正常。现在我想用 PHP 执行相同的脚本。我的代码:
<?php
chdir('/Applications/XAMPP/xamppfiles/htdocs/tests');
$command = 'dalek mytest.js';
exec($command, $return, $return_var);
var_dump($return);
var_dump($return_var);
在浏览器中运行我的 PHP 脚本,它会打印:
array(0) { } int(127)
DalekJS 脚本在 shell 中执行时会生成屏幕截图,但使用 PHP 运行时不会发生任何事情。我也尝试过 shell_exec()、system() 和 passthru(),但没有成功。您知道为什么 PHP 脚本不起作用吗?