アプリケーションに単体テストを作成する必要がありますが、問題があります。私は C# と .NET 4 を使用しています。私のテストでは、クラスのプライベート プロパティとメソッドにアクセスできないため、ユニット テストではすべてのクラスに対して自動生成されたアクセサーを使用していますが ...
アクセサー クラスのコンストラクターは、引数を受け入れません。例:
class SearchControl(bool isLogged, MainWindow mainWindow);
class MainWindow();
SearchControlタイプのオブジェクトを作成するには、 mainWindow オブジェクトを渡す必要があります。したがって、アクセサー クラス以外でこれを作成すると、プライベート メソッドとプロパティにアクセスできず、それらをテストすることもできません。
MainWindow mainWindow = new MainWindow();
SearchControl serchControl = new SearchControl(false, mainWindow);
アクセサークラスを使用する必要がありますが、これを行うと、コードに赤の下線が引かれ、Visual Studio は引数を受け入れることができないと言います。なぜ、同じ型の引数を渡すときに。MainClassオブジェクトをSearchControl_Accessorオブジェクトに再度渡すと、 MainClass のプロパティにアクセスできません。したがって、アクセサーを使用したコードは次のようになります。
MainWindow_Accessor mainWindow = new MainWindiow_Accessor();
SearchControl_Accessor searchControl = new SearchControl_Accessor(false, mainWindow);
何が間違っているのか、それを修正するために何をしなければならないのかを知っている人。ありがとう :)