Inf*_*ris 2 configuration nunit web-config visual-studio-2008 visual-studio
有没有办法在编译时找出项目路径?
我想创建一个单元测试,测试默认web.config中的配置(项目文件夹中的配置).主要是为了减少人为错误.
我不能在运行时依赖程序集位置(用于测试),因此我需要知道项目文件夹在哪里访问web.config.
我需要一个"通用"解决方案,因为我想为多个项目使用相同(基础)测试代码,并且对于大多数开发机器而言,物理位置无论如何都是不同的.
谢谢.
根据rkb的回答,
听起来你有一个C#项目,请使用此post构建步骤.
echo namespace ProjectPath { static public class ProjectPath { public static readonly string Path = @"$(ProjectDir)";} } > $(ProjectDir)path.cs
Run Code Online (Sandbox Code Playgroud)
然后将path.cs作为现有项包含在测试项目中.然后你可以通过以下方式访问它
string path = ProjectPath.ProjectPath.Path;
Run Code Online (Sandbox Code Playgroud)
如果您需要 Visual Studio 项目路径,在编译时,您可以使用预构建事件(请参阅“项目属性”对话框)来运行命令行,该命令行将创建项目中使用的源文件。
源文件将包含一些代码,例如变量定义。您的测试代码使用此变量。变量的值将来自VS;当它运行预构建事件命令时,它会用项目属性替换某些宏。您想要的宏可能是 ProjectDir。
所以最后,您的预构建事件命令如下:
echo 'const char * PROJECT_PATH = "$(ProjectDir)";' > source.cpp
Run Code Online (Sandbox Code Playgroud)
不确定您使用的是什么语言,因此请进行相应调整。
归档时间: |
|
查看次数: |
2657 次 |
最近记录: |