繁体   English   中英

如何从命令行执行Junit测试用例

[英]How to execute Junit Test case from command line

我知道这是一个非常普遍的问题,我已经进行过搜索,但是以某种方式无法解决我的问题。

这是问题上下文:

为我的Junit测试用例创建了一个maven项目(将Eclipse与maven quickstart结合使用,并使用Junit版本4.12)。 以下是结构- 在此处输入图片说明

这是Junit文件的内容-

package JunitRnD.JunitArtifact;

import static org.junit.Assert.*;

import java.util.Stack;

import org.junit.Test;

public class AppTest {

    @Test
    public void emptyTest() {
        Stack<String> stack = new Stack<String>();
        assertTrue(stack.isEmpty());
    }
}

项目位于以下位置:

/Users/_eclipseWork/JunitArtifact

这是目录的内容- 在此处输入图片说明

Junit测试从Eclipse开始有效。 但是我想从命令行运行它。 所以我用下面的命令-

cd /Users/_eclipseWork/JunitArtifact

java -cp .:/Users/.m2/repository/junit/junit/4.12/junit-4.12.jar:/Users/.m2/repository/org/hamcrest/hamcrest-core/1.3/hamcrest-core-1.3.jar org.junit.runner.JUnitCore JunitRnD/JunitArtifact/AppTest

我还在每个目录结构中使用了其他变体,但始终收到以下错误-

Caused by: java.lang.ClassNotFoundException: JunitRnD/JunitArtifact/AppTest

我在这里想念什么?

PS:还尝试使用.java和.class扩展名。

您需要运行Maven来运行测试。

mvn -Dtest=JunitRnD.JunitArtifact.AppTest test

或者,如果要在没有Maven的情况下运行,则需要一个Test Runner。

看一眼:

https://github.com/junit-team/junit4/wiki/test-runners

你可以做:

java org.junit.runner.JUnitCore TestClass1 [...other test classes...]

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM