2016-05-10 10 views
0

Aus irgendeinem Grund habe ich alte TestNG Bibliothek verwenden, die nicht "getCurrentXmlTest()).getAllParameters()" APITestNG "getCurrentXmlTest()). GetAllParameters()" API sehr alt testng-5.4-jdk15.jar TestNG Bibliothek

hat Wie soll ich bekomme alle TestXML Parameter mit testng-5.4-jdk15.jar

Für neueste TestNG Version, das ist, wie wir alle params bekommen, aber wie kann ich simulieren einen solchen Code mit testng-5.4-jdk15.jar

@DataProvider(name = "DataFile") 
public Object[][] testdata(ITestContext context) { 
    Map<String, String> parameters = (((ITestContext)context).getCurrentXmlTest()) 
      .getAllParameters(); 
    return new Object[][] { { parameters } }; 
} 

P.S. : - Ich kann nicht aktualisiert jar :(

+0

Darf ich fragen, warum Sie nicht aktualisieren können Mindestens 5.11-jdk15 – juherr

+0

Und warum verwenden Sie hier Datenanbieter anstelle der Parameter-Funktion? http://testng.org/doc/documentation-main.html#parameters-testng-xml – juherr

+0

Ändern Sie Ihre Verwaltung; p – juherr

Antwort

2

Von TestNG 5.5 Quellen (da 5.4 Quellen und Binaries sind auf Maven Zentral nicht verfügbar), sollte dies folgende Arbeiten:

Map<String, String> parameters = (((TestRunner)context).getTest()).getParameters(); 
+0

können Sie mir bitte helfen, gleichwertige Pakete für alte jar 'import org.testng.IInvokedMethod' zu erhalten, importieren org.testng.collections.Lists;' –

+0

Es aussehen s 'IInvokedMethod' war in 5.5 nicht vorhanden und Sie sollten' Listen' nicht benötigen. Aber zu Ihrer Information sind beide Klassen in 5.11 verfügbar (die neueste Version 5.x-jdk5, die mit etwas Glück für Ihr Management akzeptabler ist). – juherr

+0

Eine andere Lösung wird sein, TestNG zu forcieren, aber 5.5 ist sooo alt, als es kein Tag im offiziellen SCM gibt (erstes Tag ist 5.11) – juherr