首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >CppUTest不工作

CppUTest不工作
EN

Stack Overflow用户
提问于 2011-04-09 18:14:41
回答 4查看 4.5K关注 0票数 2

我正在尝试重写一些遗留的C代码,并希望在实际开始重写之前进行一些测试。FOr这个,我看了一下CppUTest,并尝试了一个示例应用程序,它由一个头文件chrtostr.h、一个实现文件chrtostr.c和一个名为test_chrtostr.c的测试文件组成,其内容如下:

代码语言:javascript
复制
#include <CppUTest/CommandLineTestRunner.h>

#include "chrtostr.h"

TEST_GROUP(chrtostr)
{
}

TEST(chrtostr, test_chrtostr)
{
  CHECK_EQUAL(chrtostr('n'), "sfsdfds");
}

int main(int ac, char **av)
{
  return CommandLineTestRunner::RunAllTests(ac, av);
}

和相应的Makefile.am

代码语言:javascript
复制
AUTOMAKE_OPTIONS = foreign

CPPUTEST_HOME = ./cpputest
CFLAGS = -g -Wall -I$(CPPUTEST_HOME)/include
LDFLAGS = -L$(CPPUTEST_HOME)/lib -lCppUTest

bin_PROGRAMS = chrtostr test_chrtostr
chrtostr_SOURCES = chrtostr.c chrtostr.h main.c
test_chrtostr_SOURCES = test_chrtostr.c

问题是,每次我尝试运行make时,我都会得到以下回溯,这实际上对我没有太大帮助:http://pastebin.com/BK9ts3vk

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2011-04-09 18:22:34

该测试驱动程序是用C++编写的。您需要将其编译为C++,因此将文件重命名为.cpp,并确保调用g++来驱动编译/链接(而不是gcc)。

票数 3
EN

Stack Overflow用户

发布于 2011-04-09 20:46:42

您可能应该从一个演示开始。您可以看到CppUTest是如何与C一起使用的。我的书“嵌入式C的测试驱动开发”也将帮助您入门。前几章使用了纯C语言的测试工具。后面的示例使用CppUTest (我是CppUTest的作者之一)。我还描述了用于C语言的C++测试工具的优点。

詹姆斯

附注:-有关CppUTest的更多信息,请访问CppUTest.org

票数 6
EN

Stack Overflow用户

发布于 2011-05-26 05:38:45

不幸的是,CppUTest中的"HelloWorld“示例没有文档记录,虽然”嵌入式C的测试驱动开发“中的附录只列出了11个条件检查,但我发现还有更多没有文档记录的助手函数(几乎都没有文档记录)。除非你试图理解测试驱动开发的概念,否则我不推荐使用CppuTest。

我会寻找更多的商业产品,否则你会养成很多TDD的坏习惯,或者变得非常沮丧,然后继续前进。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5604401

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档