`
hl756799782
  • 浏览: 77679 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

反射及注解在JUnit里面的应用

阅读更多

JUnit3.X的执行的一般流程:(JUnit3.X是基于反射的测试框架)

 
a) 首先获得待测试类所对应的Class对象。

 

b) 然后通过该Class对象获得当前类中所有public方法所对应的Method数组。


c) 遍历该Method数组,取得每一个Method对象,调用method对象的getName方法,拿   到方法名(字符串类型),然后解析该字符串,如果是以“test”开头,说明这是一个测试方法。


d) 调用method.invoke()方法去执行该方法

 

JUnit4的执行的一般流程:(JUnit4是基于反射加注解的测试框架)

 

a) 首先获得待测试类所对应的Class对象。

b) 然后通过该Class对象获得当前类中所有public方法所对应的Method数组。


c) 遍历该Method数组,取得每一个Method对象


d) 调用每个Method对象的isAnnotationPresent(Test.class)方法,判断该方法是否被Test注解所修饰。


e) 如果该方法返回true,那么调用method.invoke()方法去执行该方法,否则不执行。

分享到:
评论

相关推荐

    java自定义注解\标签库\监听\junit简单测试

    2. 使用注解:在代码中,你可以将自定义注解应用到任何支持的地方: ```java public class MyClass { @MyCustomAnnotation("Test") public void myMethod() { // ... } } ``` 3. 处理注解:为了实际使用注解,...

    JUnit4利用反射机制测试类的私有成员

    在Java编程中,单元测试是确保代码质量的重要环节。JUnit4作为Java领域...但在实际应用中,应谨慎使用反射,因为它可能会引入额外的复杂性和潜在的安全风险。优先考虑重构代码,使关键逻辑可以通过公共API直接测试。

    junit-4.8.2.jar包

    通过反射,JUnit可以在运行时动态地识别和执行带有特定注解的方法,这使得测试框架更加动态和灵活。 总的来说,通过对"junit-4.8.2.jar"包的学习,我们可以深入理解单元测试的重要性,以及如何在实际项目中有效地...

    注解与反射-狂神说Java学习笔记

    在Java编程语言中,注解(Annotation)和反射(Reflection)是两个非常重要的高级特性,它们为程序提供了元数据信息和运行时动态操作类的能力。本文将深入探讨这两个概念及其在实际开发中的应用。 首先,让我们了解...

    注解(最全最详细的注解描述).zip

    注解在Java、Python、C#等许多编程语言中都有应用,它使得代码更加自我描述,帮助开发者更好地理解和维护代码。在Java中,注解以其强大的功能和灵活性,被广泛用于框架开发中,如Spring、Hibernate等。 1. **注解的...

    Java基础之注解+反射.docx

    - 反射在框架开发、插件系统、单元测试、序列化、动态代理等领域有广泛应用,如Hibernate ORM框架使用反射操作数据库,JUnit测试框架通过反射调用测试方法。 总的来说,Java注解提供了静态元数据,使得程序员可以...

    java关于注解使用的例子

    通过学习这些例子,你可以深入理解Java注解的工作原理,如何创建和使用自定义注解,以及它们在实际项目中的应用。同时,你还可以了解注解与其他Java特性的交互,如反射和注解处理器,这将有助于提升你的Java编程技能...

    java注解jar包

    最后,使用注解就是在代码中合适的位置应用定义好的注解。 在Java开发中,注解的应用非常广泛。例如,在Spring框架中,注解被用来进行依赖注入、配置bean以及控制事务等。另外,JUnit测试框架也广泛使用注解来标记...

    Java Annotation注解技术

    Java Annotation注解技术是自Java SE 5.0版本引入的一种元编程机制,它允许程序员在源代码的各个层面(如类、方法、变量等)添加元数据,以供编译器、JVM或第三方工具在编译时或运行时进行处理。Annotation简化了...

    注解、反射、单元测试、lombok知识点总结笔记

    在Java编程中,注解(Annotation)、反射(Reflection)、单元测试(Unit Testing)以及Lombok是四个关键的知识点,它们各自扮演着不同的角色,对于提高代码的可维护性、动态性和测试覆盖率至关重要。 注解是一种元...

    黑马程序员---注解归纳

    在本篇“黑马程序员---注解归纳”中,我们将深入探讨注解的基本概念、类型以及它们在实际开发中的应用。 首先,注解在Java中是一种特殊的声明,以`@`符号开头,后面跟着注解的名称。它们可以应用于类、接口、方法、...

    注解(Annotation)的定义及使用

    5. **Web开发**:在Servlet 3.0及以上版本,可以通过注解配置Servlet,避免了web.xml文件的繁琐设置。 6. **日志记录**:自定义日志注解可以在运行时捕获并记录相关信息。 总之,注解在Java编程中提供了强大的元...

    JAVA 注解示例 详解

    - **运行时处理**:在运行时通过反射API访问注解信息,例如`Class.getAnnotations()`。 4. **元注解**:元注解是用于注解其他注解的注解,如`@Retention`、`@Target`、`@Documented`和`@Inherited`: - `@...

    Java注解实现方式

    在实际开发中,注解的应用非常广泛,如JPA的实体注解`@Entity`,用于将类映射到数据库表;Junit的测试注解`@Test`,用于标识测试方法;还有JSR303/JSR349的Bean验证注解,如`@NotNull`,`@Size`等,用于验证对象属性...

    junit-3.8.1-src

    在实际运行时,JUnit会通过反射机制动态地加载和执行测试类,这使得我们可以方便地添加、修改测试而不必更改运行测试的代码。同时,JUnit还支持注解,如`@Before`、`@After`、`@Test`等,这些注解可以帮助我们定义...

    (转)Java中的注解是如何工作的?

    - 反射API允许在运行时检查类、接口、字段和方法的注解,如`Class.getAnnotation()`和`Method.getDeclaredAnnotations()`。 - 可以使用`AnnotatedElement`接口的`isAnnotationPresent()`来判断是否存在特定注解。 ...

    day24_枚举_注解_反射.pdf

    使用Junit时,我们需要在测试方法上添加`@Test`注解,并确保方法无参数且返回值为`void`。例如: ```java public class MyTest { @Test public void testMyFunction() { // 测试代码 } } ``` 执行单元测试时,...

    Java中三种标准注解和四种元注解.pdf

    在实际开发中,注解被广泛应用于框架、依赖注入、AOP(面向切面编程)、单元测试(如JUnit的@Test注解)等多个领域,极大地提高了代码的可读性和维护性。理解并熟练使用Java的注解和元注解是现代Java开发中的必备...

    使用java注解.doc

    注解的使用在EJB 3.0和JUnit 4等框架中得到了广泛的应用,简化了企业级开发和测试。例如,EJB 3.0使用注解来声明实体bean和接口,而JUnit 4允许通过注解直接定义测试方法,无需XML配置。随着Java平台的发展,注解的...

    java的注解

    运行时注解可以在程序运行时通过反射获取,比如`@Retention(RetentionPolicy.RUNTIME)`。 2. **预定义注解**: - `@Override`:确保方法重写父类的方法,如果找不到对应方法,则编译错误。 - `@Deprecated`:标记...

Global site tag (gtag.js) - Google Analytics