MS测试 - 访问私有财产

时间:2009-11-03 19:55:50

标签: c# unit-testing

我有一个私有财产,我想在我的MS测试单元测试中访问。

    // Make a local property for control so that we can mock the control object.
    private Control localControl
    {
        get{return Control.Instance;}
    }

我转到该单元,右键单击并选择创建私人访问者 - > MyUnitTestProject

状态栏显示访问者是为项目制作的(没有单位)。

但是当我尝试调用它时(mediator.localControl)它无法找到它。

2 个答案:

答案 0 :(得分:3)

通常它会构建一个名为<YourClassName>_Accessor的包装器对象,用于访问私有属性和方法。

因此,如果Control是您希望在其上看到私有属性的对象,那么您应该创建一个名为Control_Accessor的对象,以便公开私有属性...

编辑:我发现确保我可以访问私有属性或方法的最简单方法是从您的类中右键单击它,然后单击创建单元测试。然后,您可以看到它是如何完成的,然后修改您的测试方法以满足您的需求。

答案 1 :(得分:1)

您需要先编译测试项目,然后才能获得对私有访问者的智能感知支持。