Pruebas de Creación de Datos en Aplicaciones Web
Clase 24 de 30 • Curso de Estándares y Buenas Prácticas para API REST con Laravel
Resumen
¿Cómo probar la funcionalidad de creación en una aplicación?
Probar nuestras funcionalidades es esencial para garantizar que todo funcione como debería. Aquí te explicaremos cómo llevar a cabo la prueba de la función de creación en tu aplicación, simulando el envío de datos desde un formulario.
¿Cuál es el punto de partida para las pruebas?
El primer paso es visitar una ruta específica y analizar la respuesta obtenida. Habitualmente, se comienza por funcionalidad como index
, show
o eliminar
. Para esta ocasión, nos centraremos en la función de creación.
Para ello, nos dirigimos al archivo de recetas y copiamos el código de show
como base. Luego, nos aseguramos de adaptarlo para trabajar con el método de creación.
¿Cómo simular los datos de entrada?
Creamos una variable para las etiquetas, simulando los datos que el formulario podría enviar. Es crucial que no se intente crear una receta directamente; en su lugar, aprovechamos el método POST.
$etiquetas = []; // Simulación de datos de etiqueta
Para esta función, estructuramos un array que contenga todos los campos requeridos, como category ID
, title
y description
. Para el título, utilizamos Faker para generar un texto aleatorio.
¿Cómo manejar diferentes tipos de datos?
Cada campo necesita atención particular para simular un escenario real:
- Categoría: Usamos
category ID
como referencia. - Título: Generado aleatoriamente con Faker.
- Descripción: Puede ser un breve párrafo.
- Ingredientes: Se utiliza un texto que haga sentido con la realidad.
- Instrucciones: También se maneja con un texto.
- Imagen: Usamos una clase especial que simula la carga de un archivo. Se especifica que es un archivo PNG.
$image = new Image;
$image::fake()->image('file.png');
¿Qué rutas se deben visitar y qué esperar?
La siguiente acción es visitar la ruta de creación mediante POST
. En lugar de trabajar con un ID, se pasa toda la información simulada. La expectativa es recibir un estado que confirme la creación correcta.
¿Qué clases y traits son necesarios?
Es vital importar las clases y traits necesarios para que el código funcione. Al añadir las instrucciones en la parte superior de tu archivo, garantizas que todo sea reconocido y funcione como esperado:
use Illuminate\Http\UploadedFile; // Para la carga de archivos
use Faker\Factory as Faker; // Para generar datos aleatorios
¿Qué sucede si algo falla en las pruebas?
Si en el proceso te encuentras con que falta una etiqueta u otro elemento, asegúrate de importar correctamente las clases correspondientes. Esto puede requerir ajustar el código:
use App\Models\Etiqueta;
¿Cómo confirmamos que la función es robusta?
Una vez estructurado el código, ejecutar la prueba como lo harías con PHP Artisan:
php artisan test
Al hacerlo, verifica que la salida del test coincida con las expectativas previas. Si el código se ejecuta sin errores, significa que la creación, las relaciones de datos, y la carga de archivos funcionan correctamente.
Probar tu aplicación asegura que cada funcionalidad publicada pueda ofrecer la calidad esperada. Atrévete a realizar estas prácticas en tus proyectos para tener una base sólida y confiable. ¡Sigue aprendiendo y mejorando día a día tus habilidades en desarrollo!