Есть ли способ обратной отладки выполнения? - PullRequest
3 голосов
/ 29 апреля 2019

У меня есть набор интеграционных тестов, которые время от времени терпят неудачу достаточно редко, поэтому я не могу отладить их локально, но достаточно часто, чтобы мой набор 400 тестов часто имел 1 или два сбоя.

Я использую Intellij, чтобы я мог "выполнить до отказа", но это не помогает мне отлаживать происходящее.

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

Ответы [ 2 ]

2 голосов
/ 30 апреля 2019

IntelliJ IDEA поддерживает Chronon , отладчик, перемещающийся во времени, который может помочь в вашем случае.

0 голосов
/ 30 апреля 2019

Я не думаю, что это возможно. Что бы вы сделали, если бы отправляли данные по сети. Вы достигаете своей точки останова и затем решаете вернуться назад. Невозможно отослать эти данные. Ваша программная система больше никогда не будет в том же состоянии.

Вы можете взглянуть на иерархию вызовов вашего стека, как только достигнете точки останова, и определите места для вставки новых точек останова.

Также вы можете добавлять операторы .log в критических местах, чтобы иметь некоторые данные при активации точки останова. Таким образом, вы видите, что происходит раньше в журнале.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...