Hoy te voy a mostrar cómo podemos crear data de prueba con Claude. Si prefieres el formato video, puedes verlo aquí.

Para este ejercicio vamos a utilizar una página web que se llama Automation Exercise, donde ya hay una suite de tests diseñados para que los ejecutes/automatices.
 

Preparación de la Prueba

 
Si vamos a la sección de test cases, vamos a ver los tests que ya existen. Hay de interfaz de usuario, también para APIs, y entre estos casos de prueba vamos a elegir el primero: registrar un usuario nuevo.

Y luego, en los pasos 9 y 12, podemos ver cuál es la información que necesitamos para ejecutar el test. Tenemos: título, nombre, email, password, fecha de nacimiento, compañía, dirección, país, estado, ciudad, código postal y número de teléfono.
 

Armando el Prompt para Claude

 
Entonces, aquí vamos a definir qué le vamos a pedir a Claude:

¿Puedes crear 20 registros de data para ejecutar pruebas que requieren nombre, apellido, correo electrónico, contraseña, fecha de nacimiento, empresa, dirección, país, estado/provincia, código postal y número de teléfono?

Y ¡Super importante!! para mejorar los resultados le vamos a decir a Claude qué formato de dato queremos y cómo lo debe leer. Entonces, especifico que cada uno de estos parámetros están descritos con el signo dólar y el tipo de datos con el signo barra. Así:

$ nombre | string | random

Ampliamos el prompt con el detalle de tipos de datos, podemos ser tan específicos como nuestra prueba lo requiera:

Quiero que el nombre sea de tipo string y que sea data random. Lo mismo para el apellido.

Para el correo electrónico también quiero que sea data random, pero de tipo email y no solamente string.

Para la contraseña quiero que sea tipo password, y así nos aseguramos que ese password es un password como el que en verdad usaríamos en la vida real.

 

Más variaciones de data

 

Quiero que la fecha de nacimiento sea un tipo date, que es fecha, y le voy a dar un rango: que sea desde el primero de enero del 2020 hasta el 31 de diciembre del 2024.

Para la empresa también quiero que sea de tipo string y quiero que sea random, pero que tenga un máximo de 15 caracteres.

Para la dirección, que sea random en Cuenca, Azuay, Ecuador.

Para el país, que sea un valor fijo: Ecuador.

Y para el estado también, que sea un valor fijo.

El código postal, que sea random de exactamente seis caracteres.

Y para el teléfono también quiero que sea un número ecuatoriano y le voy a decir que quiero que empiece con el +593 y que le agregue nueve caracteres numéricos.

 

Prompt

Este es el prompt completo:


Puedes crear 20 registros de data para ejecutar pruebas que requieren: nombre, apellido, correo electrónico, contraseña, fecha de nacimiento, empresa, dirección, país, estado/provincia, código postal y número de teléfono?.

Cada uno de estos parámetros está descrito con el signo $ y el tipo de dato con el signo |.
 

$ nombre | string | random
$ apellido | string | random
$ correo_electronico | email | random
$ contraseña | password | random
$ fecha_nacimiento | date | 01/01/2000 to 12/31/2024
$ empresa | string | random max 15 characters
$ dirección | string | random in Cuenca, Azuay, Ecuador.
$ país | string | "Ecuador" 
$ estado | string | "Azuay"
$ código postal | number | random of 6 characters
$ teléfono | string | starting with "+593" plus 9 numeric chars

 

Resultados

Y aquí vamos a ver la data que arroja Claude.

