Я хотел бы получить MethodName в своем отчете - PullRequest
0 голосов
/ 10 мая 2019

Я пытаюсь записать имя вызываемого метода в отчет при создании узла.

Я пробовал это с getname(), Method.GetMethodName в ITestresult, но не нашел правильного способа выяснить.

public static class Reports 
{
    public static void CreateNode(String Description)
    {
        test.createNode(Description);
    }
}



public static Class ModuleClass
{
    public static void Login()
    {
        Reports.CreateNode( ???": method started");
    }
}

В области вопросительного знака мне нужно название метода, напечатанное в отчете.

Выложи, как должно быть -

Login : method started in report.

это не относится к ведению журнала. Он основан на любом методе, который я вызываю из моей тестовой библиотеки любого конкретного модуля. Предположим, есть один метод, который заполняет форму, как показано ниже:

public static Class ModuleClass
    {
        public static void FormFilled()
        {
            Reports.CreateNode( ???": method started");
        }
    }

поэтому, когда я вызвал этот метод в своем классе выполнения, как показано ниже:

@Test
public void SavingForm()
{
    ModuleClass.FormFilled();
}

тогда после выполнения в отчете я должен получить:

output FormFilled : method started

1 Ответ

1 голос
/ 10 мая 2019

Я получаю вывод, используя следующую строку:

new Object () {}. GetClass (). GetEnclosingMethod (). GetName ()

public static Class ModuleClass
    {
        public static void FormFilled()
        {
            Reports.CreateNode( new Object(){}.getClass().getEnclosingMethod().getName() 
 + ": method started");
        }
    }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...