在没有访问数据库服务器(或其他外部资源)的情况下对 Yii 模型执行单元测试的首选/正确方法是什么?我发现的所有单元测试文档都建议您必须拥有一个活动的数据库服务器,但显然这对于单元测试来说并不理想。
对于它的价值,这是我的 config/test.php 和我的 bootstrap.php:
<?php
return CMap::mergeArray(
require(dirname(__FILE__).'/main.php'),
array(
'components'=>array(
'fixture'=>array(
'class'=>'system.test.CDbFixtureManager',
),
),
)
);
和
<?php
// change the following paths if necessary
$yiit=dirname(__FILE__).'/../../yii-1.1.13.e9e4a0/framework/yiit.php';
$config=dirname(__FILE__).'/../config/test.php';
require_once($yiit);
require_once(dirname(__FILE__).'/WebTestCase.php');
Yii::createWebApplication($config);
当我运行测试时,我得到:
CDbException: CDbConnection.connectionString cannot be empty.