我已经成功地使用了PHPSpec,但现在不积极开发它吗?这太好了,但不认为我会选择一个停滞不前的项目。无论如何,我使用以下设置从webbrowser运行测试,也许你会发现一些可以帮助你为CLI设置它的东西。
PHPSpecConfiguration.php
$projectDir = realpath(dirname(__FILE__) . DIRECTORY_SEPARATOR . '..') . DIRECTORY_SEPARATOR;
$simdal_root = $projectDir . 'library';
$phpspec_root = $projectDir . '..' . DIRECTORY_SEPARATOR . 'PHPSpec';
$mockery_root = $projectDir . '..' . DIRECTORY_SEPARATOR . 'Mockery';
$paths = array(
'SimDAL'=>$simdal_root,
'PHPSpec'=>$phpspec_root,
'Mockery'=>$mockery_root
);
set_include_path(implode(PATH_SEPARATOR, $paths) . PATH_SEPARATOR . get_include_path());
require_once 'PHPSpec.php';
require_once 'Mockery/Framework.php';
class Custom_Autoload
{
public static function autoload($class)
{
//$path = dirname(dirname(__FILE__));
//include $path . '/' . str_replace('_', '/', $class) . '.php';
if (preg_match('/^([^ _]*)?(_[^ _]*)*$/', $class, $matches)) {
include str_replace('_', '/', $class) . '.php';
return true;
}
return false;
}
}
spl_autoload_register(array('Custom_Autoload', 'autoload'));
,然后运行它所有的文件:AllSpecs.php;
require_once 'PHPSpecTestConfiguration.php';
$options = new stdClass();
$options->recursive = true;
$options->specdocs = true;
$options->reporter = 'html';
PHPSpec_Runner::run($options);
我不喜欢CLI测试...但这可能会帮助某人。
啊,我喜欢SimpleTest的太多 - 但我认为这是一个很好的“启动器”的测试套件,其中PHPUnit的是进化(由IDE等支持)。 – 2008-11-27 22:26:39
SimpleTest的最新版本是2008/04/08 – andho 2009-10-25 08:47:39