Marine Library  1.0
C++ library for Linux Networking Development
pftest.hh
1 #ifndef DOZERG_PFTEST_H_20130619
2 #define DOZERG_PFTEST_H_20130619
3 
4 /*
5  通用性能测试框架 PFINIT 定义全局初始化代码 PFUNINIT 定义全局结束代码 PFINIT_T 定义测试用例的初始化代码 PFUNINIT_T 定义测试用例的结束代码 PFTEST 定义测试用例的测试代码 PFASSERT 检查表达式的值 //*/ #include "impl/pftest_impl.hh" //#define __TIME //enable speed test //#define __GPROF //enable gprof test //#define __GPERF //enable gperftools CPU test //#define __PERF //enable perf test //定义全局初始化/结束代码 #define PFINIT() __PF_GLOBAL_INIT(true) #define PFUNINIT() __PF_GLOBAL_INIT(false) //定义测试用例的初始化/结束代码 #define PFINIT_T(case_name, test_name) __PF_TEST_INIT(case_name, test_name, true) #define PFUNINIT_T(case_name, test_name) __PF_TEST_INIT(case_name, test_name, false) //定义测试用例的测试代码 //pf_thread_index: 保留的变量名,表示线程索引,从0开始 //pf_thread_count: 保留的变量名,表示线程总数 //pf_thread_finish: 保留的变量名,表示线程是否应该结束 #define PFTEST(case_name, test_name) __PFTEST(case_name, test_name) //检查表达式的值,并可以输出错误信息 //expr: // true 通过,继续执行 // false 不通过,输出错误信息,中断执行 //示例: // int x = 0; // PFASSERT(x == 0)<<"x="<<x<<" is NOT 0!"; #define PFASSERT(expr) __PFASSERT(expr) #endif
6  PFINIT 定义全局初始化代码 PFUNINIT 定义全局结束代码 PFINIT_T 定义测试用例的初始化代码 PFUNINIT_T 定义测试用例的结束代码 PFTEST 定义测试用例的测试代码 PFASSERT 检查表达式的值 //*/ #include "impl/pftest_impl.hh" //#define __TIME //enable speed test //#define __GPROF //enable gprof test //#define __GPERF //enable gperftools CPU test //#define __PERF //enable perf test //定义全局初始化/结束代码 #define PFINIT() __PF_GLOBAL_INIT(true) #define PFUNINIT() __PF_GLOBAL_INIT(false) //定义测试用例的初始化/结束代码 #define PFINIT_T(case_name, test_name) __PF_TEST_INIT(case_name, test_name, true) #define PFUNINIT_T(case_name, test_name) __PF_TEST_INIT(case_name, test_name, false) //定义测试用例的测试代码 //pf_thread_index: 保留的变量名,表示线程索引,从0开始 //pf_thread_count: 保留的变量名,表示线程总数 //pf_thread_finish: 保留的变量名,表示线程是否应该结束 #define PFTEST(case_name, test_name) __PFTEST(case_name, test_name) //检查表达式的值,并可以输出错误信息 //expr: // true 通过,继续执行 // false 不通过,输出错误信息,中断执行 //示例: // int x = 0; // PFASSERT(x == 0)<<"x="<<x<<" is NOT 0!"; #define PFASSERT(expr) __PFASSERT(expr) #endif
7  PFUNINIT 定义全局结束代码 PFINIT_T 定义测试用例的初始化代码 PFUNINIT_T 定义测试用例的结束代码 PFTEST 定义测试用例的测试代码 PFASSERT 检查表达式的值 //*/ #include "impl/pftest_impl.hh" //#define __TIME //enable speed test //#define __GPROF //enable gprof test //#define __GPERF //enable gperftools CPU test //#define __PERF //enable perf test //定义全局初始化/结束代码 #define PFINIT() __PF_GLOBAL_INIT(true) #define PFUNINIT() __PF_GLOBAL_INIT(false) //定义测试用例的初始化/结束代码 #define PFINIT_T(case_name, test_name) __PF_TEST_INIT(case_name, test_name, true) #define PFUNINIT_T(case_name, test_name) __PF_TEST_INIT(case_name, test_name, false) //定义测试用例的测试代码 //pf_thread_index: 保留的变量名,表示线程索引,从0开始 //pf_thread_count: 保留的变量名,表示线程总数 //pf_thread_finish: 保留的变量名,表示线程是否应该结束 #define PFTEST(case_name, test_name) __PFTEST(case_name, test_name) //检查表达式的值,并可以输出错误信息 //expr: // true 通过,继续执行 // false 不通过,输出错误信息,中断执行 //示例: // int x = 0; // PFASSERT(x == 0)<<"x="<<x<<" is NOT 0!"; #define PFASSERT(expr) __PFASSERT(expr) #endif
8  PFINIT_T 定义测试用例的初始化代码 PFUNINIT_T 定义测试用例的结束代码 PFTEST 定义测试用例的测试代码 PFASSERT 检查表达式的值 //*/ #include "impl/pftest_impl.hh" //#define __TIME //enable speed test //#define __GPROF //enable gprof test //#define __GPERF //enable gperftools CPU test //#define __PERF //enable perf test //定义全局初始化/结束代码 #define PFINIT() __PF_GLOBAL_INIT(true) #define PFUNINIT() __PF_GLOBAL_INIT(false) //定义测试用例的初始化/结束代码 #define PFINIT_T(case_name, test_name) __PF_TEST_INIT(case_name, test_name, true) #define PFUNINIT_T(case_name, test_name) __PF_TEST_INIT(case_name, test_name, false) //定义测试用例的测试代码 //pf_thread_index: 保留的变量名,表示线程索引,从0开始 //pf_thread_count: 保留的变量名,表示线程总数 //pf_thread_finish: 保留的变量名,表示线程是否应该结束 #define PFTEST(case_name, test_name) __PFTEST(case_name, test_name) //检查表达式的值,并可以输出错误信息 //expr: // true 通过,继续执行 // false 不通过,输出错误信息,中断执行 //示例: // int x = 0; // PFASSERT(x == 0)<<"x="<<x<<" is NOT 0!"; #define PFASSERT(expr) __PFASSERT(expr) #endif
9  PFUNINIT_T 定义测试用例的结束代码 PFTEST 定义测试用例的测试代码 PFASSERT 检查表达式的值 //*/ #include "impl/pftest_impl.hh" //#define __TIME //enable speed test //#define __GPROF //enable gprof test //#define __GPERF //enable gperftools CPU test //#define __PERF //enable perf test //定义全局初始化/结束代码 #define PFINIT() __PF_GLOBAL_INIT(true) #define PFUNINIT() __PF_GLOBAL_INIT(false) //定义测试用例的初始化/结束代码 #define PFINIT_T(case_name, test_name) __PF_TEST_INIT(case_name, test_name, true) #define PFUNINIT_T(case_name, test_name) __PF_TEST_INIT(case_name, test_name, false) //定义测试用例的测试代码 //pf_thread_index: 保留的变量名,表示线程索引,从0开始 //pf_thread_count: 保留的变量名,表示线程总数 //pf_thread_finish: 保留的变量名,表示线程是否应该结束 #define PFTEST(case_name, test_name) __PFTEST(case_name, test_name) //检查表达式的值,并可以输出错误信息 //expr: // true 通过,继续执行 // false 不通过,输出错误信息,中断执行 //示例: // int x = 0; // PFASSERT(x == 0)<<"x="<<x<<" is NOT 0!"; #define PFASSERT(expr) __PFASSERT(expr) #endif
10  PFTEST 定义测试用例的测试代码 PFASSERT 检查表达式的值 //*/ #include "impl/pftest_impl.hh" //#define __TIME //enable speed test //#define __GPROF //enable gprof test //#define __GPERF //enable gperftools CPU test //#define __PERF //enable perf test //定义全局初始化/结束代码 #define PFINIT() __PF_GLOBAL_INIT(true) #define PFUNINIT() __PF_GLOBAL_INIT(false) //定义测试用例的初始化/结束代码 #define PFINIT_T(case_name, test_name) __PF_TEST_INIT(case_name, test_name, true) #define PFUNINIT_T(case_name, test_name) __PF_TEST_INIT(case_name, test_name, false) //定义测试用例的测试代码 //pf_thread_index: 保留的变量名,表示线程索引,从0开始 //pf_thread_count: 保留的变量名,表示线程总数 //pf_thread_finish: 保留的变量名,表示线程是否应该结束 #define PFTEST(case_name, test_name) __PFTEST(case_name, test_name) //检查表达式的值,并可以输出错误信息 //expr: // true 通过,继续执行 // false 不通过,输出错误信息,中断执行 //示例: // int x = 0; // PFASSERT(x == 0)<<"x="<<x<<" is NOT 0!"; #define PFASSERT(expr) __PFASSERT(expr) #endif
11  PFASSERT 检查表达式的值
12 //*/
13 
14 #include "impl/pftest_impl.hh"
15 
16 //#define __TIME //enable speed test
17 //#define __GPROF //enable gprof test
18 //#define __GPERF //enable gperftools CPU test
19 //#define __PERF //enable perf test
20 
21 //定义全局初始化/结束代码#define PFINIT() __PF_GLOBAL_INIT(true) #define PFUNINIT() __PF_GLOBAL_INIT(false) //定义测试用例的初始化/结束代码 #define PFINIT_T(case_name, test_name) __PF_TEST_INIT(case_name, test_name, true) #define PFUNINIT_T(case_name, test_name) __PF_TEST_INIT(case_name, test_name, false) //定义测试用例的测试代码 //pf_thread_index: 保留的变量名,表示线程索引,从0开始 //pf_thread_count: 保留的变量名,表示线程总数 //pf_thread_finish: 保留的变量名,表示线程是否应该结束 #define PFTEST(case_name, test_name) __PFTEST(case_name, test_name) //检查表达式的值,并可以输出错误信息 //expr: // true 通过,继续执行 // false 不通过,输出错误信息,中断执行 //示例: // int x = 0; // PFASSERT(x == 0)<<"x="<<x<<" is NOT 0!"; #define PFASSERT(expr) __PFASSERT(expr) #endif
22 #define PFINIT() __PF_GLOBAL_INIT(true)
23 #define PFUNINIT() __PF_GLOBAL_INIT(false)
24 
25 //定义测试用例的初始化/结束代码#define PFINIT_T(case_name, test_name) __PF_TEST_INIT(case_name, test_name, true) #define PFUNINIT_T(case_name, test_name) __PF_TEST_INIT(case_name, test_name, false) //定义测试用例的测试代码 //pf_thread_index: 保留的变量名,表示线程索引,从0开始 //pf_thread_count: 保留的变量名,表示线程总数 //pf_thread_finish: 保留的变量名,表示线程是否应该结束 #define PFTEST(case_name, test_name) __PFTEST(case_name, test_name) //检查表达式的值,并可以输出错误信息 //expr: // true 通过,继续执行 // false 不通过,输出错误信息,中断执行 //示例: // int x = 0; // PFASSERT(x == 0)<<"x="<<x<<" is NOT 0!"; #define PFASSERT(expr) __PFASSERT(expr) #endif
26 #define PFINIT_T(case_name, test_name) __PF_TEST_INIT(case_name, test_name, true)
27 #define PFUNINIT_T(case_name, test_name) __PF_TEST_INIT(case_name, test_name, false)
28 
29 //定义测试用例的测试代码//pf_thread_index: 保留的变量名,表示线程索引,从0开始 //pf_thread_count: 保留的变量名,表示线程总数 //pf_thread_finish: 保留的变量名,表示线程是否应该结束 #define PFTEST(case_name, test_name) __PFTEST(case_name, test_name) //检查表达式的值,并可以输出错误信息 //expr: // true 通过,继续执行 // false 不通过,输出错误信息,中断执行 //示例: // int x = 0; // PFASSERT(x == 0)<<"x="<<x<<" is NOT 0!"; #define PFASSERT(expr) __PFASSERT(expr) #endif
30 //pf_thread_index: 保留的变量名,表示线程索引,从0开始
31 //pf_thread_count: 保留的变量名,表示线程总数//pf_thread_finish: 保留的变量名,表示线程是否应该结束 #define PFTEST(case_name, test_name) __PFTEST(case_name, test_name) //检查表达式的值,并可以输出错误信息 //expr: // true 通过,继续执行 // false 不通过,输出错误信息,中断执行 //示例: // int x = 0; // PFASSERT(x == 0)<<"x="<<x<<" is NOT 0!"; #define PFASSERT(expr) __PFASSERT(expr) #endif
32 //pf_thread_finish: 保留的变量名,表示线程是否应该结束#define PFTEST(case_name, test_name) __PFTEST(case_name, test_name) //检查表达式的值,并可以输出错误信息 //expr: // true 通过,继续执行 // false 不通过,输出错误信息,中断执行 //示例: // int x = 0; // PFASSERT(x == 0)<<"x="<<x<<" is NOT 0!"; #define PFASSERT(expr) __PFASSERT(expr) #endif
33 #define PFTEST(case_name, test_name) __PFTEST(case_name, test_name)
34 
35 //检查表达式的值,并可以输出错误信息
36 //expr:
37 // true 通过,继续执行
38 // false 不通过,输出错误信息,中断执行
39 //示例:
40 // int x = 0;
41 // PFASSERT(x == 0)<<"x="<<x<<" is NOT 0!";
42 #define PFASSERT(expr) __PFASSERT(expr)
43 
44 #endif
45