我正在编写一个单元测试,我偶然发现了一个非常奇怪的行为。
我有一个测试夹具,所以我希望在数据库中看到 1 行(夹具中只列出了 1 行)我编写了一些代码来运行 findByAttributes,如下所示:
$client_id = 6;
$unique = array (
"client_id" => (String) $client_id,
"id" => "2" //I have a fixture that uses id 1
);
$model = Agent::model()->findByAttributes($unique);
die();
当我在测试运行后进行此配置并击中骰子时,我在数据库中看到 2 行。但是,如果我这样做:
$client_id = 6;
$unique = array (
"client_id" => (String) $client_id,
"id" => "2" //I have a fixture that uses id 1
);
die();
$model = Agent::model()->findByAttributes($unique);
//NOTE: I only moved the die() above the findByAttributes.
我只看到我的灯具的第一行。为什么 findByAttributes 在我的测试数据库中创建一行?