はじめに PHPUnitとPestのそれぞれでスナップショットテストをやってみる。 環境 PHP 8.3.10 スナップショットテストとは 指定された期待値と保存した同じ値のスナップショットを比較してコードをテストする。 何もしていないのに壊れたなど予期していない変更を早期に発見する場合に便利な方法です。 やってみる では、それぞれやってみます。 サンプルコード 今回のスナップショットテストで使うコードです。 適当なjsonを返すだけのコードです。 <?php declare(strict_types=1); function json_render(): string { $values = [ [ 'name' => 'りんご', 'price' => 150, "stock" => 10, ], [ 'name' => 'バナナ', 'price' => 200, "stock" =
![PHPでスナップショットテストをやってみる](https://cdn-ak-scissors.b.st-hatena.com/image/square/4baab56b7f45e4bf7988270ae2c1c74b12fae616/height=288;version=1;width=512/https%3A%2F%2Fres.cloudinary.com%2Fzenn%2Fimage%2Fupload%2Fs--je06gLf6--%2Fc_fit%252Cg_north_west%252Cl_text%3Anotosansjp-medium.otf_55%3APHP%2525E3%252581%2525A7%2525E3%252582%2525B9%2525E3%252583%25258A%2525E3%252583%252583%2525E3%252583%252597%2525E3%252582%2525B7%2525E3%252583%2525A7%2525E3%252583%252583%2525E3%252583%252588%2525E3%252583%252586%2525E3%252582%2525B9%2525E3%252583%252588%2525E3%252582%252592%2525E3%252582%252584%2525E3%252581%2525A3%2525E3%252581%2525A6%2525E3%252581%2525BF%2525E3%252582%25258B%252Cw_1010%252Cx_90%252Cy_100%2Fg_south_west%252Cl_text%3Anotosansjp-medium.otf_37%3A%2525E3%252581%2525AA%2525E3%252581%25258A%252Cx_203%252Cy_121%2Fg_south_west%252Ch_90%252Cl_fetch%3AaHR0cHM6Ly9zdG9yYWdlLmdvb2dsZWFwaXMuY29tL3plbm4tdXNlci11cGxvYWQvYXZhdGFyLzE5NjJmMjM0NWEuanBlZw%3D%3D%252Cr_max%252Cw_90%252Cx_87%252Cy_95%2Fv1627283836%2Fdefault%2Fog-base-w1200-v2.png)