2016-12-12 3 views
0

Ich baue gerade ein objektgesteuertes Skript, das Aktionen und Daten in einem Excel-Blatt zugeordnet hat. Ich lese dieses Excel-Blatt in den Datenprovider und übergebe es als eine Eingabe an die @ Test-Methode, wo ich If-Schleifen habe, um die verschiedenen Aktionen zu behandeln. Der Code sieht wie folgt auf hohem NiveauÜbergeben Sie einen Datenprovider innerhalb eines Datenproviders

@DataProvider(name="DP")  
    Reads excel file with actions from Sheet1 
@Test(dataprovider = "DP") 
    if(Action="Click") 
     Perform Action 
    else if(Action="SetText") 
     Set Text in Text Box 
    ........ 
@AfterTest 
    Read data to excel file with status for each action 

Das Problem ist jetzt habe ich für verschiedene Funktionen erstellen häufig ausgeführte Aktionen Funktionalität usw. sagt Einloggen und speichert sie gebeten worden, in Sheet2

So jetzt meinem Sheet1 der funktioniert, da das Treiberskript eine Mischung aus Funktionen und Aktionen hat, wobei, wenn es Funktion -> Gehe zu Tabelle2 ist, die Aktionen in Tabelle2 für diese Funktion ausgeführt werden, zu Tabelle1 zurückkehren, einzelne Aktionen/Funktionen erneut ausführen usw.

Ich habe versucht, dies mit mehreren Datenprovidern zu implementieren, aber meine Code-Struktur erlaubt mir nicht für eine gute Implementierung der gleichen. Irgendwelche Hinweise, wie ich das bitte erreichen kann?

Antwort

0

TestNG DataProviders sind Quelle von Daten nicht Aktionen. Hör einfach hier auf. Vergessen Sie das Excel-gesteuerte Framework. Erstellen Sie normale Aktionen, Datenquellen und Szenarien.

Verwandte Themen