
工作久了,难免有一些知识点容易遗忘,每次遗忘都会去重新写一个测试demo,然后测试出结果后就把这个demo给删掉了,下次又忘了,又要重写去写,这真是一件吃力不讨好的事情,看到身边有朋友写了这么一套测试框架,觉得非常有用。执行程序,输入对应的项目,即可进行测试,如需添加项目,只需在枚举上增加项目后,在Run_User_Test_App的switch语句上添加枚举,最后编写测试函数即可。 1#include <stdio.h> / i: R% n/ v8 C' Y8 H3 Z( j. e具体代码实现如下: 2#include <stdlib.h>* y8 O* B1 L- [* l 3#include <string.h>+ w$ T) S [4 a1 D% O+ Y/ F 4#include <unistd.h>% W% f, M3 f$ v 5#include <conio.h>, [( o$ }3 Z6 J 6: e7 f* T% ]" J4 `& E' D 7//当前测试项编号枚举 6 Y8 r7 J) M p' @% k 8enum TEST_ITEM. l( ? }0 M. \+ l1 C 9{) a5 t1 u; u! y! [! P, X2 n 10 TEST_1 = 1,; @& s9 e+ z$ d0 @ 11 TEST_2, 12 TEST_3, 13 TEST_4, 14 TEST_5, 15 TEST_6. C5 l/ q E% j3 G* c 16};! K& v- Z2 Z4 ^$ r" _/ c 17$ T* X2 Q$ h1 ^5 t$ ~! S6 P" q 18 19 20int Get_User_input(void) ;" k. i: W! x7 L 21void Run_User_Test_App(int KeyCode); 22$ b2 x. h! D3 o9 D2 Y. A 23int main(void)% ~2 G8 y3 K" u 24{ 25 int KeyCode = 0 ;6 d: o3 d, }" } 26 while(1): C3 c* s+ }& d3 \$ U 27 { 28 printf("请输入测试项:\n"); 29 KeyCode = Get_User_input(); 30 Run_User_Test_App(KeyCode); - K( v7 Y9 K2 b 31 }1 u1 ?+ _. D2 }& @) T( P 32 return 0 ;8 \1 w; D2 z' _# I0 M 33} 34! U0 d* L! p' L Q# z0 `' D 35 36void TEST_1_APP(void)( X! F. o& l) M 37{ 38 printf("测试项目一\n"); 39} 40 41void TEST_2_APP(void) 42{7 d& }1 _1 a% N3 I$ \- ~ 43 printf("测试项目二\n"); j+ n4 l- ]1 _1 o 44}4 ?6 {0 i8 p, g* L 450 m) t% h0 S* ^- c( @/ L* l 46void TEST_3_APP(void) 47{) i1 I8 K( y7 ~ 48 printf("测试项目三\n"); 49} 50/ u3 y; D3 _2 J( m' l 51void TEST_4_APP(void) 52{ 53 printf("测试项目四\n"); 54}6 M% u" T% e$ `/ u$ l1 ] 55 56void TEST_5_APP(void) 57{ 58 printf("测试项目五\n"); , ?- a" g3 H: g6 p- U5 Q, K 59} 60 61void TEST_6_APP(void) 62{ 63 printf("测试项目六\n"); 64} 65 66//执行用户测试APP 6 m/ o A, }0 @/ {6 p 67void Run_User_Test_App(int KeyCode)& Y3 K6 w' c# |) u2 G 68{0 l9 j* }+ U2 e2 @# Q* G' e 69 switch(KeyCode) 70 { 71 case TEST_1: 72 TEST_1_APP(); 73 break ; 74 case TEST_2: 75 TEST_2_APP(); 76 break ;8 @- O! N$ o `9 Q0 M 77 case TEST_3:5 ^! b- y' \& p. ]) V1 M) k 78 TEST_3_APP(); 79 break ; 80 case TEST_4: 81 TEST_4_APP();' \. ~6 C0 M- R z 82 break ;% R) x2 [8 i+ X: W 83 case TEST_5:# }8 |6 {4 r" c: v% h 84 TEST_5_APP(); 85 break ; 86 case TEST_6:* d9 h( H3 C3 `- U# [6 P9 O 87 TEST_6_APP();& c9 n) X2 [2 F( a 88 break ; 89 default:1 _* w. @1 \- i 90 break ; 91 } 92}; z5 e; @* @ U# {* Z 93: g$ x p9 c+ h6 _0 ]; g- X% u 94int Get_User_input(void) 95{ 96 int KeyCode = 0; 97 scanf("%d",&KeyCode); 98 return KeyCode ;1 c$ ]7 h0 O7 Q1 q$ s y Z: X- }+ _, s( l 99} ]5 b$ s3 O( g4 Z# |9 ? |