2016-06-26 5 views
1

я захватил около 10K время начала и окончания марки с помощью регулярного выражения переменных в JMeter, но они находятся в формате UTC следующим '2016-06-24T18:25:03.621Z'. Мне нужно рассчитать время продолжительности между этими отметками времени.Как захватить время между начальной и конечной отметками времени, которые в UTC в JMeter

Я ценю, если кто-то может дать мне ключ к этому вопросу?

+0

Вы можете использовать пробоотборник beanshell и использовать java DateFormat для синтаксического анализа строк. –

ответ

2

Вы можете конвертировать ISO 8601 dates (как вы в комплект поставки), т.е. миллисекунд с момента начала Unix epoch использования Beanshell Test Elements и код, как:

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); 

Демо:

Beanshell Demo

Выполнение арифметических операций над long значения довольно просты, что-то вроде:

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