test-writer

Cómo escribir pruebas pytest para los módulos en este espacio de trabajo. Cargar cada vez que estés a punto de escribir o ampliar pruebas.

npx skills add https://github.com/firebase/genkit --skill test-writer

Test writer

When writing pytest tests in this workspace:

  • One test file per module. foo.py lives next to foo_test.py (suffix, not prefix).
  • Cover the happy path AND at least one edge case. Empty input, duplicates, boundary values — pick what matters for the unit under test.
  • Use pytest.mark.parametrize when the same assertion runs over a small table of inputs. Keep IDs descriptive.
  • Name tests test_<unit>_<scenario>_<expected>. Examples: test_total_empty_cart_returns_zero, test_add_duplicate_item_merges_quantities.
  • Arrange / Act / Assert. Three clear blocks. No setup hidden in fixtures unless it's reused across at least two tests.
  • Assert behavior, not implementation. Don't reach into private attributes or count function calls; check the observable result.
  • Imports at module top. Don't import inside test functions.

Más skills de firebase

resolve-docker-vulnerabilities
firebase
Habilidad para resolver vulnerabilidades de Docker para la imagen firebase-cli. Usa esta habilidad cuando necesites verificar vulnerabilidades en la imagen Docker de firebase-cli…
official
python-expert
firebase
Convenciones para un Python limpio e idiomático. Carga cada vez que leas, edites o escribas archivos fuente de Python.
official
developing-genkit-dart
firebase
SDK unificado de IA para Dart que permite generación de código, salidas estructuradas, herramientas, flujos y agentes. Proporciona APIs centrales para generación, definición de herramientas, orquestación de flujos, embeddings y streaming con una única interfaz. Incluye más de 8 complementos para proveedores de LLM (Google Gemini, Anthropic Claude, OpenAI GPT), Firebase AI, Protocolo de Contexto de Modelo, integración con navegador Chrome y alojamiento de servidor HTTP mediante Shelf. CLI integrada con interfaz de desarrollo local para ejecución de flujos, trazado, experimentación con modelos y...
official
developing-genkit-js
firebase
Crea aplicaciones Node.js/TypeScript impulsadas por IA con flujos, herramientas y soporte multimodelo de Genkit. Genkit es independiente del proveedor; admite Google AI, OpenAI, Anthropic, Ollama y otros proveedores de LLM mediante complementos. Define flujos con esquemas de tipo seguro usando Zod, ejecuta solicitudes de generación y compone flujos de trabajo de IA de varios pasos en TypeScript. Requiere Genkit CLI v1.29.0+; los cambios recientes importantes en la API significan que debes consultar genkit docs:read y common-errors.md para patrones actuales, no conocimientos previos...
official
developing-genkit-python
firebase
Desarrolla aplicaciones impulsadas por IA usando Genkit en Python. Úsalo cuando el usuario pregunte sobre Genkit, agentes de IA, flujos o herramientas en Python, o cuando se encuentre con Genkit…
official
firebase-ai-logic
firebase
Integración de Gemini del lado del cliente para aplicaciones web con inferencia multimodal, streaming y ejecución híbrida en el dispositivo. Admite entradas solo de texto y multimodales (imágenes, audio, video, PDFs); los archivos de más de 20 MB se enrutan a través de Cloud Storage. Incluye sesiones de chat con historial automático, respuestas en streaming para visualización en tiempo real y aplicación estructurada de salida JSON. Ofrece inferencia híbrida en el dispositivo mediante Gemini Nano en Chrome, con respaldo automático a la ejecución en la nube. Requiere App Check para producción...
official
firebase-ai-logic-basics
firebase
Habilidad oficial para integrar Firebase AI Logic (API de Gemini) en aplicaciones web. Cubre configuración, inferencia multimodal, salida estructurada y seguridad.
official
firebase-app-hosting-basics
firebase
Implementa y gestiona aplicaciones web full-stack con Firebase App Hosting usando Next.js, Angular y otros frameworks compatibles. Requiere un proyecto Firebase en el plan de precios Blaze; admite flujos de trabajo de renderizado del lado del servidor (SSR) y regeneración estática incremental (ISR). Despliega mediante configuración firebase.json con apphosting.yaml opcional para configuración del backend, o habilita el despliegue automatizado "git push to deploy" a través de la integración con GitHub. Incluye gestión de secretos mediante comandos CLI para acceso seguro a claves sensibles...
official