2016-06-26 10 views
1

ich gefangen um 10K Start- und Endzeit Briefmarken regulären Ausdruck Variablen in JMeter verwenden, aber sie sind in UTC-Format als '2016-06-24T18:25:03.621Z' folgt. Ich muss die Zeitdauer zwischen diesen Zeitstempeln berechnen.Wie Dauer zwischen Beginn und Ende Zeitstempel zu erfassen, die in JMeter in UTC sind

Ich schätze es, wenn mir jemand einen Hinweis darauf geben kann?

+0

Sie können einen Beanshell-Sampler verwenden und java DateFormat verwenden, um die Strings zu analysieren. –

Antwort

2

können Sie konvertieren ISO 8601 dates (wie Sie zur Verfügung gestellt) Millisekunden, dh seit Beginn der Unix epochBeanshell Test Elements verwenden und den Code wie:

import javax.xml.bind.DatatypeConverter; 

vars.put("old_date", "2016-06-24T18:25:03.621Z"); 

Calendar cal = DatatypeConverter.parseDateTime(vars.get("old_date")); 

Date new_date = cal.getTime(); 
long new_date_ms = new_date.getTime(); 

log.info("Date in milliseconds: " + new_date_ms); 

Demo:

Beanshell Demo

Durchführung von arithmetischen Operationen auf long Werte sind ziemlich einfach, etwas wie:

long date1 = //code to convert ISO 8601 date to long as above 
long date2 = //the same for date2 

long delta = date2 - date1; //calculate the difference 
vars.put("delta", String.valueOf("delta")); // store the result into a JMeter Variable 
Verwandte Themen