Report 试图理解TestNG如何连接方法名+;要在报告上显示的说明

Report 试图理解TestNG如何连接方法名+;要在报告上显示的说明,report,testng,Report,Testng,试图理解TestNG是如何连接方法名+组名+描述以显示在报告中的。我有一个测试套件,它只在我的TestNG报告中显示方法名称,但我还有其他测试套件,它们在方法名称之后连接测试描述,并在报告中显示整个字符串(在类名列之后的第2列下)。我不知道是什么控制了这种差异 是否有人了解这是如何工作的,并在套件中启用/禁用?在这个场景中,TestNG由Maven Surefire插件执行,正如您所知,它将可通过电子邮件发送的报告放在“target”目录下,而不是“TestNG output”下 另外,我想知道

试图理解TestNG是如何连接方法名+组名+描述以显示在报告中的。我有一个测试套件,它只在我的TestNG报告中显示方法名称,但我还有其他测试套件,它们在方法名称之后连接测试描述,并在报告中显示整个字符串(在类名列之后的第2列下)。我不知道是什么控制了这种差异

是否有人了解这是如何工作的,并在套件中启用/禁用?在这个场景中,TestNG由Maven Surefire插件执行,正如您所知,它将可通过电子邮件发送的报告放在“target”目录下,而不是“TestNG output”下

另外,我想知道的另一个细节是:在测试方法期间,是否可以更改描述,以便在报告中显示更改后的描述

这个屏幕截图显示了组和描述的良好显示,但我有许多其他测试套件没有显示此信息,我想知道如何启用它


对于您的第一个问题,testng的旧版本(6.8.1之前)似乎曾经将emailablereporter作为其默认报告程序。更高版本的默认设置为emailablereporter2,不显示描述。尝试按如下所示指定侦听器,以查看针对方法的描述

<listener class-name="org.testng.reporters.EmailableReporter"></listener>


可以通过实现更改描述

不确定SureFire生成的报告,但如果您在不使用Maven的情况下使用TestNG,它会生成两个报告—可通过电子邮件发送的报告,索引。两者都显示相同的数据,但呈现方式不同。我们可以通过创建监听器和重写默认方法来定制报告内容

<listener class-name="org.testng.reporters.EmailableReporter"></listener>

关于如何定制报告,请参阅此部分。

您指的是哪一份报告?我指的是Maven Surefire在测试阶段生成的TestNG报告(其引用了TestNG suite.xml文件)。此报告显示了一个“控制台”部分,其中显示了测试运行时对Reporter.log()的每次调用的所有输出。感谢您提供的提示。在我第一次了解到为什么描述和组会出于任何原因出现在报告(测试方法名称旁边)上之后,我会尝试这样做,尽管对我来说通常不会。这个链接非常令人大开眼界。我将尝试一下,希望在这个周末。是的,它成功了:github.com/djangofan/selenium-framework-concept2。我将在下个月玩这个项目,试图看看我能从这个方法中得到什么样的结果。我需要在每次测试期间以某种方式将值注入ITestContext,以便在报告中显示它们。