MinUnit – 最小的c语言测试模板

原创 2003年08月06日 10:31:00

MinUnit – 最小的c语言测试框架

介绍
源代码
安装一个测试实例
例子
结论
许可
附录: 为什么用 do {} while?

介绍

单元测试模板在面向对象的编程语言中相当流行。像JUnit,SUnit和CppUnit等模板提供相当多的功能。可是,如此多的功能会使做单元测试的开发者(例如使用C语言开发嵌入式系统的开发者)进入拘泥的环境。单元测试的重点是测试而不是测试模板。MiniUnit是一个极端简单的C语言单元测试模板。他没有内存分配,因此可以使用在包括ROMable代码在内的几乎任意环境中良好工作。

源代码

它只有三行代码。

安装一个测试实例

一个MinUnit测试实例是一个通过测试则返回0(NULL)的函数。如果测试失败,这个函数应该返回一个测试失败的描述字符串。mu_assert 是一个当表达式失败时返回字符串的宏。而宏mu_runtest重复调用测试实例直到测试实例失败。这就是MinUnit的全部。

例子

下面的例子运行两个测试,一个成功,一个失败。

结论

人们一般认为写一个单元测试模板会很复杂。但实际上你仅仅需要写几行代码。当然如果你接触如JUnit一样的全功能的单元测试模板,那你应该用所有的手段使用它。如果你没有,你仍然可以使用像MinUnit一样简单的模板,否则你的时间将会飞逝。这不是放弃单元测试的理由。

许可

你可以在任意目的下使用本文的代码而不需要任何的理由。

<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />

 

最小gcc.exe编译器(C语言)

gcc是一款C语言编译器,为了研究它,我提炼了gcc的C语言最小编译环境,如下:...
  • u010411264
  • u010411264
  • 2017年06月10日 00:17
  • 264

用费马小定理做素性测试

自大一以后再次用C,现在做一道OJ题用费马小定理判断素性 顺便把过程发上来吧 总结记录一下 #define _CRT_SECURE_NO_WARNINGS #include #include #i...
  • qq_23581569
  • qq_23581569
  • 2015年10月12日 23:10
  • 932

c语言 用数组找最小数 消除重复

用数组找最小数:输入十个数字,找出最小数并打印出来 #include #include #define S 10 void minx(int b[]); int main () { int a[S...
  • weixin_40838774
  • weixin_40838774
  • 2017年11月28日 21:20
  • 39

C语言练习题每练 2:找出三个字符串中最大的

找出三个字符串中最大的,存储用二维数组,比较用strcmp就可以了。另外创建一个一维数组存储一下最大的字符串即可。//找出三个字符串中最大的 #include #include void main()...
  • u013369277
  • u013369277
  • 2016年07月01日 11:06
  • 686

C++中模板与用C语言中实现模板

1、模板的概念 我们已经学过重载(Overloading),对重载函数而言,C++的检查机制能通过函数参数的不同及所属类的不同。正确的调用重载函数。例如,为求两个数的最大值,我们定义MAX()函...
  • Stephan14
  • Stephan14
  • 2016年03月05日 10:02
  • 2469

模板模式 (C语言实现)

一. 问题 在面向对象系统的分析与设计过程中经常会遇到这样一种情况:对于某一个业务逻辑(算法实现)在不同的对象中有不同的细节实现,但是逻辑(算法)的框架(或通用的应用算法)是相同的。Template提...
  • HMSIWTV
  • HMSIWTV
  • 2014年06月19日 23:36
  • 1326

72 C语言获取随机数

C语言获取随机数
  • czg13548930186
  • czg13548930186
  • 2017年06月03日 14:35
  • 1089

(回顾经典)C语言测试

C语言测试是招聘嵌入式系统程序员过程中必须而且有效的方法。这些年,我既参加也组织了许多这种测试,在这过程中我意识到这些测试能为带面试者和被面试者提供许多有用信息,此外,撇开面试的压力不谈,这种测试也是...
  • dadunqingwa
  • dadunqingwa
  • 2005年07月30日 14:10
  • 1952

C语言-斐波那契(Fibonacci)数列三种不同求法时间复杂度分析

方法一 递归 提起斐波那契数列,首先想到的大概都是递归,但是其时间复杂度并非最优,其时间复杂度为O(2^N)。具体分析可以参考:Fibonacci 方法二 循环 递归之所以效率低下,是因为需要重...
  • kuweicai
  • kuweicai
  • 2016年12月26日 19:13
  • 1191

大数运算模板(C语言)

代码说明: //大数相加#include #include #define MAXN 100 int an1[MAXN+10]; int an2[MAXN+10]; char str1[MAXN...
  • qq_33199236
  • qq_33199236
  • 2016年07月20日 22:08
  • 803
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:MinUnit – 最小的c语言测试模板
举报原因:
原因补充:

(最多只允许输入30个字)