首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >使用cli运行单个junit测试

使用cli运行单个junit测试
EN

Stack Overflow用户
提问于 2020-02-04 00:03:35
回答 1查看 93关注 0票数 0

我需要通过cli运行一个测试用例。我创建了一个runner类

代码语言:javascript
运行
复制
public class Runner {

    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);
    }
}

使用此答案Run single test from a JUnit class using command-line

我从github下载了一个项目(https://github.com/apache/incubator-dubbo),我想在这个项目上运行单个方法,我从终端将自己定位到包含我创建的Runner类的目录中,并启动了以下命令:

代码语言:javascript
运行
复制
java -cp /path/incubator-dubbo/dubbo-cluster /usr/share/java/junit4-4.12.jar /pathClassRunner/src/com/company/Runner org.apache.dubbo.rpc.cluster.StickyTest#testHeartbeat

但我得到了以下错误:

代码语言:javascript
运行
复制
Error: Could not find or load main class pathClassRunner.src.com.company.Runner

有人能帮我吗?

谢谢

EN

回答 1

Stack Overflow用户

发布于 2020-02-04 02:02:09

该命令要求您在classpath中包含任何不带空格的路径。空格表示classpath的参数已结束。如果您的路径中有一个空格,则可以包含双引号:

代码语言:javascript
运行
复制
java -cp path1:path2:path3 classname argument
java -cp "path1:path2:path3" classname argument

如果路径以/开头,则它是完整路径。如果不是,则与您运行命令的位置相关。classname必须是类的名称,而不是文件的名称,因此这意味着没有.class。如果您的class指定了任何package,那么classname也需要包含package名称,并且路径是指向package,而不是class本身。

检查您的用户是否具有适当的文件访问权限,然后尝试:

代码语言:javascript
运行
复制
java -cp /path/incubator-dubbo/dubbo-cluster:/usr/share/java/junit4-4.12.jar:/pathClassRunner/src/com/company Runner org.apache.dubbo.rpc.cluster.StickyTest#testHeartbeat

我假设你的Runner在默认的包中。如果它在com.company包中,您将希望运行以下代码:

代码语言:javascript
运行
复制
java -cp /path/incubator-dubbo/dubbo-cluster:/usr/share/java/junit4-4.12.jar:/pathClassRunner/src com.company.Runner org.apache.dubbo.rpc.cluster.StickyTest#testHeartbeat

另一个假设是您的Runner.class位于/pathClassRunner/src...目录中。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/60042906

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档