Rullst AcademyRullst Academy/Lección
Aplicaciones con Rullst I · Lección 12 / 14

Pruebas que investigan el contrato

Ver una página abrir es solo el comienzo de la verificación.

Rutas de aprendizaje20 min

Vamos a descubrir juntos

  1. 1

    src/validation.rs prueba una función sin red ni base. tests/contract.rs usa TestApp de Rullst para enviar peticiones al enrutador y verificar estados y datos. La prueba de persistencia cierra conexiones y abre archivos nuevos. Cada tipo responde preguntas diferentes.

  2. 2

    Ejecuta cargo test --locked. Lee nombres, no solo el total verde. Rechazo exige estado correcto y base sin cambios. Texto parametrizado se verifica con entrada inusual y tabla aún funcional. Evita pruebas que solo repitan constantes de implementación.

  3. 3

    Elige un error plausible: sustituye WHERE id por UPDATE sin filtro en una copia descartable. Una prueba con dos misiones debe detectar que la otra no debía cambiar. Después revierte el error y conserva la prueba. No experimentes en una base ajena.

  4. 4

    El proyecto final pide un caso nuevo escrito por ti y una explicación de lo que no cubre. TestApp no prueba navegador real, instalación limpia, carga ni lectores de pantalla. Una revisión útil combina pruebas apropiadas, observación y feedback de otra persona.

Tu mesa de aplicaciones

El kit incluye la aplicación completa para investigar y modificar. El fragmento explica esta etapa; el editor contiene el archivo indicado. Rullst Academy no compila ni ejecuta este servidor en el navegador.

Archivo para estudiar y modificar

tests/contract.rs

cargo test --locked
cargo test --locked title_and_priority_boundaries
cargo test --locked http_contract_validation_and_parameterized_data

Extrae el kit en una carpeta nueva y abre el terminal junto a Cargo.toml. Usa Rust 1.96+; la primera compilación puede descargar dependencias y tardar. Abre http://127.0.0.1:3010. Detén con Ctrl+C y ejecuta de nuevo tras editar.

cargo test --locked
cargo run --locked
Mis archivos y GitHub

Descarga tu borrador y sustituye el archivo indicado en tu copia extraída. El editor guarda un archivo en este navegador; tu cuenta guarda evaluaciones y XP. El ZIP excluye tus cambios. GitHub envía solo el archivo confirmado; usa Git manual para la aplicación entera, sin bases, respaldos ni secretos.

Enlaces oficiales y siguiente paso

✦
TU MISIÓN

Distinguir pruebas de función, HTTP y recuperación; agregar una regresión útil.

Ahora te toca

Taller de descubrimientos

Decide antes de ejecutar

Distinguir pruebas de función, HTTP y recuperación; agregar una regresión útil.
Prepara tus respuestas y comprueba cuando estés listo.
Una pausa para entender

¿Qué permite afirmar un conjunto de pruebas aprobado?

Necesito una pista

La evidencia tiene límites. Un caso nuevo y feedback independiente ayudan a descubrir lo que no cubrían las pruebas anteriores.

Cargando tu camino…

Llévatelo contigo

Agrega una prueba que complete una misión y verifique que otra sigue pendiente. Hazla fallar con un defecto deliberado en una copia, corrige y registra antes/después.

A tu ritmo

Mis archivos y GitHub

Cada lección puede convertirse en un registro propio: código, notas o un plan de práctica. Guardar un archivo en GitHub es opcional y no cambia tus XP.

Manual del alumno

El editor y las descargas se abren cuando esta lección esté disponible para tu cuenta. Revisa el acceso indicado abajo o vuelve al mapa de la ruta.

Comprobando tu acceso a esta lección…

Rullstpetbot

La IA puede equivocarse. Consulta el material de la lección.