現在、私はPHP用にどのフレームワークを使用すべきかを研究しています。私が持っている2つの選択肢はPHPUnitとPHPSpecです。私はPHPUnitがTDD(テスト駆動開発)であり、PHPSpecがBDD(動作駆動開発)であることを知っています。しかし、実際のPHPSpecチュートリアルがなく、PHPSpecサイトでは限られたドキュメンテーションがあるため、私は完全な結論に達することができません。私の質問は、2つのフレームワークの間にいくつかの類似点と相違点があります。はいBDDとTDDは大きなものですが、他にはありますか?そしてそれらは類似しているように見えますが、誰も彼らの類似点について非常に詳細に語りません。ありがとうございました。PHPUnitとPHPSpecの相違点と相違点
答えて
PHPSpecは、テストフレームワークではなくコード設計の指針として、SpecBDDツールです。 これはツールから期待される内容によって異なり、適切なTDD/SpecBDDを作成したい場合は、開発者が読みやすくよく設計されたコードを書くのに役立つように作成されているため、PHPSpecを使用する方が簡単です。
TDD/SpecBDDは、すべてのエッジケースをテストすることや、アプリケーション全体の統合テストを行うことではないことに注意してください。これは、小さなコード単位の仕様書を書くことに関するものです。
数日前に私はそれについて話をしました、ここであなたはスライドを見つけることができます:http://www.slideshare.net/cakper/2013-0613-spug-spec-bdd-in-php私はそれが決定を下すのに役立つことを願っています。
スライド(スライド46)には、次のものがあります。 $ this-> liveAndLet() - > shouldReturn($ die); これは、phpspecが、オブジェクトインスタンスのプロキシされたインスタンスにメソッド呼び出しを多重定義するためにリフレクションを使用していることを意味しますか? これは、私のクラスの中でphpspecのライブラリメソッドと同じメソッドを指定することができないことを意味しますか? –
- 1. importとconstとの相違点とcommonjsでの相違点
- 2. =と:=の相違点
- 3. MSBuildとTFSBuildの相違点
- 4. string.hとstrings.hの相違点
- 5. NSArrayとNSMutableArrayの相違点
- 6. System.Web.CacheとHTTPContext.Curent.Cacheの相違点
- 7. saveとsave_model()の相違点
- 8. ディスパッチキューとNSOperationQueueの相違点
- 9. HTML5とjQueryの相違点
- 10. QtGui.QApplicationとQtCore.QCoreApplicationの相違点
- 11. CDO.MessageとSystem.Net.Mailの相違点
- 12. TransactionとTransactionScopeの相違点
- 13. addonGlobalLayoutListenerとaddOnPreDrawListenerの相違点
- 14. getGenericParameterTypesとgetParameterTypesの相違点
- 15. vmlinuxとvmlinux.oの相違点
- 16. KeyEventArgs.systemKeyとKeyEventArgs.Keyの相違点
- 17. Thread.sleep()とTimeUnit.SECONDS.sleep()の相違点
- 18. レポートとサブレポートの相違点
- 19. MPI_ScatterとMPI_Bcastの相違点
- 20. V8とECMAScriptの相違点
- 21. カーネルモードとドライバの相違点
- 22. アルゴリズムとメソッドの相違点
- 23. mysql_num_rowsとmysql_affected_rowsの相違点
- 24. modelAttributeとcommandNameの相違点
- 25. システムとshell_execの相違点
- 26. 'コミット'と 'リビジョン'の相違点
- 27. 'コンポーネントアーキテクチャ'と 'モジュラアーキテクチャ'の相違点
- 28. scipy.spatial.KDTreeとscipy.spatial.cKDTreeの相違点
- 29. readFileとreadFileSyncの相違点
- 30. .classpathとMANIFEST.MFの相違点
たとえば、PHPSpecのサポートPHPUnitのようなマッピングは@dataProviderと同じですか? – applecrusher