Как отлаживать функции OnTesterInit(), OnTesterPass(), OnTesterDeinit() ?

 

Всех приветствую.

Такой вопрос - как в отладчике пройтись по коду функции OnTesterDeinit() (и подобных), чтобы выявить ошибку обработки данных оптимизации? 

При запуске отладки - эти функции не вызываются. А при запуске оптимизации - брейкпоинты не срабатывают. 

Раньше я использовал код из примеров, с крайне небольшими изменениями, отладка не требовалась. Иногда - просто принудительно вызывал эти функции в одиночном проходе, и далее - они работали и при оптимизации. 

Сейчас хочу значительно дополнить работу с данными оптимизации "на лету", а для этого необходимо гораздо более серьёзно следить за переменными во время отправки, получении и анализа фреймов.  

Кто как отлаживает эти функции? Поделитесь опытом!

 

У пользователя fxsaber есть несколько полезных библиотек, которые даже позволяют настраивать оптимизации, но они немного трудоемки в использовании.

 
Georgiy Merts:

Кто как отлаживает эти функции? Поделитесь опытом!

В любой непонятной ситуации раскладываю везде сообщения в журнал (Print()). Потом вдумчиво изучаю и делаю выводы.

 
hini #:

У пользователя fxsaber есть несколько полезных библиотек, которые даже позволяют настраивать оптимизации, но они немного трудоемки в использовании.

Я использую эти библиотеки - но, именно для их использования и надо иметь возможности пошагового прохождения кода функций в отладчике. 

 
Ilya Filatov #:

В любой непонятной ситуации раскладываю везде сообщения в журнал (Print()). Потом вдумчиво изучаю и делаю выводы.

Да, я именно так и делаю, но отладка с помощью логов - по-моему, это даже не вчерашний, а позавчерашний день... Хотелось бы что-то более удобное. 

 
Georgiy Merts:

Такой вопрос - как в отладчике пройтись по коду функции OnTesterDeinit() (и подобных), чтобы выявить ошибку обработки данных оптимизации? 

Кто как отлаживает эти функции? Поделитесь опытом!

Не помню, чтобы требовалась отладка этих функций. Однако, если бы нужно было, то использовал бы чтение mqd-файлов.

Т.е. сначала запустили оптимизацию. А затем в скрипте эмулируете фреймы, которые все хранятся в mqd.