【发布时间】:2023-03-26 23:02:01
【问题描述】:
我必须为我的应用程序编写单元测试,但我遇到了问题。我正在使用 C# 和 .NET 4。在我的测试中,我无法访问类的私有属性和方法,因此我在单元测试中为每个类使用自动生成的访问器,但是 ...
Accessor 类的构造函数不接受他们的参数。 示例:
class SearchControl(bool isLogged, MainWindow mainWindow);
class MainWindow();
要创建 SearchControl 类型的对象,您需要传递 mainWindow 对象。因此,如果我使用非 Accessor 类进行此操作,我将无法访问私有方法和属性,也无法对其进行测试。
MainWindow mainWindow = new MainWindow();
SearchControl serchControl = new SearchControl(false, mainWindow);
我必须使用 Accessor clasees,但是当我这样做时,我的代码带有红色下划线,并且 Visual Studio 说不能接受参数。为什么,当我传递相同类型的参数时。如果我再次将 MainClass 对象传递给 SearchControl_Accessor 对象,我将无法访问 MainClass 中的属性。所以带有访问器的代码如下所示:
MainWindow_Accessor mainWindow = new MainWindiow_Accessor();
SearchControl_Accessor searchControl = new SearchControl_Accessor(false, mainWindow);
任何人都知道出了什么问题以及我必须做些什么来解决它。 谢谢:)
【问题讨论】:
-
您的“示例”不是有效代码,因此很难判断发生了什么。 (您的术语也不清楚 - 什么是“访问器类”?)
-
那么您想进行单元测试但不能进行单元测试的原因是什么?
标签: c# .net wpf unit-testing accessor