使用 cppunit 时出错

Posted

技术标签:

【中文标题】使用 cppunit 时出错【英文标题】:Error while using cppunit 【发布时间】:2012-07-26 07:12:11 【问题描述】:

我正在使用 cppunit 来测试我的项目代码。在我的代码中的某些地方,我放置了一些打印语句用于调试目的,例如,

void TestSample()
  
   //getting value from registry
   if( false == getvalue())
     printf("Error : Getting value form registry failed.");
   //.....

当我运行此代码时,我遇到了错误,并且项目因 EXEC 错误而失败。

 EXEC : Error : Getting value form registry failed.

其实这不是代码的问题。它仅与该打印语句一起使用。当我替换这个printf 它工作正常。唯一的问题是打印语句中的“Error:”关键字。

我该如何解决这个问题?打印语句无法删除。我认为在 VS2010 中会有一个选项来避免这样的错误。请帮忙。

【问题讨论】:

有点离题,但if( false == getvalue() ) 看起来……不寻常。 @SingerOfTheFall 是所谓的尤达条件。见dodgycoder.net/2011/11/yoda-conditions-pokemon-exception.html @AndersK,不错,我会记住的 xD 我们将此作为我们的编码标准之一:) if (!getValue()) 有什么问题? 【参考方案1】:

这就是我想要的答案,

http://blogs.msdn.com/b/dsvc/archive/2012/02/29/output-from-exec-task-resulting-in-build-failure.aspx

【讨论】:

以上是关于使用 cppunit 时出错的主要内容,如果未能解决你的问题,请参考以下文章

安装 CppUnit 库和 CppUnit 包括

如何使用 Visual Studio 2012 构建 cppunit

VS2005配置CPPUnit进行单元測试

CPPUNIT:我们真的每次测试都需要一个函数吗?

如何为 Visual C++ 2005 安装 CPPUnit?

检查 CppUnit 中的 printf 输出