【问题标题】:How to copy resource (any content) files to output folder when NUnit's shadow copying is turned on?打开 NUnit 的卷影复制时,如何将资源(任何内容)文件复制到输出文件夹?
【发布时间】:2010-06-10 13:06:18
【问题描述】:

当然有一个选项可以关闭它(默认情况下它是打开的。)但是我希望能够在 NUnit GUI 的副本启动时对 DLL 进行增量更改。

但是我找不到很多关于这个功能的文档(除了the need) 所以问题是这样的

在 NUnit 中启用卷影复制后,
我的 SUT (Dll) 调用一个可执行文件(也在输出文件夹中;通过引用)。现在,此可执行文件需要某些配置/修改文件与可执行文件位于同一文件夹中。如何确保在测试期间可执行文件可以访问我的参考修饰符文件?

NUnit 是否只复制 SUT dll 或所有链接/引用的 dlls/execs ?我需要在测试设置中做什么才能正确复制 SUT 的任何支持文件?

我看到了

  • executingAssembly.Codebase 为我提供了原始输出文件夹
  • executingAssembly.Location 为我提供了卷影副本文件夹。

我不确定我是否在这里清醒 - 如果我需要更新,请告诉我

【问题讨论】:

    标签: unit-testing nunit


    【解决方案1】:

    真正的问题通常是在测试期间找到它们的位置。

    用这个代替Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location):

    string exeDirectory = Path.GetDirectoryName(new Uri(Assembly.GetExecutingAssembly().CodeBase).LocalPath);
    

    Trouble with NUnit when determining the assembly's directory

    【讨论】:

    • 2 年后我什至不记得我为什么要发布这个。基于 Assembly.Codebase 的查找通常对我有用。位置不是因为 NUnit 将 dll 复制到模糊路径而不是关联文件
    猜你喜欢
    • 2011-06-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-07-14
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多