rn-testing
Probar aplicaciones React Native con Jest
Escribir pruebas para aplicaciones React Native requiere comprender el mockeo de módulos nativos, el manejo de estado asíncrono y la prueba de stores de Zustand. Esta habilidad proporciona patrones probados y ejemplos de código para suites de pruebas confiables.
스킬 ZIP 다운로드
Claude에서 업로드
설정 → 기능 → 스킬 → 스킬 업로드로 이동
토글을 켜고 사용 시작
테스트해 보기
"rn-testing" 사용 중입니다. How do I test a Zustand store?
예상 결과:
- Reinicia el store antes de cada prueba usando setState(initialState, true) para reemplazar (no combinar) el estado
- Usa getState() para acceder al estado fresco después de operaciones asíncronas
- Envuelve acciones asíncronas del store en act() al probar
- Ejemplo: beforeEach(() => { useAssessmentStore.setState(initialState, true); });
"rn-testing" 사용 중입니다. How do I mock expo-router in tests?
예상 결과:
- Usa jest.mock('expo-router', () => ({ useRouter: () => ({ push: jest.fn(), replace: jest.fn(), back: jest.fn() }) }))
- Configura mocks globalmente en jest.setup.js para comportamiento consistente en todos los archivos de prueba
- Reinicia mocks entre pruebas con jest.clearAllMocks() en beforeEach
- Mockea useLocalSearchParams para retornar datos de prueba para pantallas que leen parámetros de ruta
"rn-testing" 사용 중입니다. How do I fix act() warnings in my tests?
예상 결과:
- Envuelve todas las actualizaciones de estado y operaciones asíncronas en act() para asegurar la sincronización adecuada
- Usa waitFor() para aserciones sobre contenido asíncrono que puede no aparecer inmediatamente
- Prefiere consultas findBy* sobre getBy* para contenido asíncrono (findBy tiene espera incorporada)
- Verifica promesas pendientes que se resuelven después de que la prueba se completa
보안 감사
안전This skill is pure documentation containing only testing patterns for React Native. The static scanner incorrectly flagged markdown code blocks and JavaScript method names. No executable code, network calls, or file operations exist in this skill.
위험 요인
🌐 네트워크 접근 (2)
⚙️ 외부 명령어 (27)
품질 점수
만들 수 있는 것
Corregir pruebas inestables de stores
Aprende cómo reiniciar el estado del store de Zustand entre pruebas para prevenir fugas de estado que causan fallos intermitentes en las pruebas.
Mockear módulos nativos de Expo
Configura mocks apropiados para expo-router, expo-secure-store y otros módulos de Expo en pruebas de Jest.
Probar operaciones asíncronas
Maneja acciones asíncronas de stores y obtención de datos con React Query en pruebas usando act() y waitFor.
이 프롬프트를 사용해 보세요
How do I test a React Native component with Jest and React Native Testing Library?
How do I test a Zustand store and prevent state from persisting between tests?
Show me how to mock expo-router and expo-secure-store in Jest tests.
My React Native tests have act() warnings and timeouts. How do I fix them?
모범 사례
- Siempre reinicia el estado del store en beforeEach para prevenir contaminación de pruebas entre tests
- Usa consultas findBy* en lugar de getBy* para contenido asíncrono para evitar condiciones de carrera
- Mockea dependencias externas como expo-router a nivel de módulo para comportamiento consistente
피하기
- Usar consultas getBy* para contenido asíncrono que puede no aparecer inmediatamente
- Olvidar limpiar mocks con jest.clearAllMocks() entre pruebas de navegación
- Probar detalles de implementación en lugar de comportamiento visible para el usuario