2012-05-24 3 views
0

TestNG - Как получить текущее имя класса из BeforeClass.TestNG - Как получить текущее имя класса из BeforeClass

У меня есть класс А с расширяет класс B

class B { 
    @BeforeClass 
    public void beforeClass() { 
     /* Need test class name 'A' */ 
    } 
} 
class A extends B { 
    @Test 
    public void test() { 
     /* do something */ 
    } 
} 

В BeforeClass я попробовал только два параметра, которые инъекционные: ITestContext и XmlTest. Однако вам не удастся определить, как получить имя класса.

У кого-нибудь есть идеи? Thanks

ответ

8

После следует сделать трюк:

@BeforeClass 
public void beforeClass() { 
    String className = this.getClass().getName(); 
} 
+0

Хорошо, может быть, я не ясно. Оба класса живут в разных файлах классов. Класс A расширяет класс B. ... и не требуется передавать имя класса через конструктор. – mgoodnow

+5

Вам не нужно, getClass() является полиморфным вызовом. По крайней мере, попробуйте, прежде чем критиковать действительный ответ. –

+0

Приношу свои извинения за то, что вы не пробовали ... я бы никогда не догадался и все же так тривиальным решением. Благодаря! – mgoodnow

2

Как насчет getClass()?

(несколько больше символов, чтобы ТАК счастлива)

Смежные вопросы