2016-05-23 5 views
2

Прежде всего, я использую Vaadin 7 и Eclipse Mars.Ваадин измерять время выдержки

Я хочу программировать тест Samll производительности и вот моя проблема:

У меня есть список и кнопку. После нажатия кнопки в список добавляются и отображаются 1000 элементов. Теперь я хочу посмотреть время, необходимое для рендеринга элементов в ms. Поэтому я сохраняю время после нажатия кнопки и после добавления всех элементов в список и вычитания их. Необходимое время теперь отображается в кнопке, но всегда около 2 мс и 10 мс .. этого не может быть? Как я могу измерить фактическое время?

tl; dr: Как правильно измерить время рендеринга, необходимое для списка 1000 позиций.

Это происходит после нажатия на кнопку:

public void List(ListSelect select, Button button){ 
     long millis = System.currentTimeMillis(); 
     select.setRows(1000); 

     select.addItems("item1", "item2", "item1000"); 

     long millis2 = System.currentTimeMillis(); 
     button.setCaption(millis2 - millis +" ms"); 
    } 

ответ

4

время рендеринга можно увидеть с Vaadin Debug Window. Приложите ?debug к корню приложения (app/?debug#!home). Затем вы можете увидеть окно отладки в нижнем правом углу. Первый символ в меню показывает журнал. Строка Processing time was ...ms показывает время рендеринга вашего браузера. Более подробно, что браузеру необходимо обработать ответ JSON, который отображается в HTML.

+0

Работы! Но возможно ли получить/сохранить время обработки в переменной? – JeffStrongman

+0

Я только заметил, что рендеринг намного медленнее с '? Debug'. Есть ли решение/обходное решение? – JeffStrongman

+1

Альтернативой может быть использование, например, инструментов разработчика Chrome. В консоли вы также увидите, что время обработки было ... как запись без использования окна отладки Vaadin. –

Смежные вопросы