TestNG аннотировал суперкласс в другом пакете - PullRequest
0 голосов
/ 18 февраля 2012

У меня есть суперкласс и подкласс в разных пакетах. Суперкласс содержит аннотации @BeforeClass и @BeforeMethod.

Однако эти методы никогда не вызываются. Если я переместу оба класса в общий пакет, тогда оба метода @Before_xx будут вызываться просто отлично.

Супер класс:

package com.blah.focus.test.integration;

import org.testng.annotations.BeforeClass;
import org.testng.annotations.BeforeMethod;

public class BookSuper {

@BeforeClass(groups = "unit")
void prepareDataSet() throws Exception {
    System.out.println("Inside prepareDataSet");        
}

/**
 * 
 * @throws Exception
 */
@BeforeMethod(groups = "unit")
void beforeTestMethod() throws Exception {
    System.out.println("Insde beforeTestMethod yy");

}
} 

Подкласс:

package com.blah.focus.domain;

public class BookTest extends BookSuper{
private Book book;

@Test(groups = "unit")
public void testGoodBookConstruction() {
    book = new Book();
    book.setAuthor("Henry");
    book.setTitle("Good Title");
    book.setPublished(new Date());
    book.setPublisher("Rodale");
}
}

Это задумано?

1 Ответ

0 голосов
/ 18 февраля 2012

Нет, это должно работать, и это работает для меня:

Inside prepareDataSet
Insde beforeTestMethod yy

===============================================
SingleSuite
Total tests run: 1, Failures: 0, Skips: 0
===============================================

Возможно, вы пропускаете некоторую информацию.

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