私は自分のプロジェクトの単体テストに取り組んでいます。 ビジネスロジックを持つDLLは.NET 2.0向けに構築する必要がありますが、テスト用にMoqを使用したいと思います(.NET 3.5が必要)。だからこそ、ビジネスロジックプロジェクトを参照して.Net 3.5プロジェクトをすべてのテストに分けて移動したのです。 私はテストプロジェクトから内部的なマークを付けたメソッドをテストする必要があります。私は条件付きビルドの記号で別のビルド構成を使用していることを行うための唯一の方法を見ることができます:UNITTESTSビルド設定のメソッドをpublicにします。
は#if UNITTESTS
public
#else
internal
#endif
int DoSomeAction(int param1, int param2)
{
// some logic that need to be tested here
}
が、コードのような種類が醜いです。おそらく、いくつかの特別な属性によるマーク方法のようなより良い方法があります。
[ConditionalPublic("UNITTESTS")]
internal int DoSomeAction(int param1, int param2)
{
// some logic that need to be tested here
}
ありがとうございました。
ああ、それは私が探しているものです!ありがとう! –