开箱即用,CakePHP 1.x有一个default
和test
数据源。运行单元测试时,它使用测试数据库,在每次测试之前,它可以从代码中固定数据,或从默认数据库导入数据。
在我正在构建的应用程序中,我有几个案例,在某些模型装置中指定除test
以外的数据库是有用的:
我看过CakeTestFixture
,但我还没有看到一个很好的方法来做到这一点。也许每个模型都希望拥有useDbConfig
和useTestConfig
属性?
在某些情况下,我可以通过以下方式破解我的方式:
function startTest() {
$this->Flock =& ClassRegistry::init('Flock');
$this->Flock->Sheep->useDbConfig = 'readonly_db';
$this->Flock->Dog->useDbConfig = 'soap';
}
但这只会涵盖一个测试用例的特定依赖项,而在一系列测试中执行此操作将是一个维护噩梦。
有没有人遇到类似的情况,你有解决方案吗?
答案 0 :(得分:0)
在database.php中创建$ test db连接,cake将负责其余部分。查看核心测试用例中的一些示例,您将看到没有任何特殊的添加。