Camofox Browser
Crear un laboratorio Camofox de referencias obsoletas y extracción tipada
Construye pruebas reproducibles sobre páginas propias que relacionen observaciones y acciones y detecten errores semánticos sin experimentos públicos.
Qué aprenderás
- Usa muestras propias con observaciones esperadas versionadas.
- Relaciona cada acción con la instantánea que la justificó.
- Distingue incógnitas y propuestas de entregas del proyecto.
Antes de empezar
- HTTP y JSON básicos
- Servicio aislado y página propia o permitida
Explica la frontera real del servicio y verifica la muestra de observación o ciclo propuesta.
Conclusiones clave
- Usa muestras propias con observaciones esperadas versionadas.
- Relaciona cada acción con la instantánea que la justificó.
- Distingue incógnitas y propuestas de entregas del proyecto.
Controlar la página y la respuesta esperada
Un proyecto útil es un sitio pequeño con encabezados conocidos, botones repetidos, un marco y un mensaje dinámico. Guarda revisión y observaciones esperadas junto al script cliente. Permite probar comportamiento real sin cuentas externas, desafíos a restricciones ni dependencia del rediseño diario de otro sitio.
Registra versión de instantánea, referencia, intención y postcondición en cada paso. Si cambia la página, una observación nueva sustituye referencias antiguas. Una respuesta tardía no debe disparar automáticamente otra acción con efectos. El laboratorio debe mostrar esa incertidumbre y comprobar estado final antes de decidir si repetir es seguro.
Convertir auxiliares en regresiones
Añade una página larga con cola de navegación conocida y comprueba avance de offsets sin contar la cola repetida como contenido nuevo. Incluye etiquetas numéricas decimales y regionales, texto bruto y valores normalizados, referencias opcionales y obligatorias ausentes y un esquema no admitido. Conectan observaciones de auxiliares con aceptación real del cliente.
Añade un límite bajo de pestañas, una navegación fallida controlada y un periodo inactivo para observar reciclaje y recuperación. Mantén trazas apagadas salvo en una sesión dedicada con retención definida. Cada caso debe indicar aprobado, fallo o sin ejecutar; devolver cualquier JSON no equivale a éxito.
Visualizar la transición que explica el fallo
La primera interfaz útil es una cronología de petición, instantánea, mapa y estado final. Seleccionar un paso muestra la evidencia exacta que justificó la acción y si cambió el objetivo. Un informe HTML estático con SVG enfocados basta para explicar estas relaciones; no hace falta 3D salvo una interacción espacial real que lo justifique.
Posibles extensiones son validación de aplicación más estricta, contratos de versión de observación y un informe unificado de retención. Son propuestas editoriales, no funciones anunciadas por el mantenedor. Entrega primero una prueba reproducible y añade interacción cuando ayude a diagnosticar un fallo concreto, no solo a parecer más avanzado.
Pasos de implementación
- 1
Crea muestra propia y manifiesto de estado.
- 2
Añade paginación, referencias obsoletas y formatos numéricos.
- 3
Prueba límites en una sesión dedicada.
- 4
Publica una reproducción con aprobado, fallo y sin ejecutar.
Ejemplo para copiar
{
"fixture": "owned-observation-lab",
"pageRevision": "registrar antes de probar",
"cases": [
"stale-ref",
"long-snapshot",
"localized-number",
"idle-recovery"
],
"status": "sin ejecutar",
"publicAccountsUsed": false,
"upstreamRoadmap": false
}Preguntas frecuentes
¿Estas extensiones están en la hoja de ruta?
No. Son propuestas editoriales etiquetadas, derivadas del comportamiento inspeccionado.
¿El informe necesita Three.js?
No por defecto. Cronología, tabla y SVG bastan salvo que una muestra espacial se beneficie realmente de interacción 3D.
Fuentes
- README.mdFuente verificada 2026-09-08
- package.jsonFuente verificada 2026-09-08
- DockerfileFuente verificada 2026-09-08
- lib/auth.jsFuente verificada 2026-09-08
- lib/snapshot.jsFuente verificada 2026-09-08
- lib/extract.jsFuente verificada 2026-09-08
- lib/config.jsFuente verificada 2026-09-08
- lib/reporter.jsFuente verificada 2026-09-08
- lib/page-lease.jsFuente verificada 2026-09-08
- server.jsFuente verificada 2026-09-08
- tests/unit/snapshot.test.jsFuente verificada 2026-09-08
- tests/unit/auth.test.jsFuente verificada 2026-09-08