gpt4 book ai didi

具有私有(private)构造函数的 C# 单元测试类?

转载 作者:太空狗 更新时间:2023-10-29 19:51:58 25 4
gpt4 key购买 nike

好吧,我刚接到一个任务,我必须在一个带有私有(private)构造函数的类上执行单元测试。

现在,当所有方法都是非静态的时,我应该如何在不初始化类的情况下进行单元测试。

有什么方法可以对具有私有(private)构造函数的类进行单元测试(无需反射)?

最佳答案

如果您不能公开该类,您仍然可以通过以这种方式创建它的实例来轻松地测试它:

var anInstance = (YourPrivateClass)Activator.CreateInstance(typeof(YourPrivateClass), true);

这将为您提供一个您可以随后填充的类的实例。

另一个有用的测试位是如果你有内部方法(不是私有(private)的),你可以通过使内部对你的测试类可见来访问它们。您使用内部方法在类的 assemblyinfo.cs 中添加这一行:

[assembly: InternalsVisibleTo("YourSolution.Tests")]

关于具有私有(private)构造函数的 C# 单元测试类?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15663983/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com