WrodPressのユニットテストのソースコードがある場所
※本ページはプロモーションが含まれていますWordPressでWordPressが用意してくれているユニットテストをしようとすると、ユニットテストのドキュメントは無いため、ソースコードを読む必要があるようです。
しかし、「WP_UnitTestCase」が定義されているファイルの場所がわからずめっちゃ探しました。
テスト環境はDockerで揃え、テストも実行できているのでどこかにあると思うのですが、僕の力ではどこにあるか見つけられませんでしたorz
WordPress本体の開発環境から見つけることができましたので、場所と方法をメモしておきます。
WordPressコア開発ファイル
コア開発ファイルは下記ページで確認できます。
そのままWebサイトでも見られますが、VS Codeなどで見たほうが分かりやすいので、ローカルにダウンロードします。
svnを使う場合は下記コマンド。
svn co https://develop.svn.wordpress.org/trunk
直接zipファイルをダウンロードする場合は、「trunk – WordPress Trac」の一番下にある「Download in other formats」をクリックしてダウンロード。
読むべきファイル
WP_UnitTestCaseが定義されているのは下記ファイルです。
trunk\tests\phpunit\includes\testcase.php
しかし、ただWP_UnitTestCase_Baseを継承しているだけなので、実際に読むべきなのは「WP_UnitTestCase_Base」です。
trunk\tests\phpunit\includes\abstract-testcase.php
そして、テストでよく使うことになる「$this->factory」は「class-wp-unittest-factory.php」から追えます。
tests\phpunit\includes\factory\class-wp-unittest-factory.php
WordPressのコアをテストするためのファイルは下記場所にまとまっています。
trunk\tests\phpunit\tests
どんな感じでテストコードを書いているか参考になるので、ざっと目を通してみると気付きがあると思います。
おわりに
プラグイン開発のためにユニットテストを導入しようとしましたが、情報が少ないので検索に時間がかかっています…。
プラグインを開発するぐらいの知識がある人なら、検索以外でもたどり着けているんだろうな…。