\begin{slide}{Übung 15. 6.: Debugging/Profiling}

auf \verb|goliath| oder \verb|aaron| einloggen (ssh)

Beispiel-Programm(e):
\url{http://www.imn.htwk-leipzig.de/~waldmann/edu/ss04/case/programme/analyze/}





Aufgaben:
\begin{itemize}
\item
  Kompilieren, ausführen, profilieren:
\begin{verbatim}
g++ -ftest-coverage -fprofile-arcs heap.cc -o heap
./heap > /dev/null
gcov heap.cc
\end{verbatim}
  erzeugt \verb|heap.cc.gcov|

  Optionen \verb|-b| und \verb|-c| für \verb|gcov| ausprobieren!
\item
  \verb|heap| reparieren:
  \verb|check| an geeigneten Stellen aufrufen,
  um Fehler einzugrenzen
\item
  \verb|median3| analysieren:
  Testfälle schreiben (hinzufügen) für:
  Anweisungsüberdeckung, Bedingungsüberdeckung, Pfadüberdeckung

  Überdeckungseigenschaften mit \verb|gcov| prüfen
\item
  \verb|median5| reparieren  
\end{itemize}



\end{slide}
