首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >在外部程序中获取所有@test (TestNg)方法

在外部程序中获取所有@test (TestNg)方法
EN

Stack Overflow用户
提问于 2018-07-16 03:30:50
回答 1查看 265关注 0票数 0

我有一个UI (桌面应用程序),它显示项目/存储库中所有扩展名为".java“的文件,以便用户可以选择这些文件(选定的类被添加到testng )并运行它们(桌面应用程序运行testng )。

我的要求很简单,我希望在项目/存储库中使用@test注释搜索所有方法,而不是使用文件扩展名搜索。

这可以通过testng或java反射来实现吗?请提个建议。

任何其他建议/方法也是受欢迎的。

EN

回答 1

Stack Overflow用户

发布于 2018-07-16 07:09:15

看看我的开源库:https://github.com/AutomatedOwl/testng-disabled-tests

代码语言:javascript
复制
private AtomicReference<String> extractJavaTestsCode(
            AtomicReference<String> javaTestsCode, IInvokedMethod iInvokedMethod) {

            // Search for files of java tests classes.
            try (Stream<Path> paths = Files.walk(Paths.get(
                    System.getProperty("user.dir") + getTestsPath(iInvokedMethod)))) {
                paths.filter(Files::isRegularFile)

                        // For each java test file, concat its string.
                        .forEach(file -> {
                            String javaTestFileCode = readLinesFromFile(file.toString());
                            javaTestsCode.set(
                                    String.join("\n", javaTestsCode.get(), javaTestFileCode));
                        });
            } catch (Exception exception) {
                // Do nothing.
            }
        return javaTestsCode;
    }

它显示给定路径中禁用的测试方法,对正则表达式解析代码稍作修改,它将完全按照您所描述的方式执行。

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

https://stackoverflow.com/questions/51351558

复制
相关文章

相似问题

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