2016-11-30 4 views
-3

TDDプロジェクトのソリューションアーキテクチャはどのようになりますか。私はテストプロジェクトをどのように設計すべきですか?TDDソリューションアーキテクチャのベストプラクティス

すでに開発済みのMVCプロジェクトのテストプロジェクトを作成する必要があります。私は新機能のいくつかを強化します。このプロジェクトがTDDアプローチを使用して新しい機能を開発するのは今回が初めてです。私が従うべき慣習はありますか?

私は別のテストアプリケーションを作成する必要がありますいくつかのテストクラス、メソッドを記述します。次に、同じテストプロジェクトまたは新しい機能が実装される元のプロジェクトに実際の機能を実装します。

私が知る必要があるもう一つのことは、クラス、メソッド、変数に名前を付けるための具体的な規約がありますか?私はMSテストを使用し、MOQをモックするために使用します。

+0

''そして、同じテストプロジェクトや、新しい機能が実装される元のプロジェクトに実際の機能を実装してください。」 - このステートメントが意味することは全く理解できません。 TDDは、現在の機能を検証するテストがあることを暗示し、新しい機能をテストするためにテストを追加/変更します(新しい機能がまだ存在しないため、最初は失敗します)。テストを行い、必要に応じて渡したテストをベースラインとして使用してリファクタリングします。あなたがここで尋ねていることは本当にはっきりしません。 – David

+0

2つの数字を合計する機能を書いておきます。最初はsumメソッドのテストケースを書きました。しかし、私は実際にsumメソッドを実際に作成しませんでした。だから失敗するでしょう。今私はサムメソッドを作成する必要があります。 ここで、私はsumメソッドを作成しますか?テストプロジェクトでは、最終テストや実際のプロジェクトの後に移動します。 –

+0

作成する必要があるメソッドを作成します。私はどこにでもそれを作る理由はないと思う。人工的に複雑なことをしようとしているように思えます。 – David

答えて

4
  • 1つのテストプロジェクトで新しいテストソリューションの作成 - 試験溶液
  • からExisting projectは、元のプロジェクトの参照を追加して、あなたの元のプロジェクトを追加
  • (テストプロジェクト<OriginalProject>.Tests用の推奨名に@ReneAのおかげで)テストプロジェクト
  • 元のプロジェクトと同じフォルダ/名前空間構造を作成します。これは、両方のプロジェクトにナビゲートするのに役立ちます - @ReneA
  • のおかげで
  • 新しいテストクラスを作成し命名して時間を無駄にしないでくださいあなたは、元のプロジェクトからメソッドを呼び出し、結果

を主張する新しいテストメソッドを追加します。最初はテストの作成を開始し、テストを実行します。いくつかのテストの後、あなたのプロジェクトに適した命名規則を自分で見つけることができます。

+0

命名については、いくつかのガイドラインを試してみることをお勧めします。テストプロジェクト名には、.Testsの接尾辞(MyProjectはMyProject.Testsでテスト済み)と同じ名前を使用します。元と同じフォルダ/名前空間構造を使用します。 (MyProject.NameSpaceAはMyProject.Tests.NamespaceAによってテストされます)。これにより、作業中のクラスのテストクラスをすばやく見つけることができます。 – ReneA

+0

私はいくつかのチュートリアルからまず最初にテストケースを書く必要があることを読んでいます。したがって、新しく作成された機能の実装が存在しないため、失敗します。次に、新しいメソッドやコードを記述する必要があります。どこに記述すればいいですか? 2つの数字を合計する機能を作成します。最初はsumメソッドのテストケースを書きました。しかし、私は実際にsumメソッドを実際に作成しませんでした。だから失敗するでしょう。今私はサムメソッドを作成する必要があります。だからここで私は合計メソッドを作成しますか?テストプロジェクトでは、最終テストや実際のプロジェクトの後に移動します。 –