MS单元测试 - 不总是识别私有访问者

时间:2010-09-30 08:53:46

标签: .net unit-testing

所有项目都不会出现此问题,因此会让人更加沮丧。

如果我单击Private方法来创建单元测试,它将生成一个TestProject程序集并在那里创建一个预定义的类。它还会为该类创建一个Accessor。

[TestMethod()]
        [DeploymentItem("xxx.Client.dll")]
        public void PopulateIncomeCostsDataSetTest()
        {
            CashFlowOperations_Accessor target = new CashFlowOperations_Accessor(); // TODO: Initialize to an appropriate value
            CashflowModel cashflowModel = null; // TODO: Initialize to an appropriate value
            CashflowDataSet ds = null; // TODO: Initialize to an appropriate value
            target.PopulateIncomeCostsDataSet(cashflowModel, ds);
            Assert.Inconclusive("A method that does not return a value cannot be verified.");
        }

只要我在库程序集(dll)中为私有方法创建此单元测试就可以了,但是如果我为可执行文件[DeploymentItem("xxx.exe")]创建的控制台应用程序创建它,我的访问器将保持红色我无法访问该访问者的内部私有方法。

2 个答案:

答案 0 :(得分:0)

我不知道这是否有帮助(我无法重现您的错误)但在Local.testsettings中有一个选项可以启用部署。

  • 从解决方案项打开Local.testsettings
  • 在列表框中选择“部署”项目
  • 选中“启用部署”

必须先完成此操作才能在应用程序而不是库中进行单元测试

答案 1 :(得分:0)

这似乎是Visual Studio中的一个错误。这可能发生在VS 2088甚至VS 2010中.VS 2010的SP1为我解决了这个问题。希望这有助于其他人。