我在使用JUnit 4时遇到了一个问题。有一件事让我非常困惑。 为什么下面没有主要功能,但是它可以被执行并且返回测试结果?它甚至没有扩展一个类。这样的代码如下:代码如下:java junit没有主要功能
import org.junit.runner.RunWith;
import org.junit.runners.Suite;
import org.junit.runners.Suite.SuiteClasses;
@RunWith(Suite.class)
@SuiteClasses({ ATest.class,BTest.class })
public class AllTests {
}
好的,你是说runner类中的主要方法实际上是由eclipse IDE或builder工具实现的吗?我想这涉及到一些低级细节。我在哪里可以看到细节(跑步课程?)?此外,每次测试都会提供“测试”注释,无论何时我选择构建,IDE或构建工具都会调用runner类的主要方法,并根据注释执行测试(单个测试或整个测试套件) , 对?感谢您的详细解释! –
否:IDE不执行任何操作。这里是你正在寻找的主要:https://github.com/KentBeck/junit/blob/master/src/main/java/org/junit/runner/JUnitCore.java 主要方法实际上是一个在Java中的约定用于启动命令行的程序;一旦IDE通过其main()启动,它可以直接使用junit功能作为正常的Java库访问其API。另一个例子:运行一个Java小程序,你不需要主要:http://docs.oracle.com/javase/tutorial/deployment/applet/subclass.html'appletviewer'实用程序提供了他自己的主要负载和运行applet init()。 –
呃...我试图用命令行来运行上面的代码,它显示了异常,'线程中的异常'main“java.lang.NoSuchMethodError:main' 因此,Junit与IDE密切相关?如果我想实现一个功能(例如每隔一小时运行一次单元测试,遇到故障,开发人员将收到通知电子邮件),这是否意味着我无法使用上面的代码? –