gpt4 book ai didi

c# - 单元/集成测试中的反射问题

转载 作者:行者123 更新时间:2023-11-30 15:12:36 25 4
gpt4 key购买 nike

我正在使用反射动态创建一个类的实例,这工作正常,除非尝试通过单元测试执行此操作 - 我使用的是 MS 测试框架。
我收到熟悉的错误:“无法加载文件或程序集‘Assy’或其依赖项之一。系统找不到指定的文件”
我已将 dll 复制到单元测试项目的 bin\debug bin 中 - 这不是放置它的正确位置吗?

string assyName = "Go.Data.SqlServer";
string typeName = "GoMolaMola.Data.SqlServer.DataProviderFactory";

Assembly assy = Assembly.Load( assyName );
object o = assy.CreateInstance( typeName );

有什么想法吗?我是单元测试的新手,如有任何帮助,我们将不胜感激。

谢谢

最佳答案

bin/Debug 文件夹不是单元测试运行的地方。 Visual Studio 会将单元测试编译的输出复制到 TestResults 文件夹(通常保留最后五次运行的测试,每次运行的时间戳都嵌入在文件夹名称中)并在那里运行单元测试。

如果您想要该文件夹中的 .DLL,请从您的测试项目创建对 .DLL 的引用,或使用 DeploymentItem属性以确保将项目复制到测试目录。

关于c# - 单元/集成测试中的反射问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1121181/

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