テストとデバッグ
プラグインの品質を保つには、自動テストとデバッグの手法を身につけることが重要です。基本的な進め方を解説します。
PHPUnitによる自動テスト
WordPress公式が提供する「WP-CLI Scaffold」コマンドを使うと、テスト環境の雛形を自動生成できます。
wp scaffold plugin-tests my-plugin cd my-plugin composer install bin/install-wp-tests.sh wordpress_test root '' localhost latest phpunit
<?php
class MyPluginTest extends WP_UnitTestCase {
public function test_addition_function_returns_correct_sum() {
$result = my_plugin_add(2, 3);
$this->assertEquals(5, $result);
}
}
デバッグツールの活用
- Query Monitor:実行されたデータベースクエリ、フック、PHPエラーを可視化する定番プラグイン
- WP_DEBUG:wp-config.phpでの有効化により、エラー・警告を表示・ログ記録できる
- error_log():特定の変数の中身を確認したい場合、デバッグログに出力する基本的な方法
<?php error_log(print_r($my_variable, true));
ステージング環境でのテスト
本番環境で直接テストしない特にデータベース操作を伴うテストは、本番環境とは別のステージング環境(またはローカル環境)で行ってください。