CakePHP测试夹具使用不同的表名

时间:2012-08-14 11:01:54

标签: unit-testing cakephp cakephp-2.2

我得到了一个用

定义的模型
class User extends AppModel{
    public $useTable = 'members';
    ....
    ....

工作正常,现在我想在此模型上使用夹具进行单元测试。

我将灯具定义为

App::uses('User', 'Model');

class UserFixture extends CakeTestFixture {
    public $useTable = 'members';

    public $import = array('table' => 'members');
    ....
    ....

然而,它创建的表名为cake_users NOT cake_members - 这会导致测试和控制器及其他代码失败,因为它无法找到cake_members。

如何将测试数据库作为cake_members

获取

这是错误

Table cake_members for model User was not found in datasource test.

这是使用蛋糕2.2.1

1 个答案:

答案 0 :(得分:2)

更改

$useTable = "members";

$table = 'members';

在灯具中,如此处所示

http://www.pixelastic.com/blog/193:using-a-fixture-with-a-model-using-usetable-in-cakephp