2012-03-31 7 views
0

私はCake 2.1でDBロギングを使用しています。CakePHPユニットテスト中のライブDBへのログ

私が抱えている問題は、ユニットテストを実行しているときに、すべてのログがテストデータベースではなくライブDBに送られているということです。

他のすべてのdb相互作用は、ロギングを除いてテストになります。

ログ・フィクスチャを作成してテスト・ケースにインポートしました。

はここに私のデータベースロガーです(/Lib/Log/Engine/DatabaseLogger.php)

App::uses('CakeLogInterface', 'Log'); 

class DatabaseLogger implements CakeLogInterface 
{ 
    public function __construct($options = array()) 
    { 
     App::import('Model', 'Log'); 
     $this->Log = new Log; 
    } 

    public function write($type, $message) 
    { 
     $this->Log->create(); 

     $log['type'] = ucfirst($type); 
     $log['date'] = date('Y-m-d H:i:s'); 
     $log['message'] = $message; 

     return $this->Log->save($log); 
    } 
} 

私はここにいくつかの基本的な設定を欠けていると確信しているが、私は生活のためにこれを把握することはできません私の。

+0

誰もがこの上で何かを得なかったのか? –

+0

私は同じ問題を抱えています。あなたはそれを修正しましたか? – Alvaro

+0

どこでも応答を得ることはできません。特定のモデルに対してFixtureが定義されていないと、テストでのDBのやりとりが生産DBに入ることに気がつきましたが、これは私を困惑させます。 –

答えて

関連する問題