WordPressの色々なプロジェクトをみているとテストでTravisを利用しているようです。
まずは自作のテーマをテストする環境を作成したいと思います。
$ wp scaffold theme-tests example
$ curl -L https://raw.githubusercontent.com/miya0001/install-wp-test-env/master/install.sh | bash
$ wp scaffold theme-tests example
$ phpcs --standard=phpcs.ruleset.xml $(find . -name '*.php')
$ phpunit
2017.05.04時点ではWordPress-Coding-Standardsは0.11.0でPHP_Codesnifferの2.8.1に対応していました。
$ composer require --dev squizlabs/php_codesniffer ^2.8.1
$ composer require --dev wp-coding-standards/wpcs
{
"require-dev": {
"squizlabs/php_codesniffer": "^2.8.1",
"wp-coding-standards/wpcs": "^0.11.0"
}
}
https://github.com/WordPress-Coding-Standards/WordPress-Coding-Standards
$ phpcs --config-set installed_paths /path/to/wpcs
パスはComposerでインストールしたとき/path/to/project/vendor/wp-coding-standards/wpcsになります。
$ cd (wp theme path --dir example)
$ phpcs --standard=phpcs.ruleset.xml $(find . -name '*.php')
テーマディレクトリ(例ではexample)の直下でgitリポジトリを作成します。
GitHubとTravisの設定をしたあとでmasterへPushするとテストが実行されます。
/tmp内のデータは再起動すると通常破棄されます。 ↩
bin/install-wp-tests.shはTravis CIでのようにテストの度に環境を破棄することが前提なので既存のデータベースがあるとテスト環境構築に失敗します。公開されているスクリプトはinstall-wp-tests.shを呼び出す前に既存のテスト用データベースがあれば破棄します。 ↩
MySQL5.6からWarning: Using a password on the command line interface can be insecure.が出るのでmysqladmin create $DB_NAME --user="$DB_USER"$EXTRA
をmysqladmin create $DB_NAME --user="$DB_USER"$EXTRA
へ変更しました。 ↩
No comments yet.
改行と段落タグは自動で挿入されます。
メールアドレスは表示されません。