Есть отличная удаленная работа для php+codeception+jenkins+allure+docker спецов. 100% remote! Присоединиться к проекту

Подскажите, а можно ли использовать каким-либо образом значения параметров в аннотациях?

testng
java
Теги: #<Tag:0x00007f7b70b26630> #<Tag:0x00007f7b70b264a0>

#1

Здравствуйте, подскажите, можно ли использовать значение параметров в аннотациях вместо:

@Test(priority = 1, description = "описание")

использовать

@Test(priority = 1, description = testDesc)

(vmaximv) #2

Нет. Значения атрибутов у аннотаций должны быть статикой - т.к. вычисляются на этапе “компиляции”.


(Sergey Pirogov) #3

через листенер можно достать свободно


(Pavel Ordenko) #4

@Sergey_Pirogov, автор темы вроде спрашивает про положить :slight_smile: “Положить” вроде можно реализовав листенер IAnnotationTransformer, если память не подводит…

По теме: как сказал @vmaximv, значения атрибутов аннотаций - константа, которой может быть любое доступное статическое неизменяемое поле. Как-то так:

public class MyFirstTest {
    private static final String testDesc = "Some test description here";

    @Test(description = MyFirstTest.testDesc)
    public void testMethod() {
        // Some code here
    }
}