忽然笑
您可以非常轻松地创建自定义的准系统JUnit运行器。这是一种将以以下形式运行单个测试方法的方法com.package.TestClass#methodName:import org.junit.runner.JUnitCore;import org.junit.runner.Request;import org.junit.runner.Result;public class SingleJUnitTestRunner { public static void main(String... args) throws ClassNotFoundException { String[] classAndMethod = args[0].split("#"); Request request = Request.method(Class.forName(classAndMethod[0]), classAndMethod[1]); Result result = new JUnitCore().run(request); System.exit(result.wasSuccessful() ? 0 : 1); }}您可以这样调用它:> java -cp path/to/testclasses:path/to/junit-4.8.2.jar SingleJUnitTestRunner com.mycompany.product.MyTest#testB快速浏览JUnit源代码后,我得出了与您相同的结论,即JUnit本身不支持此功能。这对我来说从来都不是问题,因为所有IDE都具有自定义的JUnit集成,这些集成使您可以在光标下运行测试方法以及其他操作。我从来没有直接从命令行运行JUnit测试。我总是让IDE或构建工具(Ant,Maven)来照顾它。特别是因为默认的CLI入口点(JUnitCore)不会在测试失败时产生非零退出代码以外的任何结果输出。注意:对于> = 4.9的JUnit版本,您需要在类路径中包含hamcrest库