我在Visual Studio 2012/13中调试C x64单元测试时遇到困难.
对于Win32和x64,我的单元测试项目构建完美,但是在调试测试时,符号被加载但是断点集被完全跳过并且程序永远不会暂停,就像刚刚运行测试时发生的那样.
如果我为Win32构建单元测试项目,则会触发断点,我可以像往常一样进行调试.
在x64中是否有用于调试单元测试的特殊设置?从项目的默认Win32设置复制属性,并删除所有特定于win32的选项.这是配置单元测试项目的正确理念吗?
解决方法
您必须将Test runner的默认处理器体系结构设置为x64.你可以在Test |中找到它测试设置|默认处理器架构| 64.
您还可以使用此设置创建测试设置文件.
>将XML文件添加到Visual Studio解决方案并重命名,以使其文件扩展名为.runsettings.
>使用示例替换文件内容.
>根据自己的需要编辑它.
>在“测试”菜单上,选择“测试设置”,选择“测试设置文件”.
取自Configuring Unit Tests by using a .runsettings File
您想要更改TargetPlatform标志,如下所示.
<?xml version="1.0" encoding="utf-8"?> <RunSettings> <RunConfiguration> <ResultsDirectory>.\TestResults</ResultsDirectory> <TargetPlatform>x86</TargetPlatform> <TargetFrameworkVersion>Framework40</TargetFrameworkVersion> </RunConfiguration> <!-- more stuff --> </RunSettings>