我已經完成了功能測試,現在我想運行它們。但是,每次運行它們時,我都會找到sfTestFunctional類。Symfony 1.4 not loading sfTestFunctional失敗,找不到類
據我可以告訴functional.php bootstrap不自動從框架的類自動加載。任何理由爲什麼這可能是?
這是我的功能引導
// guess current application
if (!isset($app))
{
$traces = debug_backtrace();
$caller = $traces[0];
$dirPieces = explode(DIRECTORY_SEPARATOR, dirname($caller['file']));
$app = array_pop($dirPieces);
}
require_once dirname(__FILE__).'/../../config/ProjectConfiguration.class.php';
$configuration = ProjectConfiguration::getApplicationConfiguration($app, 'test', isset($debug) ? $debug : true);
sfContext::createInstance($configuration);
// remove all cache
sfToolkit::clearDirectory(sfConfig::get('sf_app_cache_dir'));
$doctrine = new sfDoctrineDropDbTask($configuration->getEventDispatcher(), new sfAnsiColorFormatter());
$doctrine->run(array(), array("--no-confirmation","--env=test"));
$doctrine = new sfDoctrineBuildDbTask($configuration->getEventDispatcher(), new sfAnsiColorFormatter());
$doctrine->run(array(), array("--env=test"));
$doctrine = new sfDoctrineInsertSqlTask($configuration->getEventDispatcher(), new sfAnsiColorFormatter());
$doctrine->run(array(), array("--env=test"));
這是在我的功能測試
include(dirname(__FILE__).'/../../bootstrap/functional.php');
$browser = sfTestFunctional(new sfBrowser());
Doctrine_Core::loadData(sfConfig::get('sf_test_dir').'/fixtures/fixtures_initial.yml');
'require_once'到'ProjectConfiguration'是否正確? '$ app'裏面是什麼? – j0k 2012-08-16 14:47:27
我認爲$ app是測試:functional [application] - 那是functional.php bootstrap中已經存在的東西。 require_once也在bootstrap中。 require_once命令匹配工作的unit.php bootstrap。 – 2012-08-16 15:48:41
你是對的,這是默認的'test/bootstrap/functional.php' :) – j0k 2012-08-16 15:57:56