-
Autenticación y Gestión de Usuarios
Verificar el flujo completo de usuarios, desde el registro hasta la administración.
- **Registro de Usuario (`register.php`, `api/register.php`):**
- Registrar un nuevo usuario con datos válidos.
- Intentar registrar con datos inválidos (ej. email ya registrado, contraseñas no coincidentes, campos vacíos).
- Verificar que el usuario se guarda correctamente en la base de datos.
- **Inicio de Sesión (`login.php`, `api/login.php`):**
- Iniciar sesión con credenciales válidas.
- Intentar iniciar sesión con credenciales inválidas.
- Verificar que el usuario es redirigido correctamente tras un inicio de sesión exitoso.
- **Perfil de Usuario (`profile.php`, `api/profile.php`):**
- Acceder al perfil del usuario autenticado.
- Actualizar la información del perfil (nombre, email, contraseña).
- Verificar que los cambios se reflejan en la base de datos y en la interfaz.
- **Cierre de Sesión (`logout.php`):**
- Cerrar la sesión de un usuario.
- Verificar que el usuario ya no está autenticado.
- **Administración de Usuarios (si aplica, `admin_users.php`, `api/admin_users.php`):**
- Listar usuarios.
- Editar y eliminar usuarios (solo para roles con permisos).
- Verificar que los cambios se persisten en la base de datos.
-
Funcionalidad Blockchain
Probar la creación y verificación de bloques en la cadena.
- **Minería de Bloques (`chain_union.php`, `api/mine_block.php`):**
- Ejecutar la minería de un nuevo bloque.
- Verificar que el nuevo bloque se agrega a la cadena (consultando `api/get_chain.php`).
- Asegurarse de que el hash del bloque anterior y el actual sean correctos.
- Añadir transacciones (datos) a un bloque y verificar que se almacenen correctamente.
- **Obtener la Cadena (`api/get_chain.php`):**
- Acceder al endpoint para obtener la cadena completa.
- Verificar la estructura de los bloques (índice, timestamp, datos, hash anterior, hash actual, nonce).
- Asegurar que la cadena se muestra en el orden correcto.
- **Validación de la Cadena (implícito en la lógica):**
- Si existe una función de validación de cadena, ejecutarla para asegurar la integridad.
- Intentar alterar un bloque manualmente en la base de datos y verificar que la validación falle.
-
Funcionalidad de Blog
Verificar la creación, lectura, actualización y eliminación (CRUD) de publicaciones.
- **Crear Publicación (`blog.php`, `api/posts.php`):**
- Crear una nueva publicación (título, contenido, autor).
- Verificar que la publicación aparece en la lista de blogs.
- **Leer Publicación (`blog.php`, `api/posts.php`):**
- Visualizar publicaciones individuales.
- Verificar que el contenido y los metadatos son correctos.
- **Actualizar Publicación (`blog.php`, `api/posts.php`):**
- Editar una publicación existente.
- Verificar que los cambios se reflejan en la vista y en la base de datos.
- **Eliminar Publicación (`blog.php`, `api/posts.php`):
- Eliminar una publicación.
- Verificar que ya no aparece en la lista.
-
Mensajería
Probar el envío y recepción de mensajes.
- **Enviar Mensaje (`messages.php`, `api/messages.php`):**
- Enviar un mensaje a otro usuario (si existe la funcionalidad).
- Enviar un mensaje a uno mismo.
- **Recibir/Ver Mensajes (`messages.php`, `api/messages.php`):**
- Ver la bandeja de entrada de mensajes.
- Verificar que los mensajes se muestran correctamente.
- **Responder/Eliminar Mensaje (si aplica):**
- Probar la respuesta y eliminación de mensajes.
-
API Endpoints Generales
Verificar la respuesta de los endpoints principales a través de Postman, Insomnia o cURL.
- **`api/todo.php`:**
- Probar CRUD para tareas pendientes.
- **`api/settings.php`:**
- Verificar la recuperación y actualización de configuraciones (si implementado).
- **`api/videos.php`, `api/video_notes.php`, `api/youtube_converter.php` (si aplican):**
- Probar las funcionalidades relacionadas con videos y notas.
- **Manejo de Errores:**
- Probar el envío de solicitudes incorrectas a los endpoints de la API y verificar que se devuelvan códigos de estado HTTP apropiados (400, 401, 404, 500) y mensajes de error útiles.
-
Dashboard (`dashboard.php`)
Verificar que todas las métricas, enlaces y funcionalidades del panel de control se muestren y funcionen correctamente.
- Acceder al dashboard como usuario autenticado.
- Verificar la carga de datos (ej. número de usuarios, bloques minados, publicaciones, etc.).
- Probar la navegación a otras secciones desde el dashboard.
-
Páginas Estáticas y Otras (`cv.html`, `sales_page.html`)
Asegurarse de que las páginas estáticas se visualicen correctamente.
- Abrir las páginas en el navegador y verificar el formato y contenido.