結論 PHPUnit_Extensions_Database_TestCaseクラスの初期化処理では、外部キー制約があるとうまく初期化できない場合がある オプションでTRUNCATE処理にCASCADEを追加できるが、外部からこのオプション引数は制御できない 引数なしで実行しているメソッドをオーバーライドすることで、CASCADEするようにしてやる class HogeTest extends \PHPUnit_Extensions_Database_TestCase { protected function getSetUpOperation() { // 引数にtrueを渡すように上書き return \PHPUnit_Extensions_Database_Operation_Factory::CLEAN_INSERT(true); } public function setUp()