2017-04-21 1 views
1

Ich habe Test, der läuft und misst die Zeit des Uploads.Wie wird die durchschnittliche Zeit nach dem Ausführen von 20 @Test-Methoden ausgegeben?

Meine Aufgabe ist es, diesen Test 10 Mal auszuführen, und die durchschnittliche Zeit von 10 Uploads zu drucken. Und nach 1 Lauf habe ich 10 @ Test mit 10 separaten Upload-Maßnahmen ausgeführt.

Ich laufe meinen Test einfach durch Hinzufügen (InvocationCount = 10). Test-Klasse besteht aus

@BeforeClass 
@Parameters 
@Test 
@AfterMethod 

Wie nach jedem Testlauf i Wert (Zeitergebnis) nehmen und es zu Array speichern?

+0

Bitte lesen Sie [fragen] und (https: //meta.stackoverflow. com/questions/261592/how-much-forschungsaufwand-is-expected-of-stack-overflow-users) Bitte geben Sie den von Ihnen ausprobierten Code und das Ausführungsergebnis einschließlich eventueller Fehlermeldungen usw. an. – JeffC

+0

Warum nicht Sie? Versuchen Sie, jede Laufzeit in einer Konfigurationsdatei zu speichern und diese vor jedem Lauf zu lesen – kushal

Antwort

3

Sie können inject ein ITestResult in eine @AfterMethod und die Zeit resultieren aus dorthin gelangen: [? Wie viel Forschungsaufwand erwartet wird]

List<Long> timeResults = ... 

@AfterMethod 
public void afterMethod(ITestResult result) { 
    timeResults.add(result.getEndMillis() - result.getStartMillis()) 
} 
Verwandte Themen