Як виміряти час виконання блоків сценарія ZennoPoster

Вимірювання часу виконання важливо тоді, коли хочеться зрозуміти як пришвидшити роботу сценарія. На жаль в ZennoPoster немає вбудованих способів, які б позволили це зробити. А варіант зберігати час зараз, і потім час після виконання не завжди може відображати корректні значення.

Тому прийдеться вирішувати проблему з виміром часу використовуючи блок Свій C# Код.
Значить ідея в мене така – першим блоком необхідно запустити таймер.
Потім помістити його в контекст, щоб появилась можливість звернутись до нього у будь-якому іншому блоці.


project.Context["sw"] = System.Diagnostics.Stopwatch.StartNew();

Після чого по виходу Bad End потрібно звернутись до цього об’єкта, тому що не успішне виконання може відбутись у будь-який момент часу.
Після чого по виходу Good End також можна виконати цей самий фрагмент коду, щоб мати можливість дізнатись скільки часу виконувався весь сценарій.


var sw = project.Context["sw"];
sw.Stop();
project.SendInfoToLog(string.Format("Стоп: {0:c} ms", sw.Elapsed));

Ось так просто можна виміряти час виконання будь-якого сценарію який виконується в ZennoPoster.
Завдяки контексту можна визвати зупинку в любому місці (тоді потрібно видалити код із Bad End і Good End).

Залишити відповідь

Ваша e-mail адреса не оприлюднюватиметься. Обов’язкові поля позначені *