Повреждение на Исключении в Eclipse с помощью jUnit

Вот быстрый образец:

//Create process
System.Diagnostics.Process pProcess = new System.Diagnostics.Process();

//strCommand is path and file name of command to run
pProcess.StartInfo.FileName = strCommand;

//strCommandParameters are parameters to pass to program
pProcess.StartInfo.Arguments = strCommandParameters;

pProcess.StartInfo.UseShellExecute = false;

//Set output of program to be written to process output stream
pProcess.StartInfo.RedirectStandardOutput = true;   

//Optional
pProcess.StartInfo.WorkingDirectory = strWorkingDirectory;

//Start the process
pProcess.Start();

//Get program output
string strOutput = pProcess.StandardOutput.ReadToEnd();

//Wait for process to finish
pProcess.WaitForExit();
14
задан User1 14 July 2009 в 14:36
поделиться

5 ответов

Если вы отлаживаете единственный метод в jUnit, точки останова начинают работать. Если в jUnit отлаживается весь класс или пакет, отладчик не работает.

1
ответ дан 1 December 2019 в 14:22
поделиться

С точки зрения отладки вы можете отфильтровать именно те исключения, которые вас интересуют.

В представлении «Точки останова» есть символ «J!». кнопка. Это открывает окно, которое позволяет вам выбрать, какие исключения вы хотите разбить.

Если проблема возникает только при тестировании JUnit, вам необходимо убедиться, что вы запускаете тесты в режиме отладки. Кнопка Rerun в JUnit будет работать в «нормальном» режиме. Чтобы запустить тесты в режиме отладки, вы можете щелкнуть файл правой кнопкой мыши и выбрать в меню «Отладка как -> JUnit Test».

7
ответ дан 1 December 2019 в 14:22
поделиться

Если вы работаете в режиме отладки, это должно быть поведением по умолчанию для более поздних версий Eclipse.

3
ответ дан 1 December 2019 в 14:22
поделиться

Вы должны выбрать в меню «Выполнить» -> «Отладка». Затем Eclipse остановится на исключениях и точках останова в вашем коде.

0
ответ дан 1 December 2019 в 14:22
поделиться

Ключевое слово C # event создает тонкую иллюзию, заключающуюся в том, что событие имеет список вызовов.

Если вы объявляете событие с помощью C # event , компилятор сгенерирует частный делегат в вашем классе и будет управлять им за вас. Всякий раз, когда вы подписываетесь на событие, вызывается созданный компилятором метод add , который добавляет обработчик события в список вызовов делегата. Нет явного списка вызовов для события.

Таким образом, единственный способ получить список вызовов делегата - предпочтительно:

  • Использовать отражение для доступа к делегату, созданному компилятором ИЛИ
  • Создать не закрытый делегировать (возможно, внутреннее) и реализовать событие ' Если он не включен, перейдите к
    Окно-> Настройки
    Java-> Отладка
    [X] Приостановить выполнение при неперехваченных исключениях

    Это очень полезно, но может раздражать, поэтому попытайтесь выяснить, какой вариант лучше для вас.

3
ответ дан 1 December 2019 в 14:22
поделиться
Другие вопросы по тегам:

Похожие вопросы: