パッチをテストする
パッチのテストは、WordPress のリリースの品質を保証する重要なパートです。
VVV を使用しない設定
VVV を使用している場合は、以下のセクションはスキップしてください。
Grunt は、Trac にアップロードされたパッチをテストするためのコマンドランナーです。Grunt を使うには以下のステップに従ってください:
- 開発環境に
nodejs
とnpm
をインストールします。 - https://develop.svn.wordpress.org/ にある develop WordPress リポジトリをクローンします。
npm install
を実行して、すべての依存関係を取得します。npm run grunt build
を実行して、完全にビルドされたバージョンを取得します。- サーバーのルートとして
/build
を使うように設定します (開発環境の設定によって異なります)。 src
への変更を/build
に反映させるために、作業中にnpm run grunt watch
を実行する。- 別の方法として、/src をドキュメントルートとして使うこともできます。これは、PHP を中心とした開発には便利です。
npm run grunt build -- --dev
を一度実行する必要がありますが、その後は JavaScript/CSS を変更しない限り、npm run grunt watch
はまったく必要ありません。その場合は、npm run grunt watch
の代わりにnpm run grunt watch -- --dev
を使用してください。
VVV を使用した設定
VVV は WP コア開発をサポートしており、config.yml ファイルに設定があります。
VVV を使用する場合、完全な WP コア開発ビルドを含むサイトを追加できます。config/config.yml
を開くと、このためのサイトがあらかじめ用意されていますが、そのままでは無効になっています。wordpress-trunk
を探し、skip_provisioning
を true
から false
に変更すると、以下のようになります:
wordpress-trunk:
skip_provisioning: true
description: "An git based WP Core trunk dev setup, useful for contributor days, Trac tickets, patches"
repo: https://github.com/Varying-Vagrant-Vagrants/custom-site-template-develop.git
hosts:
- trunk.wordpress.test
custom:
vcs: git # using 'svn' will force this vcs
保存したら、vagrant up --provision
で再プロビジョニングします。VVV は、コアでの作業とテストのための開発環境をダウンロードして準備します。この新しいサイトは www/wordpress-trunk/public_html
フォルダーに配置されます。
サイト内には src
と build
の2つのフォルダーがあります。src
フォルダーで行われた変更は grunt
というツールで処理され、build
フォルダーに格納されます。これは www/wordpress-trunk/public_html
フォルダーで npm run grunt watch
コマンドを実行することで自動的に行わます。例:
vagrant ssh
cd /srv/www/wordpress-trunk/public_html
npm run grunt watch
Grunt を使用したテスト
Grunt のセットアップが完了したら、npm run grunt patch:####
と入力し、###
を Trac のチケット番号かパッチの URL に置き換えてください。これでパッチがダウンロードされ、開発環境に変更が適用されます。
注: Cannot find module 'grunt-cli/bin/grunt'
エラーが表示された場合は、以下を実行してから再度試してください:
rm -rf node_modules && npm install
環境をテストする準備はできましたか ? npm run grunt test
を使って自動テストを実行します。このステップでは、PHPUnit がインストールされている必要があることに注意してください。
もしあなたがコミッターなら、コードをコミットする前に必ず npm run grunt precommit
を実行してください。
コミッターの場合は、コード、特にフロントエンド (CSS/JS) に関わるコードをコミットする前に、必ず npm run grunt precommit
を実行してください。
Grunt を使用しないテスト
最終更新日: