Vorremmo eseguire alcuni dei nostri test ciascuno contro un insieme di valori di dati, verificando che le stesse condizioni valgano per ciascuna. I dati sono attualmente memorizzati in file flat o in semplici fogli di calcolo Excel.È possibile passare i parametri a TestNG DataProvider?
Il mio primo pensiero è stato quello di creare un DataProvider TestNG che caricava i dati dal file e può essere utilizzato per chiamare il metodo di test una volta per ogni valore di dati. Il mio problema è che test diversi devono caricare i dati da file diversi e non sembra esserci alcun modo per inviare un parametro al DataProvider. Qualcuno sa se questo è possibile?
Idealmente, vorrei il mio codice di simile al seguente (esempio semplificato):
public class OddTest {
@DataProvider(name = "excelLoader")
public Iterator<Object[]> loadExcelData(String fileName) {
...
}
@Test(dataProvider = "excelLoader" dataProviderParameters = { "data.xls" })
public void checkIsOddWorks(int num)
assertTrue(isOdd(num));
}
}
si potrebbe iniettare sia '' ITestContext' e method' (vedere la parte inferiore della risposta di "user64051") ed entrambi determinare i dati forniti dai parametri _AND_ metodi privati. Funziona nella versione attuale e sembra che abbia già funzionato in 5.14.x. –