Skip to content
This repository was archived by the owner on Jun 17, 2025. It is now read-only.
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 1 addition & 2 deletions .gitattributes
Original file line number Diff line number Diff line change
@@ -1,2 +1 @@
* text eol=lf
*.jar binary

Binary file added Report.pdf
Binary file not shown.
46 changes: 45 additions & 1 deletion Report.tex
Original file line number Diff line number Diff line change
Expand Up @@ -262,7 +262,7 @@ \subsection{\emph{Queries}}
que não eram usados. Estes foram removidos para refletir corretamente a
funcionalidade da classe e evitar confusão na sua utilização.

\subsection{\texttt{Utils}}
\subsection{Utilitários}

Durante a execução dos testes unitários ao \emph{package} \texttt{Utils}, foi
identificado um problema relevante na classe \texttt{EmailValidator.java},
Expand Down Expand Up @@ -314,6 +314,17 @@ \subsection{\texttt{MakeItFit}}
confiabilidade e robustez no comportamento das funcionalidades relacionadas às atividades e à gestão
de utilizadores.

\subsection{Resultados Obtidos}

Para os testes unitários desenvolvidos, apresentam-se as coberturas medidas abaixo:

\begin{figure}[H]
\includegraphics[width=\textwidth]{res/Jacoco.png}
\includegraphics[width=\textwidth]{res/Pit.png}
\caption{Coberturas medidas com o Jacoco e com o PIT, respetivamente, nos novos testes unitários.}
\end{figure}


\section{Geração de Testes com o EvoSuite}

Para a geração de testes com o EvoSuite, foi necessário, em primeiro lugar, converter o projeto para
Expand All @@ -330,6 +341,21 @@ \section{Geração de Testes com o EvoSuite}
explícitas no código (ex.: \texttt{NullPointerException}), o que pode informar o desenvolvedor das
verificações que deve implementar.

Segue-se a cobertura dos testes gerados por EvoSuite:

\begin{figure}[H]
\includegraphics[width=\textwidth]{res/EvoSuiteJacoco.png}
\caption{Cobertura medidas com o Jacoco dos unitários gerados pelo EvoSuite.}
\end{figure}

Observa-se que estas são consideravelmente superiores às da antiga \emph{suite} de testes unitários:

\begin{figure}[H]
\includegraphics[width=\textwidth]{res/OldJacoco.png}
\includegraphics[width=\textwidth]{res/OldPit.png}
\caption{Coberturas medidas com o Jacoco e com o PIT, respetivamente, nos antigos testes unitários.}
\end{figure}

\section{Geração de Testes com o QuickCheck}

\subsection{Geradores}
Expand Down Expand Up @@ -450,6 +476,16 @@ \subsection{Geração Automática de Testes}
\texttt{EntityDoesNotExistException}. Isto contribui para uma verificação mais rigorosa do
comportamento esperado do sistema em casos inválidos.

\subsection{Resultados Obtidos}

Seguem-se os resultados da cobertura dos testes gerados por QuickCheck:

\begin{figure}[H]
\includegraphics[width=\textwidth]{res/QuickCheckJacoco.png}
\includegraphics[width=\textwidth]{res/QuickCheckPit.png}
\caption{Coberturas medidas com o Jacoco e com o PIT, respetivamente, nos testes gerados por QuickCheck.}
\end{figure}

\section{Testes gerados por AI}

Durante a fase de testes da aplicação \textit{MakeItFit}, foi também explorada a utilização de
Expand Down Expand Up @@ -490,6 +526,14 @@ \section{Testes gerados por AI}
uma cobertura robusta e garantir a validação de cenários críticos, foi necessário complementar esta
abordagem com testes gerados por métodos mais estruturados, como o EvoSuite.

Segue-se a cobertura dos testes unitários gerados por AI:

\begin{figure}[H]
\includegraphics[width=\textwidth]{res/AiJacoco.png}
\includegraphics[width=\textwidth]{res/AiPit.png}
\caption{Coberturas medidas com o Jacoco e com o PIT, respetivamente, nos unitários gerados por AI.}
\end{figure}

\section{Teste da Camada de Apresentação}

Para testar a camada de apresentação, procurou-se convertê-la para uma aplicação Web e testá-la
Expand Down
Binary file added res/AIJacoco.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added res/AIPit.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added res/EvoSuiteJacoco.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added res/Jacoco.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added res/JacocoPt1.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added res/OldJacoco.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added res/OldPit.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added res/Pit.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added res/QuickCheckJacoco.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added res/QuickCheckPit.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added res/cover/EE-C-eps-converted-to.pdf
Binary file not shown.
Loading
Loading