Я использую Remix IDE для компиляции и запуска своего кода, когда я попытался запустить функцию, у нее возникла ошибка, она предложила отладить. Раньше я не использовал отладчик Remix, поэтому хочу спросить:
Как вы используете отладчик в Remix?
Можете ли вы добавить точки останова в свой код?
Вы можете добавить точки останова в свой код, чтобы использовать их при отладке смарт-контракта. Вы можете сделать это, нажав на номер строки, где вы хотите установить точку останова.
В этом примере я установил точку останова line 24
при вызове конструктора.
Существует несколько способов отладки вашего контракта. Вы можете щелкнуть вкладку «Отладчик», вставить номер блока или хэш транзакции и нажать кнопку воспроизведения, чтобы выполнить шаги. Но мне нравится запускать метод, который я хочу протестировать, а затем нажимать Debug
кнопку в консоли. Это загрузит правильный хэш транзакции.
В этом примере я поставил точку останова при вызове конструктора, инициализировал свой контракт на вкладке «Выполнить», а затем нажал Debug
кнопку в консоли.
Вы можете видеть, что отладчик остановился внутри моего конструктора. Вы можете использовать кнопки под ползунком для входа, возврата, перехода, выхода и т. д. Кнопки под ним позволяют перемещаться по контрольным точкам.
Ползунок транзакций позволяет быстро перемещаться по коду, когда он проходит через конкретную транзакцию.
Одна вещь, которую я люблю делать, когда транзакция терпит неудачу по какой-либо причине, — это перемещать ползунок в самый конец. Скорее всего, это будет то место, где ваш код остановился, и это может быть причиной сбоя.
Вы также заметите, что по мере прохождения транзакции вы сможете видеть значения переменных состояния и локальных переменных, что будет полезно при отладке кода.