将PHPUnit测试打包为PHAR存档?

时间:2010-04-23 15:31:59

标签: php phpunit php-5.2 phar

是否可以将PHPUnit测试打包为PHAR存档,并使用phpunit运行它们?

我使用以下脚本创建了一个.phar:

<?php
$cPhar = new Phar('mytests-archive.phar', 0);
$cPhar->addFile('mytest.php');

$sStub = <<<ENDSTUB
#! /usr/bin/php
<?php
Phar::mapPhar('mytest-archive.phar');
require 'phar://mytests-archive.phar/mytest.php';
__HALT_COMPILER();
ENDSTUB;

$cPhar->setStub($sStub);
$cPhar->compressFiles(Phar::GZ);
$cPhar->stopBuffering();
?>

但是当我尝试运行生成的存档时,如下所示:

phpunit mytests-archive.phar

我收到错误消息:

#! /usr/bin/php
PHPUnit 3.3.17 by Sebastian Bergmann.

Class MyTestClass could not be found in /path/to/mytests-archive.phar

PHPUnit不支持PHAR文件,还是我错过了构建脚本中的一个步骤? (这是我第一次尝试使用PHAR)

1 个答案:

答案 0 :(得分:2)