c# - InternalsVisibleTo 不适用于 MSTest

标签 c# unit-testing mstest

我调查了googlestack over flow并阅读有关如何让 InternalsVisibleTo 工作的所有帖子。

但它对我不起作用。

请不要对这个问题投反对票,因为我已尽力在论坛上查看和实现答案..

我的代码如下:

* 内部 TestInternal 项目 *

namespace TestInteral
{
    [TestClass]
    public class MyProviderTest
    {
        [TestMethod]
        public void TestBar()
        {
            bool retval = false;

            retval = new MyProviderClass().Bar();

            Assert.AreEqual(true,retval);
        }

    }
}

* 内部提供商项目 *

[assembly: InternalsVisibleTo("TestInternal")]
namespace Provider
{

    public class MyProviderClass
    {
        internal bool Bar()
        {
            return true;

        }

        private void UseBar()
        {
            bool retval = Bar();

        }
    }
}

我在测试类中遇到以下错误。

错误 1“Provider.MyProviderClass”不包含“Bar”的定义,并且找不到接受“Provider.MyProviderClass”类型的第一个参数的扩展方法“Bar”(您是否缺少 using 指令还是汇编引用?)

请告诉我如何正确使用 InternalsVisibleTo,以便我可以正确测试 MyProviderClass 中的 Internal 方法。

谢谢

最佳答案

假设您刚刚将您的确切代码复制并粘贴到问题中,这是一个简单的错字。我注意到测试程序集上的命名空间是 TestInteral,没有“N”。并且您的 InternalsVisibleTo 声明具有最后一个“N”:

[assembly: InternalsVisibleTo("TestInternal")]

大概就这些了。<​​/p>

关于c# - InternalsVisibleTo 不适用于 MSTest,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10588592/

相关文章:

c - 单元测试 UDP 套接字处理代码

c++ - 我应该如何对代码生成器进行单元测试?

c# - 如何编写单元测试的输出?

c# - 使用独立模块管理器加载 Prism 模块

c# - 如何浏览我的 Windows 10 应用程序中的相邻文件?

javascript - 如何获取复选框选定的值并传递给 asp.net mvc 4 中的 Controller

c++ - MFC gui 可以用谷歌测试测试吗?

c# - wcf 中的构造函数

c# - EventToCommand 无法添加到 TriggerActionCollection

c# - moq No setups configured error,如何快速正确添加setup