Files
IPSExtractor/docs/plan_pruebas/informe/sections/04_metodologia.tex
T

31 lines
1.0 KiB
TeX

\chapter{Metodolog\'ia}
\label{ch:metodologia}
\section{Tipos de prueba}
\begin{enumerate}
\item \textbf{Unitarias} --- pytest (agent y API bot).
\item \textbf{Humo / funcional} --- curl y checks HTTP del gateway.
\item \textbf{Carga} --- k6 perfil \texttt{shared8g}.
\item \textbf{Capacidad} --- modelo anal\'itico (no carga de 100k PDFs).
\end{enumerate}
\section{Herramientas}
k6 (Grafana), pytest, Docker stats, curl, pdflatex/pgfplots.
\section{SLOs perfil \texttt{shared8g}}
\begin{itemize}
\item Gateway \texttt{/health/live}: p95 $<$500\,ms; fail $<$1\,\%.
\item Heartbeats bot: p95 $<$800\,ms; checks $>$95\,\%.
\item No usar \texttt{/health} agregado como SLO de latencia.
\end{itemize}
\section{Comandos representativos}
\begin{lstlisting}[language=bash]
k6 run -e PROFILE=shared8g -e BASE_URL=http://127.0.0.1:8189 \
k6_gateway_health.js
k6 run -e PROFILE=shared8g -e BOT_API_TOKEN=... \
k6_bot_heartbeats.js
python -m pytest bots/bot_descarga/tests -q
cd services/bot_descarga && python -m pytest tests -q
\end{lstlisting}