WordPress とユニットテスト

2022/04/06 22:14:49

WordPress のユニットテストについて考える

まずは、参考にできそうな文献ばっかり集める。

自分が欲しいのは細かいコマンドというよりは、アーキテクチャー図だな、というのが見えてきた。
構築の方向性、大方針が欲しい。

全般

これに従うのが良さそう
Building a fast WordPress development stack with Docker, Bedrock and the Rocketstack https://armando-rivero.medium.com/building-a-fast-wordpress-development-stack-with-docker-and-bedrock-2944efd18f12 2021-05-20
GitHub repo
https://github.com/ArmandoRiveroPi/wordflow

docker-compose、Composer、Bedrockでモダン開発
https://www.tolog.info/wordpress/bedrock-docker/
これも結構書いてある。手を入れる必要はあったが、大体すぐ動いた。
https://github.com/canji53/bedoc
にリポジトリあり。

Bedrock https://roots.io/bedrock/
https://capitalp.jp/2021/10/14/wordpres-phpunit-updated/ 2021-10-14
DockerでWordPressのテーマ・プラグインのテストを実行する手順 https://keikenchi.com/steps-to-run-wordpress-theme-plugin-tests-on-docker 2022-01-13
DockerでWordPressのテーマ・プラグイン開発環境を構築する手順 https://keikenchi.com/steps-to-build-a-wordpress-theme--plugin-development-environment-with-docker Updated: 2022-02-14

This repository is for initiating your WordPress development environment with best architecture.
https://github.com/hikarine3/docker-bedrock-wordpress
VPS比較…の人 栗田 創 さんが作っている。メンテはされていないっぽい。これは参考にできそう

WordPressのプラグインの自動テストをPHPUnitで on Docker
https://higelog.brassworks.jp/2465
https://github.com/akahigeg/wordpress-plugin-unittest-on-docker
しっかり自分の言葉で書いてあって良い

プラグイン

WordPress の設定とかは aaemnnosttv さんの記事が良さそう。

WP PHPUnit
https://github.com/wp-phpunit/wp-phpunit
Example Plugin
https://github.com/wp-phpunit/example-plugin
WP PHPUnit Documentation
https://github.com/wp-phpunit/docs

WordPressでテスト駆動開発(PHPUnit)〜インストール編 https://www.minescope.com/1051/wordpress%E3%81%A7%E3%83%86%E3%82%B9%E3%83%88%E9%A7%86%E5%8B%95%E9%96%8B%E7%99%BA/ 2020-07-07
WordPressプラグインのユニットテストを依存関係がある別のプラグインとセットで実行する https://qiita.com/miya0001/items/35103fb5acc1e17a03de Updated: 2018-04-16

dummy plugin 2019-01-21
https://github.com/koconder/wordpress-test-dummyplugin/tree/b3c6dfdfc302730617f12d771e2f5f170b0cd556

テーマ

WordPress+PHPUnit+WP-CLI環境をDockerで作る https://yhei-web-design.com/blogs/study/wordpress/wordpress-phpunit-wp-cli/ 2020-09-21

https://2inc.org/blog/2016/12/18/5514/ 2026-12-18

メモ

Feature Request: Add first-class support for PHPUnit
https://github.com/roots/bedrock/issues/365
Add WP PHPUnit
https://github.com/roots/bedrock/pull/366

Site Kit を参考にすると良さそう?
https://github.com/google/site-kit-wp
./vendor/roots/wordpress/ の中に展開されるようだ…

Installing the WordPress Test Suite with Composer [Part 1]
December 20th 2016
https://aaemnnost.tv/2016/12/20/installing-the-wordpress-test-suite-with-composer-part-1/

Installing the WordPress Test Suite with Composer [Part 2]
July 8th 2018
https://aaemnnost.tv/2018/07/08/installing-the-wordpress-test-suite-with-composer-part-2/

WordPressの単体テスト : WordPress
https://www.findxfine.com/programming/wp/995561087.html

案件テーマ開発環境(その2 単体テスト) : WordPress
https://www.findxfine.com/programming/wp/995561106.html

[WP Plugin Dev] WordPress プラグインのユニットテスト環境を作る
https://www.d-wood.com/blog/2017/07/27_9129.html

Bedrock and Sageの開発環境をDocker Composeで動かしてみる
https://qiita.com/kyasu1/items/5c9aeda8f8aea5e2fe5d
sage まで見据えるとこういう記事もある。
https://github.com/nanoninja/docker-nginx-php-mysql を基盤にして、いろいろ突っ込む。

BedrockではWordpressの設定情報をできるだけ公開ディレクトリに置かない様な設計になっています。したがって、webサーバーには bedrock/web ディレクトリのみをマウントし、設定情報関係のディレクトリはphpサーバーにだけマウントするように変更しています。

ここは真似たいところだ。

https://github.com/Yoast/wordpress-seo
は、トップディレクトリに、プラグインの定義ファイルがあり、その下に src があって、機能はほぼそこに入っている。

言語については
https://wp-languages.github.io/
https://discourse.roots.io/t/install-update-wordpress-languages-with-composer/2021
https://packagist.org/packages/koodimonni/composer-dropin-installer

https://qiita.com/ttsuru/items/4d893b30b2be3f0e5e2f
からも言及されている。良さそう。

wordpress:cli は
https://tech-lab.sios.jp/archives/25369
を読んだ感じでは Docker にしなくて良い

https://github.com/bobbingwide/wordpress-develop-tests/blob/master/phpunit/tests/query/conditionals.php#L49
例が豊富

WordPress

Posted by tako