Изменить значения параметров аннотации метода - PullRequest
2 голосов
/ 10 января 2020

Я пытаюсь изменить описание параметра теста во время выполнения. Все примеры, которые я видел, относятся к изменению значения аннотации на уровне класса. Но я хочу сделать это на уровне метода.

Мой пример кода такой:

import org.testng.annotations.BeforeMethod;
import org.testng.annotations.Test;
import java.lang.reflect.Method;

public class TestClass {

    @BeforeMethod
    public void beforeMethod(Method method){
        Test annotation = method.getAnnotation(Test.class);
        // I want to change description to "some modified description"
    }

    @Test(description = "some description")
    public void test(){
        System.out.println("in test");
    }
}

1 Ответ

0 голосов
/ 10 января 2020

Параметры аннотации не могут быть изменены, поскольку они должны быть известны во время компиляции.

Вы можете использовать интерфейс с геттером и сеттером вместо аннотации, если вам нужно изменить его.

С помощью TestNG вы можете реализовать ITest и переписать метод getTestName(), как этот ответ описывает.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...