Isolamento e ordem de execução em testes funcionais
16/11/2012 17:27
class TestBase extends GebReportingTest {
@Before
public void setUp() {
def field = this.class.declaredFields.find { it.name.equals("datasets") }
if (field) {
field.accessible = true
def nomesdatasets = field.get(null)
def datasets = []
nomesdatasets.each {
def res = this.class.classLoader.getResourceAsStream("datasets/${it}.xls")
if (!res)
fail "Dataset ${it} nao encontrado"
datasets << new XlsDataSet(res)
}
def jdbc = DriverManager.getConnection(<url jdbc>, <usuario>, <senha>)
def connection = new DatabaseConnection(jdbc)
def composite = new FilteredDataSet(new DatabaseSequenceFilter(connection), new CompositeDataSet((IDataSet[])datasets.toArray()))
DatabaseOperation.CLEAN_INSERT.execute(connection, composite)
}
class XptoTests extends TestBase {
static datasets = ["dataset1", "dataset2", "dataset3"]
def testXyz() {
}
def testFoo() {
}
}
Para se registrar, clique aqui.