如何将TestNG test-output文件夹配置为Maven目标文件夹?

hel*_*nov 9 java eclipse testng maven

伙计们!

我是TestNG的新手,我正在尝试使用Maven(Surefire插件)和Eclipse.

当我的测试由Maven运行时,它的报告按预期放在目标/ surefire-reports上,但是在Eclipse TestNG插件运行时的相同测试我也希望将它们放在目标子文件夹中(并且由此进行清理)清理Maven目标并被git忽略,而不是说尊重Maven文件夹组织),但总是转到默认的$ {basedir}/test-output.

我有办法做到吗?我更喜欢一个我不需要手动配置Eclipse设置(无法检测到它是一个Maven项目的TestNG,因此一致地更改其输出文件夹?),但如果没有这样的方法,任何人肯定会有所帮助.

TIA和问候,

Heleno的

nih*_*neo 10

testng插件无法自动识别出来.

您可以在工作区或项目级别设置testng首选项.如果您在工作台级别设置它,那么对于所有项目,默认情况下,testng会将结果放在那里.

转到Window-> Prefs-> TestNG.
将输出目录更改为与maven输出目录相同.


Viv*_*ngh 5

您可以按照niharika_neo告诉的方式进行操作...另外,您还可以创建启用时间戳的文件夹,该文件夹将为您执行的每一次Maven运行创建,因此不会让testng报告困扰您很多。如果仍然麻烦,请将testng报告放到特定文件夹中。

您可以在pom中提供其他文件夹,例如:

<properties>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        <timestamp>${maven.build.timestamp}</timestamp>
        <maven.build.timestamp.format>yyyyMMdd-HHmm</maven.build.timestamp.format>
    </properties>
Run Code Online (Sandbox Code Playgroud)

并在您的maven-surefire-plugin的配置下-

<reportsDirectory>./test-output/${timestamp}</reportsDirectory>
Run Code Online (Sandbox Code Playgroud)

  • 无论您是否回答了这个问题,我都很高兴您发布,因为我在其他任何地方都找不到此信息 (2认同)