Tag Archives: バグ

fixtureがテスト用データベースに反映されない?

このエントリーをはてなブックマークに追加
はてなブックマーク - fixtureがテスト用データベースに反映されない?
Share on Facebook

CakePHPでフィクスチャを作成したけど、テスト実行時にフィクスチャではなくDBのデータをロードしてしまう。ちゃんとテストケース内で $fixtures に設定しているはずなのに。

そんな症状に長らく悩んでいましたが、結論から言うと、$fixturesで指定しているフィクスチャ名を書き間違えていたせいでした。ファイル名を間違えている時、テストケースはエラーを吐かず、DBを読みに行ってしまうようです。

ずいぶん悩みましたが、初歩的なミスでした。

確かめた記事

Mark Story「1.2のNightlyリビジョンで直ってるよ」

→解決してない

「フィクスチャがDBに入らないんだけど」

「テスト動かせば自動で入るよ」

「知ってるよ。そのはずなのに入らないから聞いてるんだ」

返事無し

[PHP] PHPの閉じタグは書いちゃダメ

このエントリーをはてなブックマークに追加
はてなブックマーク - [PHP] PHPの閉じタグは書いちゃダメ
Share on Facebook

現象

<?php

// ... 処理 ...

?>
←改行1
←改行2

上のコードにブラウザからアクセスしてみると、改行が一つだけあるソースが表示される。PHPは閉じタグ直後の改行1個は自動で消してくれるが、2個目以上はそのまま表示するらしい。

こんなソースを header関数などを使うクラスからIncludeすると終わり。header関数の前にはいかなる出力もしてはいけないのに、勝手に改行が出力されているので、エラーが発生する。

閉じタグは書かなくてもいい。というか、書くと余計なエラーの原因になるので、PHPの閉じタグ書くべきではない。

参考

PHPの閉じタグは心の臓に悪いから使わないで – Unknown::Programming