@Override
 protected void initApplication() throws Exception {
   super.initApplication();
   JavaTestUtil.setupTestJDK();
   DebuggerSettings.getInstance().DEBUGGER_TRANSPORT = DebuggerSettings.SOCKET_TRANSPORT;
   DebuggerSettings.getInstance().SKIP_CONSTRUCTORS = false;
   DebuggerSettings.getInstance().SKIP_GETTERS = false;
   NodeRendererSettings.getInstance().getClassRenderer().SHOW_DECLARED_TYPE = true;
 }
 @Override
 protected void tearDown() throws Exception {
   try {
     FileEditorManagerEx.getInstanceEx(getProject()).closeAllFiles();
     if (myDebugProcess != null) {
       myDebugProcess.stop(true);
       myDebugProcess.waitFor();
     }
   } finally {
     super.tearDown();
   }
 }
 @Override
 protected void runTest() throws Throwable {
   super.runTest();
   if (getDebugProcess() != null) {
     getDebugProcess().getProcessHandler().startNotify();
     waitProcess(getDebugProcess().getProcessHandler());
     waitForCompleted();
     // disposeSession(myDebuggerSession);
     assertNull(
         DebuggerManagerEx.getInstanceEx(myProject)
             .getDebugProcess(getDebugProcess().getProcessHandler()));
     myDebuggerSession = null;
   }
   throwExceptionsIfAny();
   checkTestOutput();
 }