NombreApellidoCorreo ElectrónicoContraseñaFecha NacimientoEmpresaDirecciónPaísEstadoCódigo PostalTeléfono
MartínCoronelmartin.coronel@ejemplo.comK7p$L2xR!9aZ15/03/2010TechSolucionesAv. Remigio Crespo 243, CuencaEcuadorAzuay010183+593987654321
LucíaMendozalucia.mendoza@correo.netBj3*wF8zQ!5p24/07/2005MegaStoreCalle Larga 122, CuencaEcuadorAzuay010154+593912345678
CarlosValenciacarlos.valencia@mail.orgP9q@T4mE$7vX03/11/2018DataFusionGran Colombia 756, CuencaEcuadorAzuay010167+593998765432
AndreaJaramilloandrea.jaramillo@inbox.ecZ5s&C2dG!8hL19/02/2002EcoSistemasFederico Proaño 891, CuencaEcuadorAzuay010112+593945678901
JavierSalazarjavier.salazar@webmail.comM3b#R9tY$4kP30/09/2015InnovaTechAv. Solano 456, CuencaEcuadorAzuay010132+593923456789
DanielaParedesdaniela.paredes@correoec.comX6f%N2qZ!7gJ12/04/2009GlobalNetPrimero de Mayo 345, CuencaEcuadorAzuay010198+593976543210
GabrielTorresgabriel.torres@mensajero.netD8h*W5vB$2mK27/08/2020RedConectaAv. de las Américas 789, CuencaEcuadorAzuay010145+593934567890
ValeriaMorenovaleria.moreno@buzon.orgL4j@S7pF!9cQ05/06/2003VisualDesignMariscal Lamar 567, CuencaEcuadorAzuay010176+593965432109
RobertoEspinozaroberto.espinoza@mail.netF2k%H8xD$6rS22/12/2016CreaSoftPaseo 3 de Noviembre 234, CuencaEcuadorAzuay010188+593954321098
CamilaRomerocamila.romero@webbox.comT9n&G3cV!5bM08/01/2007DigiCorpSimón Bolívar 678, CuencaEcuadorAzuay010121+593943210987
EstebanGuerreroesteban.guerrero@correobox.ecH6p#L1zR$7wQ17/10/2014SystemPlusAlfonso Cordero 123, CuencaEcuadorAzuay010156+593921098765
SofíaPalaciossofia.palacios@mailec.comV3m%S9bT!4fC28/05/2001NetSolutionsJuan Jaramillo 345, CuencaEcuadorAzuay010178+593932109876
AlejandroVelascoalejandro.velasco@correopro.netQ7r*K5nH$2jP09/03/2019MediaGroupLuis Cordero 567, CuencaEcuadorAzuay010134+593989012345
IsabellaAndradeisabella.andrade@webnet.orgY1t@B8gM!6pV14/06/2006LogiSmartMariscal Sucre 789, CuencaEcuadorAzuay010190+593978901234
SebastiánCevallossebastian.cevallos@inboxpro.comN4w%F7hJ$9sZ26/11/2013ProConsultPresidente Córdova 234, CuencaEcuadorAzuay010143+593967890123
CarolinaDelgadocarolina.delgado@mail.comE8u&R2dT!3kB31/07/2008CloudWorksAntonio Borrero 456, CuencaEcuadorAzuay010165+593956789012
MateoOrtizmateo.ortiz@buzonec.netJ5x#G9zV$1nM11/02/2022AppDevelopBenigno Malo 678, CuencaEcuadorAzuay010187+593945678901
PaulaRivadeneirapaula.rivadeneira@webmail.ecC2y%W6qS!8rP18/04/2004SmartDataHermano Miguel 345, CuencaEcuadorAzuay010123+593934567890
DiegoMaldonadodiego.maldonado@correo.comU7v*N3bF$4tD07/09/2017TecnoGlobalTarqui 567, CuencaEcuadorAzuay010176+593923456789
ValentinaHidalgovalentina.hidalgo@inboxmail.orgA1z@R6kG!9wH23/08/2011InfoSystemsSucre 789, CuencaEcuadorAzuay010154+593912345678

