不能在visual studio代码中使用DEBUG标志进行测试

时间:2017-01-09 12:13:12

标签: visual-studio-code .net-core xunit

我在visual studio代码中有一个单元测试设置,我需要读取测试数据文件,将其加载到HtmlDocument(HtmlAgilityPack)并测试Parser类。在课程的顶部,我有

public class MegaParserTests{

private HtmlDocument _hd;
private MegaParser _parserUT;

public ParserTests() {
    _parserUI = new MegaParser();
    _hd = new HtmlDocument()

#if DEBUG
    filePath = "data/theDoc.html";
#else
    filePath = @"../../../data/theDoc.html";
#endif

    var docStr = File.ReadAllText(filePath);
    _hd.LoadHtml(doc);
}
}

我使用了#if DEBUG,因为文件路径似乎会根据我是“调试测试”还是从命令行执行“dotnet测试”而改变。但是,当我进行dotnet测试时,顶部的“#if DEBUG”条件被命中,我得到了错误的文件路径。为什么当我运行dotnet测试时运行时认为我处于调试模式..我怎么能改变它?

1 个答案:

答案 0 :(得分:1)

实际上dotnet test command默认情况下使用Release构建配置...尝试使用-configuration标志强制发布构建配置:

dotnet test -c Release
  

-c | --configuration

     

构建下的配置。默认值为Release。