在JUnit5中将枚举值用作标记

在JUnit5中将枚举值用作标记,junit,enums,tags,junit5,junit-jupiter,Junit,Enums,Tags,Junit5,Junit Jupiter,我喜欢JUnit5AS中的新特性 我有一个担忧。标记值只是字符串。这意味着可能会出现打字错误 ➥ 是否有某种方法可以获取标记行为,但要使用我定义的枚举中的值 或者我可以依靠编译器以其他方式强制执行有效值?元注释 使用而不是使用 您可以定义自己的注释来包装JUnit@Tag注释。因此,只需编写一次标记值的字符串,然后在整个测试套件中应用该自定义注释 正如您在问题中所要求的那样,编译器会检查元注释以确保值有效 看。并在YouTube视频中看到 例子 申报 稍后,在编写测试时,使用新的@fastest

我喜欢JUnit5AS中的新特性

我有一个担忧。标记值只是字符串。这意味着可能会出现打字错误

➥ 是否有某种方法可以获取标记行为,但要使用我定义的枚举中的值

或者我可以依靠编译器以其他方式强制执行有效值?

元注释 使用而不是使用

您可以定义自己的注释来包装JUnit
@Tag
注释。因此,只需编写一次标记值的字符串,然后在整个测试套件中应用该自定义注释

正如您在问题中所要求的那样,编译器会检查元注释以确保值有效

看。并在YouTube视频中看到

例子 申报

稍后,在编写测试时,使用新的
@fastest
注释进行注释

而不是写这封信:

@Tag( "fast" ) 
@Test
void someTest() { … }
……写下:

@FastTest
void someTest() { … }
@FastTest
void someTest() { … }