JUnit报告--测试方法描述

JUnit报告--测试方法描述,junit,report,Junit,Report,我想看看是否有一种方法可以通过javadocs在我的junit报告中包含“描述性文本”。JUnit4似乎不像TestNG那样支持@Test注释的“description”属性 到目前为止,我所研究的只有一个工具,叫做javadocjunit()。然而,我无法让它工作,因为它似乎与JUnit4不兼容 我想要的是在JUnit报告中为我的每个测试方法提供一两句文字。JavaDoc不好,因为目标受众必须在JavaDoc和Junit报告之间切换才能查看文档和/或测试统计数据 有人知道我还可以用点什么吗 最

我想看看是否有一种方法可以通过javadocs在我的junit报告中包含“描述性文本”。JUnit4似乎不像TestNG那样支持@Test注释的“description”属性

到目前为止,我所研究的只有一个工具,叫做javadocjunit()。然而,我无法让它工作,因为它似乎与JUnit4不兼容

我想要的是在JUnit报告中为我的每个测试方法提供一两句文字。JavaDoc不好,因为目标受众必须在JavaDoc和Junit报告之间切换才能查看文档和/或测试统计数据

有人知道我还可以用点什么吗

最好的,
rayj

我没有将javadocs放在JUnit测试中。我通常会让方法的名称具有足够的描述性,因此它与我能想到的任何注释一样好或更好。

我可以想象,这将是一个很好且干净的解决方案

适合做什么?
FIT是一个框架,允许通过Word文档中的表、wiki表或html表编写测试。
FIT会忽略表外的每个字符,并允许您输入文档、说明、需求等

其中一张桌子的外观如何?

想象一个函数
MyMath.square(int)
将其输入参数平方。您必须构建一个所谓的Fixture,它是
MyMath
和下表之间的适配器:

class.with.Fixture.Square
x    square()
2    4
5    25
第一列描述输入值,第二列描述预期结果。如果不相等,则此字段标记为红色

固定装置的外观如何?
对于给定的示例,这将是正确的夹具:

package class.with.Fixture // Must be the same as in the fist row of the table

public class Square extends Fixture {
    public int x; // Must be the same as in the second row
    public int square() { // Must be the same as in the second row
        return MyMath.square(x);
    }
}
或许,您可以根据自己的需求使用FIT。

请随时评论我的答案或编辑您的问题以获取更多信息

还有一个相当新的解决方案叫做。这是一个基于Java的测试执行报告,主要基于向代码添加补充注释。现有注释包括:

  • 自定义描述:@description(“酷测试”)
  • 按功能或故事分组:@features({“feature1”、“feature2”})@stories({“story1”、“story2”})
  • 将在测试用例中执行的方法标记为步骤:@Step(甚至适用于私有方法)
  • 附件:@附件(name=“Page screenshot”,type=“image/png”)

查看他们的了解更多详细信息。

JUnit 5
中,有一种方法可以使用
@DisplayName
注释每个测试。声明的测试类可以有
文本
特殊字符
表情符号

每个测试上声明的文本可由
测试运行者
测试报告
看到


上面写着:

public@interface DisplayName

@DisplayName用于声明带注释的测试类或测试方法的自定义显示名称。 显示名称通常用于IDE和构建工具中的测试报告,可能包含空格、特殊字符甚至表情符号

和:

import org.junit.gen5.api.DisplayName;
导入org.junit.gen5.api.Test;
@DisplayName(“一个特殊的测试用例”)
类DisplayNameDemo{
@试验
@DisplayName(“包含空格的自定义测试名称”)
void testWithDisplayNameContainingSpaces(){
}
@试验
@显示名称(“╯°□°)╯")
显示名称包含特殊字符()的无效测试{
}
@试验

@DisplayName(“我不明白这是如何回答您关于为测试方法添加描述性消息的问题的。FIT是否提供了此功能?不是直接的,但您可以在Word文档中编写好文档,说明测试方法的作用和应该作用。问得好。我也对解决此问题感兴趣。5年后,同样的问题:)Junit 5将支持自定义测试名称:Thanx,但Junit 5太新,无法在生产中使用。@Akceptor这是真的。但我在想,问题已经7年了——也许7年后这可能是正确的答案:DAwarded。只是因为Junit 5似乎是唯一可用的解决方案