创建节点时,我试图在报告中记录我的调用方法名称。
我在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
答案 0 :(得分:1)
我通过使用下面的行获取输出:
new Object(){}。getClass()。getEnclosingMethod()。getName()
public static Class ModuleClass
{
public static void FormFilled()
{
Reports.CreateNode( new Object(){}.getClass().getEnclosingMethod().getName()
+ ": method started");
}
}