功能测试框架(C语言)
功能测试框架,用户只需要在ItemList列表中新增需要待测试功能的接口和补充对应的ID号,然后编译测试
/**文件名:main.h*/typedef int (*func)(void);typedef struct {/*函数功能测试项ID号*/unsigned int item_id;/*函数指针,指向需要待测试功能函数*/int (*func)(void);}ITEM_LIST;
/** 文件名:main.c* Describes:功能测试框架,用户只需要在ItemList列表中新增需要待测试功能的接口和补充对应的ID号* Author:Robert* Time:2020-03-02*//*功能函数1*/int FUNC_1(void){printf("This is func_1\n");return 0;}/*功能函数2*/int FUNC_2(void){printf("This is func_2\n");;return 0;}/*功能函数3*/int FUNC_3(void){printf("This is func_3\n");return 0;}/*用户新增 项目ID和需要测试的项目函数名*/ITEM_LIST ItemList[]={{1, FUNC_1},{2, FUNC_2},{3, FUNC_3},};/*执行测试的程序*/void Run_User_Test_App(int item){ItemList[item-1].func();}/*用户根据需要测试的功能输入对应的测试项ID*/int Get_User_Input(void){int item = 0;scanf("%d", &item);return item ;}int main(int argc, char *argv[]){int item = 0 ;int item_max = 0 ;item_max = sizeof(ItemList)/sizeof(ITEM_LIST);printf("item_max=%d\n", item_max);while(1){printf("please input id of item<1,%d>:\n", item_max);item = Get_User_Input();if( (item<1) || (item>item_max) ){printf("Id of item error\n");continue ;}Run_User_Test_App(item);}return 0 ;}
