CMockery单元测试框架
参见这里写链接内容
1. 获取源码
http://code.google.com/p/cmockery/downloads/list
- windows下编译
- 打开cmd
- vcvars32.bat
- cd cmockery源码的windows目录下
- namke
windows目录下有cmockery.lib库生成
参见:这里写链接内容
3. 使用
- vs创建空项目
- 加入cmockery.h头文件,cmockery.lib库
- 编写待测试math.c文件
int add(int a, int b)
{
return a + b;
}
int sub(int a, int b)
{
return a - b;
}
- 编写测试文件test.c
#include <stdarg.h>
#include <stddef.h>
#include <setjmp.h>
#include "cmockery.h"
#pragma comment(lib,"cmockery.lib")
/* Ensure add() adds two integers correctly. */
void test_add(void **state) {
assert_int_equal(add(3, 3), 6);
assert_int_equal(add(3, -3), 0);
}
/* Ensure sub() subtracts two integers correctly.*/
void test_sub(void **state) {
assert_int_equal(sub(3, 3), 0);
assert_int_equal(sub(3, -3), 6);
}
int main(int argc, char *argv[])
{
const UnitTest tests[] = {
unit_test(test_add),
unit_test(test_sub),
};
return run_tests(tests);
}
- 结果