Me sorprendió bastante la data que obtuvimos:

  • Todos parecen nombres reales, si bien son datas de prueba.
  • Los correos electrónicos tienen exactamente el mismo nombre y apellido que generó y le agrega algunos dominios de prueba (como mail.com, inbox.ec).
  • En la contraseña podemos ver contraseñas reales, que cumplen los estándares mínimos.
  • Las fechas de nacimiento están dentro del rango que les dimos, todas.
  • Las empresas parecen nombres de empresas reales.
  • La dirección fue lo que más me impactó: son direcciones reales de Cuenca, Azuay, Ecuador, la ciudad donde yo vivo.
  • El código postal, si bien los pedí, todos corresponden a Cuenca (la ciudad que especifiqué como dirección).
  • Los números de teléfono no son reales pero el formato sí es.

La data está súper buena, que nos permite probar montones de casos con información relevante, información que en verdad va a ser la que un usuario real le va a dar a nuestra aplicación.

Formatos de data

Al inicio la data estaba en una tabla, pero para efectos de automatización, nos sirve más la data en formato json, así que se lo vamos a pedir a Claude también con un prompt super simple (como respuesta a la misma conversación):

Puedes darme esta data en formato JSON?

Y aquí vemos el resultado, la misma data en formato JSON:

[
  {
    "nombre": "Martín",
    "apellido": "Coronel",
    "correo_electronico": "martin.coronel@ejemplo.com",
    "contraseña": "K7p$L2xR!9aZ",
    "fecha_nacimiento": "15/03/2010",
    "empresa": "TechSoluciones",
    "dirección": "Av. Remigio Crespo 243, Cuenca",
    "país": "Ecuador",
    "estado": "Azuay",
    "código_postal": "010183",
    "teléfono": "+593987654321"
  },
  {
    "nombre": "Lucía",
    "apellido": "Mendoza",
    "correo_electronico": "lucia.mendoza@correo.net",
    "contraseña": "Bj3*wF8zQ!5p",
    "fecha_nacimiento": "24/07/2005",
    "empresa": "MegaStore",
    "dirección": "Calle Larga 122, Cuenca",
    "país": "Ecuador",
    "estado": "Azuay",
    "código_postal": "010154",
    "teléfono": "+593912345678"
  },
  {
    "nombre": "Carlos",
    "apellido": "Valencia",
    "correo_electronico": "carlos.valencia@mail.org",
    "contraseña": "P9q@T4mE$7vX",
    "fecha_nacimiento": "03/11/2018",
    "empresa": "DataFusion",
    "dirección": "Gran Colombia 756, Cuenca",
    "país": "Ecuador",
    "estado": "Azuay",
    "código_postal": "010167",
    "teléfono": "+593998765432"
  },
  {
    "nombre": "Andrea",
    "apellido": "Jaramillo",
    "correo_electronico": "andrea.jaramillo@inbox.ec",
    "contraseña": "Z5s&C2dG!8hL",
    "fecha_nacimiento": "19/02/2002",
    "empresa": "EcoSistemas",
    "dirección": "Federico Proaño 891, Cuenca",
    "país": "Ecuador",
    "estado": "Azuay",
    "código_postal": "010112",
    "teléfono": "+593945678901"
  },
  {
    "nombre": "Javier",
    "apellido": "Salazar",
    "correo_electronico": "javier.salazar@webmail.com",
    "contraseña": "M3b#R9tY$4kP",
    "fecha_nacimiento": "30/09/2015",
    "empresa": "InnovaTech",
    "dirección": "Av. Solano 456, Cuenca",
    "país": "Ecuador",
    "estado": "Azuay",
    "código_postal": "010132",
    "teléfono": "+593923456789"
  },
  {
    "nombre": "Daniela",
    "apellido": "Paredes",
    "correo_electronico": "daniela.paredes@correoec.com",
    "contraseña": "X6f%N2qZ!7gJ",
    "fecha_nacimiento": "12/04/2009",
    "empresa": "GlobalNet",
    "dirección": "Primero de Mayo 345, Cuenca",
    "país": "Ecuador",
    "estado": "Azuay",
    "código_postal": "010198",
    "teléfono": "+593976543210"
  },
  {
    "nombre": "Gabriel",
    "apellido": "Torres",
    "correo_electronico": "gabriel.torres@mensajero.net",
    "contraseña": "D8h*W5vB$2mK",
    "fecha_nacimiento": "27/08/2020",
    "empresa": "RedConecta",
    "dirección": "Av. de las Américas 789, Cuenca",
    "país": "Ecuador",
    "estado": "Azuay",
    "código_postal": "010145",
    "teléfono": "+593934567890"
  },
  {
    "nombre": "Valeria",
    "apellido": "Moreno",
    "correo_electronico": "valeria.moreno@buzon.org",
    "contraseña": "L4j@S7pF!9cQ",
    "fecha_nacimiento": "05/06/2003",
    "empresa": "VisualDesign",
    "dirección": "Mariscal Lamar 567, Cuenca",
    "país": "Ecuador",
    "estado": "Azuay",
    "código_postal": "010176",
    "teléfono": "+593965432109"
  },
  {
    "nombre": "Roberto",
    "apellido": "Espinoza",
    "correo_electronico": "roberto.espinoza@mail.net",
    "contraseña": "F2k%H8xD$6rS",
    "fecha_nacimiento": "22/12/2016",
    "empresa": "CreaSoft",
    "dirección": "Paseo 3 de Noviembre 234, Cuenca",
    "país": "Ecuador",
    "estado": "Azuay",
    "código_postal": "010188",
    "teléfono": "+593954321098"
  },
  {
    "nombre": "Camila",
    "apellido": "Romero",
    "correo_electronico": "camila.romero@webbox.com",
    "contraseña": "T9n&G3cV!5bM",
    "fecha_nacimiento": "08/01/2007",
    "empresa": "DigiCorp",
    "dirección": "Simón Bolívar 678, Cuenca",
    "país": "Ecuador",
    "estado": "Azuay",
    "código_postal": "010121",
    "teléfono": "+593943210987"
  },
  {
    "nombre": "Esteban",
    "apellido": "Guerrero",
    "correo_electronico": "esteban.guerrero@correobox.ec",
    "contraseña": "H6p#L1zR$7wQ",
    "fecha_nacimiento": "17/10/2014",
    "empresa": "SystemPlus",
    "dirección": "Alfonso Cordero 123, Cuenca",
    "país": "Ecuador",
    "estado": "Azuay",
    "código_postal": "010156",
    "teléfono": "+593921098765"
  },
  {
    "nombre": "Sofía",
    "apellido": "Palacios",
    "correo_electronico": "sofia.palacios@mailec.com",
    "contraseña": "V3m%S9bT!4fC",
    "fecha_nacimiento": "28/05/2001",
    "empresa": "NetSolutions",
    "dirección": "Juan Jaramillo 345, Cuenca",
    "país": "Ecuador",
    "estado": "Azuay",
    "código_postal": "010178",
    "teléfono": "+593932109876"
  },
  {
    "nombre": "Alejandro",
    "apellido": "Velasco",
    "correo_electronico": "alejandro.velasco@correopro.net",
    "contraseña": "Q7r*K5nH$2jP",
    "fecha_nacimiento": "09/03/2019",
    "empresa": "MediaGroup",
    "dirección": "Luis Cordero 567, Cuenca",
    "país": "Ecuador",
    "estado": "Azuay",
    "código_postal": "010134",
    "teléfono": "+593989012345"
  },
  {
    "nombre": "Isabella",
    "apellido": "Andrade",
    "correo_electronico": "isabella.andrade@webnet.org",
    "contraseña": "Y1t@B8gM!6pV",
    "fecha_nacimiento": "14/06/2006",
    "empresa": "LogiSmart",
    "dirección": "Mariscal Sucre 789, Cuenca",
    "país": "Ecuador",
    "estado": "Azuay",
    "código_postal": "010190",
    "teléfono": "+593978901234"
  },
  {
    "nombre": "Sebastián",
    "apellido": "Cevallos",
    "correo_electronico": "sebastian.cevallos@inboxpro.com",
    "contraseña": "N4w%F7hJ$9sZ",
    "fecha_nacimiento": "26/11/2013",
    "empresa": "ProConsult",
    "dirección": "Presidente Córdova 234, Cuenca",
    "país": "Ecuador",
    "estado": "Azuay",
    "código_postal": "010143",
    "teléfono": "+593967890123"
  },
  {
    "nombre": "Carolina",
    "apellido": "Delgado",
    "correo_electronico": "carolina.delgado@mail.com",
    "contraseña": "E8u&R2dT!3kB",
    "fecha_nacimiento": "31/07/2008",
    "empresa": "CloudWorks",
    "dirección": "Antonio Borrero 456, Cuenca",
    "país": "Ecuador",
    "estado": "Azuay",
    "código_postal": "010165",
    "teléfono": "+593956789012"
  },
  {
    "nombre": "Mateo",
    "apellido": "Ortiz",
    "correo_electronico": "mateo.ortiz@buzonec.net",
    "contraseña": "J5x#G9zV$1nM",
    "fecha_nacimiento": "11/02/2022",
    "empresa": "AppDevelop",
    "dirección": "Benigno Malo 678, Cuenca",
    "país": "Ecuador",
    "estado": "Azuay",
    "código_postal": "010187",
    "teléfono": "+593945678901"
  },
  {
    "nombre": "Paula",
    "apellido": "Rivadeneira",
    "correo_electronico": "paula.rivadeneira@webmail.ec",
    "contraseña": "C2y%W6qS!8rP",
    "fecha_nacimiento": "18/04/2004",
    "empresa": "SmartData",
    "dirección": "Hermano Miguel 345, Cuenca",
    "país": "Ecuador",
    "estado": "Azuay",
    "código_postal": "010123",
    "teléfono": "+593934567890"
  },
  {
    "nombre": "Diego",
    "apellido": "Maldonado",
    "correo_electronico": "diego.maldonado@correo.com",
    "contraseña": "U7v*N3bF$4tD",
    "fecha_nacimiento": "07/09/2017",
    "empresa": "TecnoGlobal",
    "dirección": "Tarqui 567, Cuenca",
    "país": "Ecuador",
    "estado": "Azuay",
    "código_postal": "010176",
    "teléfono": "+593923456789"
  },
  {
    "nombre": "Valentina",
    "apellido": "Hidalgo",
    "correo_electronico": "valentina.hidalgo@inboxmail.org",
    "contraseña": "A1z@R6kG!9wH",
    "fecha_nacimiento": "23/08/2011",
    "empresa": "InfoSystems",
    "dirección": "Sucre 789, Cuenca",
    "país": "Ecuador",
    "estado": "Azuay",
    "código_postal": "010154",
    "teléfono": "+593912345678"
  }
]

 

En Conclusión

  • Utilizar herramientas como Claude permite generar grandes volúmenes (o no tan grandes) de data de prueba de manera rápida y eficiente, facilitando la ejecución de casos de prueba.
  • Podemos especificar formatos, rangos y tipos de datos para cada campo requerido (nombre, correo, contraseña, dirección, etc.), asegurando que la data generada sea realista y relevante para nuestros escenarios de prueba.
  • Apoyarnos en la IA para la creación de data de prueba nos ahorra tiempo y nos permite enfocarnos en diseñar escenarios, casos, ambientes y otros assets.
  • La data generada puede exportarse en diferentes formatos (como hojas de cálculo o JSON), facilitando su integración con herramientas de automatización y frameworks de pruebas.
  • ¡Incluir este tipo de soluciones en el ciclo de desarrollo puede marcar la diferencia en la eficiencia y efectividad de cualquier equipo!