背景
私はC#.NETでプロジェクトに取り組んでおり、Visual Studioのソリューションに新しい単体テストプロジェクトを追加しました。私がこれをいつもやっている方法は:
using
)プロジェクト。あなたができる他の方法は...
質問
.NETのプロジェクトでこれを行う方法として認められているものはありますかor、これは単なる意見であり、それ以上のことはありませんか?
単体テストは別のプロジェクトにあり、メインコードとは別の機能を提供するため、それらを別の名前空間に配置するのが最も理にかなっています。
using
行を保存するためだけに同じ名前空間に配置することを検討している場合は、しないでください。少ないコードは良いです、より明確なコードは良いです。
私は実際のプロジェクトと同じ名前空間を持つ単体テストプロジェクトを(テストプロジェクトの名前空間のTests
サフィックスを手動で削除することにより)数年間問題なく使用してきました。
私はそれがより簡単なコードにつながると思うので、私は通常そのアプローチをとることをお勧めします。名前空間の競合の可能性などのいくつかの欠点は、ユニットテストプロジェクトを処理するときに発生しないはずです。これは、すべてのテストクラスにTests
を付けるなど、すでにいくつかのテスト規則に従っているためです。さらに、クラスとテストクラスを同じ名前空間に置くことは、非常に直感的に思えます。
奇妙だと思う人もいますが、多くのフレームワークアセンブリが同じ名前空間にクラスを持つ複数のDLLを持つこの戦略を使用しているため、これは実際には当てはまりません。これは驚くべきことでも悪いことでもありません。それ自体で練習します。
私はこれは個人的な好みのほうが多いと思うので、それ自体は「答えられる」とは言えません。そうは言っても、上記の推論によると、「私の投票」とは、最初は自分で試してみることであり、アプローチが気に入った場合はそれを試してください。