WordPressでの適切な単体テスト


8

WordPressの単体テストにはさまざまなスレッドがあります。限りでは、WordPressで行われたすべてのカスタマイズに対して適切なユニットテストを行う必要があります。

私はいくつかのプラグインと同じものについての記事をチェックしました。ここにいくつかあります。

  1. http://codex.wordpress.org/Theme_Unit_Test
  2. http://wptest.io/
  3. https://make.wordpress.org/core/handbook/testing/automated-testing/phpunit/

これで、PHPユニットを使用して、必要に応じてテストケースを作成できます。コア機能とカスタマイズのためにテストケースを作成できます。

ヘビープラグインとカスタマイズを備えたテーマの自動ユニットテストについてはどうですか。メガメニュー、ビジュアルコンポーザー、Woo Commerceのカスタマイズなど。

これはどのように行うことができますか?高度なカスタマイズが可能なプレミアムテーマとプラグインで開発されたサイトのユニットテストの標準はありますか?


ここの質問が何であるかわからない。単体テストは単体テストですが、プラグインとして使用する場合、なぜコードのテストはどういうわけか異なるはずですか?
Mark Kaplun、2016年

1
私たちは、Wordpressのあらゆる種類の開発で機能する自動化された単体テストの標準的な方法を見つけようとしています。何があっても?
Trimantra Software Solution 2016

何のための標準?phpunitは標準のツールですが、ご存知でしょう。各ユニットテストは、特定のユニットの要件に基づいて明らかに異なります
Mark Kaplun

高品質で効率的なコードとウェブサイトを作成するための標準。
Trimantra Software Solution 2016

ユニットテストは、コードが変更されたときにリグレッションを発見するために使用されます。実際には、変更があまりない「1回限り」のサイト開発ではあまりメリットがありません。壊れます。単体テストだけでコードが改善されることはありません。より優れたソフトウェア設計手法を使用する必要があるためです。
Mark Kaplun、2016年

回答:


8

あなたが探しているのは、実際には技術的に機能テスト統合テスト、または受け入れテストと呼ばれるものだと思います。あなたがテストしたいように聞こえる行動コード自体の各ユニット、あなたのウェブサイトのフロントエンド(またはプラグインやテーマのフロントエンド動作)のがありません。PHPUnitのようなツールを使用してPHPコードをテストし、QUnitのようなツールを使用してJSコードをテストできますが、統合された全体としてWebサイト(またはプラグイン/テーマ機能)の実際の動作をテストするには別のツールが必要になります。

残念ながら、受け入れテストはWordPressの分野ではまだかなり若いです。それを行うプラグインやテーマはいくつかありますが、「コア」メソッドはありません(ただし、tracチケット#34693を参照)。コンセンサスな「ベストプラクティス」ツールが必ずしも出現しているとは限りません。したがって、WordPress固有のツールに関しては、これはまだ検討されている領域です。(私自身も、WordPressプラグインの受け入れテストを検討し始めたばかりです。)

ただし、受け入れテストのためのさまざまなツールが世の中に存在し、それらはWordPressを念頭に置いて特別に構築されただけではありません。そして、それは大丈夫です。サイトのフロントエンドの動作をテストする場合、バックエンドに何をもたらしているかはそれほど重要ではありません。したがって、スクラッチで構築されたサイトでテストを実行できるツールは、WordPressサイトやその他のサイトでも非常にうまく機能します。

WordPressはPHPで記述されており、テストにPHPUnitを使用する傾向があるため、Codeceptionはこのための自然な選択です。これは、単体テスト(PHPUnitを使用)、機能テスト、および受け入れテストを作成できるフレームワークであり、単一のコマンドで実行できます。多分これはあなたが探しているようなものだと思います。もしそうなら、あなたはおそらくWPブラウザもチェックアウトしたいと思うでしょう、それはCodeceptionのためのWordPress固有の拡張のセットです。

WordPressプラグインを受け入れテストするための新しいツールがあれば、それはCodeceptionかもしれません。しかし、私の知る限り、これはほとんどのWordPress開発者の間ではまだ若いことなので、将来何が起こるかを待つ必要があります。とにかく飛び込んでそれを使い始めることをためらわないでください—多分それはトレンドを設定するでしょう!


2017年12月12日更新

私がしてきたプラグインWordPointsをテストするためのWPのブラウザを使用して、私はそれに満足しています。Travis CIでWPブラウザー受け入れテストを実行する方法を示すリポジトリもセットアップしました。WordPressエコシステムにはまだ事実上​​の標準はありませんが、Codeception + WP Browserは依然として最も目立つオプションの1つです。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.