在命令行中运行JUnit测试

可以在Eclipse之外运行JUnit测试,使用org.junit.runner.JUnitCore类。 这个类提供了runClasses()方法,它允许运行一个或多个测试类。runClasses()方法返回类型是org.junit.runner.Result对象类型。 这个对象可以被用来收集关于测试信息。此外,如果有一个失败的测试,可以用org.junit.runner.notification.Failure对象保存失败测试的描述。

下面的步骤显示了如何在Eclipse之外(命令行下)运行测试。

用下面的代码创建一个新的Java类为JunitRunner.java:

JunitRunner.java

package com.yiibai.junit;

import org.junit.runner.JUnitCore;
import org.junit.runner.Result;
import org.junit.runner.notification.Failure;

public class JunitRunner {

	public static void main(String[] args) {

		Result result = JUnitCore.runClasses(AssertionsTest.class);
		for (Failure fail : result.getFailures()) {
			System.out.println(fail.toString());
		}
		if (result.wasSuccessful()) {
			System.out.println("All tests finished successfully...");
		}
	}
}
作为一个例子,我们选择运行AssertionsTest测试类。
    • 打开命令提示符,然后往下移目录,找到两个类所在的目录。
    • 编译测试类和运行类。
1 C:Usersyiibaieclipse_workspaceJUnitGuide estcomyiibaijunit>javac -classpath "C:UsersyiibaiDownloadsjunit-4.11.jar";"C:UsersyiibaiDownloadshamcrest-core-1.3.jar"; AssertionsTest.java JunitRunner.java

注:这里指定包含相关 junit 的相关 jar 包。

    • 现在运行 JunitRunner.
1 C:Usersyiibaieclipse_workspaceJUnitGuide estcomyiibaijunit>java -classpath "C:UsersyiibaiDownloadsjunit-4.11.jar";"C:UsersyiibaiDownloadshamcrest-core-1.3.jar"; JunitRunner

这里是结果输出:

All tests finished successfully...

 

原文地址:https://www.cnblogs.com/borter/p/9608695.html