2.2 用条件编译语句添加本地测试功能

之前用注释方式添加本地测试功能，转换成正式版本比较麻烦。现在通过定义宏LOCAL_TEST和条件编译语句，实现本地测试功能和正式版本的区分。