feat: Add comprehensive testing plan for IPSExtractor, including unit, integration, E2E, stress, and resilience tests. Introduce LaTeX documentation structure with sections for architecture, test strategy, and execution guidelines. Enhance README with setup instructions and k6 stress testing scripts.
This commit is contained in:
@@ -0,0 +1,47 @@
|
||||
\chapter{Herramientas profesionales y CI}
|
||||
\label{ch:herramientas}
|
||||
|
||||
\section{Stack de tooling}
|
||||
\begin{table}[h]
|
||||
\centering
|
||||
\begin{tabular}{@{}llp{5.5cm}@{}}
|
||||
\toprule
|
||||
\textbf{Herramienta} & \textbf{Rol} & \textbf{D\'onde} \\
|
||||
\midrule
|
||||
pytest & Unit/integraci\'on Python & bots, bot-descarga, extraction \\
|
||||
Vitest & Unit frontend & desktop\_app \\
|
||||
go test & Unit count-api & services-count-... \\
|
||||
k6 & Carga / estr\'es & \texttt{docs/plan\_pruebas/scripts} \\
|
||||
Docker Compose & Stack + smoke & ra\'iz del repo \\
|
||||
latexmk & Compilar este plan & \texttt{docs/plan\_pruebas} \\
|
||||
respx / httpx mock & Fake HTTP LLM/API & CI Python \\
|
||||
LocalStack / moto & MinIO local & Integraci\'on \\
|
||||
\bottomrule
|
||||
\end{tabular}
|
||||
\caption{Herramientas profesionales adoptadas.}
|
||||
\end{table}
|
||||
|
||||
\section{Pipeline CI objetivo (no implementado en esta entrega)}
|
||||
Orden recomendado por PR:
|
||||
\begin{enumerate}
|
||||
\item \texttt{pytest} bots + bot-descarga.
|
||||
\item \texttt{npm test} desktop.
|
||||
\item \texttt{go test ./...} count-api.
|
||||
\item \texttt{docker compose up} + curl smoke \texttt{/health/live}.
|
||||
\item Nightly: k6 ST-GW-01 y ST-BOT-01 en staging.
|
||||
\end{enumerate}
|
||||
|
||||
\section{Compilar este documento}
|
||||
\begin{lstlisting}[language=bash,caption={latexmk}]
|
||||
cd docs/plan_pruebas
|
||||
latexmk -pdf main.tex
|
||||
\end{lstlisting}
|
||||
|
||||
\section{Prioridad de implementaci\'on de tests (ROI)}
|
||||
\begin{enumerate}
|
||||
\item FastAPI TestClient bot-descarga (claim, cancel, auth, offline).
|
||||
\item Integraci\'on gateway $\rightarrow$ bot-descarga $\rightarrow$ PG $\rightarrow$ MinIO local.
|
||||
\item Estr\'es heartbeats + events (patr\'on de carga real del bot).
|
||||
\item Estr\'es count-api (riesgo OOM).
|
||||
\item CI m\'inimo para no perder cobertura.
|
||||
\end{enumerate}
|
||||
Reference in New Issue
Block a user