java - junit中如何判断一个方法是否被重写了?

标签 java junit junit4

我有这个问题,是否有测试注释或断言可以判断一个方法是否已在 junit 中被覆盖?

我目前正在实现一个测试用例,该用例应该判断类 Foo 的方法 toString() 是否覆盖了它的父类(super class)。 谢谢。

最佳答案

你可能会这样做:

 class.getMethod("toString").getDeclaringClass();

这是一个示例:

  class Test {
         public String toString(){
              return "From test";
         }
  }

  public static void main(String[] args) throws NoSuchMethodException, SecurityException {
    String resut = Test.class.getMethod("toString").getDeclaringClass().getName();
    System.out.println(resut);
}

现在先覆盖 toString 运行它,然后将其注释掉,您将看到输出和“Test”,然后是“Object”

关于java - junit中如何判断一个方法是否被重写了?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15996311/

相关文章:

java - maven 无法从测试用例中找到任何包

java - 是否真的有必要在 JUnit 拆卸方法中使对象无效?

java - 使用命令行如何运行 war 文件中的 junit 测试

java - 为 isSorted() 方法创建 JUnit 测试用例的最佳方法是什么?

java - 使用 JUnit Test 的远程配置启动 Spring Boot 上下文

javax.mail.Part.getContent() ArrayIndexOutOfBoundsException : 16448

Long.numberOfTrailingZeros() 的 Java 实现

java - 多消费者无锁队列的实现

java - 无法在 Jboss 7.1.1 中创建 mysql 数据源

java - Mule JUnit 测试 "text/xml"