代码测试模块与功能程序分离
?????? 以前在写代码的时候常常需要用到System.out.println();输出语句向控制台输出各种信息来监控程序整个流程的运行情况,这样写不仅麻烦,还往往会因为删除的时候出错,甚至找不到之前写的输出语句到底是在什么地方。下面展示如何实现这些测试代码与功能程序的分离:
package TestPackage;/** * 定义一个测试类 * @author wenshen * */public class TestArea {private static boolean Control_Var=true;/** * 设置测试控制开关 * @param b:测试控制开关变量 */public void setCon(boolean b){this.Control_Var=b;}/** * 输出一般消息的测试方法 * @param Msg:需要输出的信息 */public static void Test(String Msg){if(Control_Var){System.out.println(Msg);}}/** * 出错信息的输出测试 * @param Msg:出错输出信息 */public static void Error(String Msg){if(Control_Var){//还可以执行更复杂的操作,如:把错误信息保存到日志//或把错误信息发送到开发者的邮箱等等System.out.println(Msg);}}}?
?
?
?
通过上面展示的方法,我们发现这样做不仅为我们节省了工作量,而且显得更专业,可以随心所欲的在代码的任意行插入测试,不需要输出时,我们只需要改变变量的值。当然这只是最简单的模型,在写程序的过程中我们还需要根据实际情况定义多个变量来控制测试程序。
?
?