自定义的单元测试类

来源:互联网 发布:最有名的网络小说家 编辑:程序博客网 时间:2024/06/12 21:45

自定义的单元测试类

1、需要一个测试类 Demo1Test

public class DemoTest1 {@MyTestpublic void test1(){System.out.println("test1执行了");}}
2、需要一个注解MyTest

@Target({ElementType.METHOD})@Retention(RetentionPolicy.RUNTIME)public @interface MyTest {//注解是根据反射的原理运行的}
类上面的@Target{ElementType.Method}  这是注解的注解 查看源代码可以发现里面定义了一个枚举类型的 method是说明这个注解只能作用于方法上面

@Retenttion(....)这也是注解的注解 查看源代码可以发现里面实际上定义了一个value的数组类型 runttime是说明这个注解能够加载到内存中运行

3、根据反射原理运行DemoTest中的方法

public class MyJunitRunner {public static void main(String[] args) throws IllegalAccessException, IllegalArgumentException, InvocationTargetException, InstantiationException {//得到类的字节码对象Class clazz=DemoTest1.class;//反射其中的成员,这里就是方法成员 得到的是其中的所有共有的方法Method[] methods = clazz.getMethods();//遍历方法 看谁上面有注解 就运行谁for(Method m:methods){//在Method 中有一个方法 是getAnnotation//获取方法上的注解实例boolean b = m.isAnnotationPresent(MyTest.class);//判断方法上面有没有注解System.out.println(b+"=="+m.getName());if(b){//执行注解中的方法m.invoke(clazz.newInstance(), null);}}}}
4、上面就是自定义的单元测试,以后我们就可以使用自己的单元测试类了 直接在方法上面加上@MyTest就 如同jdk中的@Test了 效果是一样的





0 0
原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 弹力靴筒往下掉怎么办 子宫内膜厚月经停不了怎么办 雪纺衣服有静电怎么办 阿胶糕熬的稀了怎么办 感冒吃了阿胶糕怎么办 身上起湿疹很痒怎么办 身上起小疹子痒怎么办 吊带裙带子断了怎么办 裙子洗完缩水了怎么办 衬衫洗后缩水了怎么办 羊毛被洗缩水了怎么办 蕾丝洗后缩水了怎么办 天丝针织衫缩水怎么办? 氨纶面料起球怎么办? 新买的衬衫很硬怎么办 孕晚期睡不好觉怎么办 全棉衣服缩水了怎么办 棉麻的衣服起球怎么办 布艺沙发起球怎么办 加绒的衣服掉毛怎么办 新裤子有刺鼻味怎么办 新买鞋子味道大怎么办 天窗下水管堵了怎么办 雪纺衬衫染色了怎么办 雪纺衣服染色了怎么办 漂白后衣服变黄怎么办 用84泡衣服变红怎么办 84腐蚀过的衣服怎么办 紫檀手链泡水了怎么办 链条包链条太短怎么办 涂银遮光布有毒怎么办 车顶布掉下来了怎么办 公摊面积被占用怎么办 按揭房卖了贷款怎么办 首付了贷款不批怎么办 买的房子烂尾了怎么办 备案的房子烂尾怎么办 漏水把楼下泡了怎么办 电动拉闸门没电怎么办 封阳台空调外机怎么办 门牙有缝怎么办1毫米