gpt4 book ai didi

annotations - 我可以创建自定义 JUnit 5 注释 @Defect ("Ticket-ID") 并将其映射到 @Tag ("Ticket-ID")

转载 作者:行者123 更新时间:2023-12-05 07:13:39 26 4
gpt4 key购买 nike

我想知道如何向注解添加参数,然后使用该参数帮助编写注解。

作为一个简单的例子,假设我想定义 @Defect(<Ticket-ID>) .除其他事项外,该注释将添加 @Tag(<Ticket-Id>) .

我可以这样做吗?如果是这样,代码会是什么样子?

最佳答案

我认为您不能将@Defect() 映射到@Tag(),也看不到它的意义。您只会更改标签名称。您可以做的是,创建一个接口(interface)来映射 @Tag("Defect"),然后向其添加一个值作为参数:

@Target({TYPE, METHOD})
@Retention(RetentionPolicy.RUNTIME)
@Test
@Tag("Defect")
@interface Defect {
int value();
}

然后你可以像这样使用它:

@Defect("JiraIssue-1234");

您还可以获得作为参数传递的值,例如:

AnnotationSupport.findAnnotation(_extensionContext.getElement(), Defect.class).get().value()

关于annotations - 我可以创建自定义 JUnit 5 注释 @Defect ("Ticket-ID") 并将其映射到 @Tag ("Ticket-ID"),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60096716/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com