assertEqualsとassertSameの違いについて
PHPのUnitテストを書くようになって、基本はassertSameを使うもののassertEqualsとassertSameの違いをちゃんと調べたことがまだないなと思って調べてました。
イメージとしてはassertEqualsは==のような挙動で厳密に型を見ない、assertSameは===のような挙動であり型をしっかる見る。
そのためよほどの事情がない限りはassertSameを使えば良いようです。
たしかにUnitテストで暗黙的型変換されるとマズいですね、、
assertEqualsは==と全く一緒ではない
検索すると==と同じという記述は出てくるのですが、厳密には一緒ではないようです。
こちらの記事で詳しく検証されています。
PHPUnitのassertEquals()は==と同じではない - Qiita
==と同じではない、ということを覚えておかないとハマることもあるかもしれません。
ただ、そもそもassertEqualsを使う機会があまりないため、記憶の片隅に置いてもいずれ忘れそうですね、、、
参考
PHPUnitのアサーションメソッドを知ろう! - RAKUS Developers Blog | ラクス エンジニアブログ