1

我在学校,即将学习如何使用 Junit 测试。

我的问题是:

如果我有一个方法并且我想知道这个方法是否返回一个整数或不将如何做到这一点?是否有允许我检查输出数据类型的断言?

希望有人能够帮助我

最好的祝福

马克·拉斯穆森

4

2 回答 2

4

数据类型由编译器静态声明和断言,例如

public int getValue() { ... }

将始终返回一个 int。尝试以其他方式执行将导致编译错误。因此,我不希望您使用 JUnit 之类的框架,因为它会测试运行代码的输出。

可以想象,您可能会返回一个可能是整数的对象(除其他外),例如

public Object getValue() {
   // could be a Long instead...
   return new Integer(3);
}

可以使用assertTrue()/进行检查instanceof。但是,以上不是很好的编程实践!如果您要返回一个类型,您应该能够在不知道特定子类的情况下多态地对其进行操作。

于 2012-09-06T09:12:12.393 回答
4

您可以使用以下命令检查任何内容:

assertTrue(boolean condition)

在一个方法返回一个对象的情况下,你需要检查它的类型,你可以使用类似的东西:

asserttrue(o is int);
于 2012-09-06T09:16:39.120 回答