{"id":18672,"date":"2024-12-24T09:34:00","date_gmt":"2024-12-24T12:34:00","guid":{"rendered":"https:\/\/es.abstracta.us\/blog\/?p=18672"},"modified":"2024-12-20T18:17:56","modified_gmt":"2024-12-20T21:17:56","slug":"automatizacion-de-correos-en-pruebas-de-rendimiento","status":"publish","type":"post","link":"https:\/\/es.abstracta.us\/blog\/automatizacion-de-correos-en-pruebas-de-rendimiento\/","title":{"rendered":"\u00bfC\u00f3mo automatizar el env\u00edo y recibo de correos electr\u00f3nicos en pruebas de rendimiento?"},"content":{"rendered":"\n<p>\u00bfSab\u00edas que los correos electr\u00f3nicos pueden definir el \u00e9xito de un sistema bajo carga?&nbsp; Descubre c\u00f3mo redefinimos la automatizaci\u00f3n de correos en flujos cr\u00edticos, optimizamos los tiempos de respuesta y logramos precisi\u00f3n mientras maximizamos la eficiencia.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"548\" src=\"https:\/\/es.abstracta.us\/wp-content\/uploads\/2024\/12\/email-1-1024x548.jpg\" alt=\"Imagen: Unsplash - \u00bfC\u00f3mo automatizar el env\u00edo y recibo de correos electr\u00f3nicos en pruebas de rendimiento?\" class=\"wp-image-18675\" srcset=\"https:\/\/es.abstracta.us\/wp-content\/uploads\/2024\/12\/email-1-1024x548.jpg 1024w, https:\/\/es.abstracta.us\/wp-content\/uploads\/2024\/12\/email-1-300x161.jpg 300w, https:\/\/es.abstracta.us\/wp-content\/uploads\/2024\/12\/email-1-768x411.jpg 768w, https:\/\/es.abstracta.us\/wp-content\/uploads\/2024\/12\/email-1-1536x822.jpg 1536w, https:\/\/es.abstracta.us\/wp-content\/uploads\/2024\/12\/email-1-2048x1096.jpg 2048w, https:\/\/es.abstracta.us\/wp-content\/uploads\/2024\/12\/email-1-18x10.jpg 18w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p>En proyectos de pruebas de rendimiento, <strong>la automatizaci\u00f3n del env\u00edo y recepci\u00f3n de correos electr\u00f3nicos <\/strong>puede parecer una tarea secundaria o incluso prescindible. Sin embargo, cuando estos procesos forman parte de un flujo cr\u00edtico dentro de un sistema, <strong>su evaluaci\u00f3n se convierte en una pieza clave para optimizar el rendimiento bajo condiciones reales de uso<\/strong>.&nbsp;<\/p>\n\n\n\n<p><strong>En este art\u00edculo, profundizamos en un caso pr\u00e1ctico desarrollado para el sistema educativo p\u00fablico de Uruguay, en el cual enfrentamos diversos desaf\u00edos t\u00e9cnicos y logramos soluciones innovadoras que podr\u00edan servir de gu\u00eda para otros equipos.<\/strong><\/p>\n\n\n\n<p class=\"has-text-align-center has-background\" style=\"background-color:#f0f0f0\"><strong>\u00bfNecesitas apoyo con pruebas de rendimiento? Chequea <\/strong><a href=\"https:\/\/es.abstracta.us\/soluciones\/pruebas-de-performance\"><strong>nuestros servicios<\/strong><\/a><strong> personalizados y <\/strong><a href=\"https:\/\/es.abstracta.us\/contacto\"><strong>cont\u00e1ctanos<\/strong><\/a><strong>.<\/strong><\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>La importancia de automatizar correos electr\u00f3nicos en pruebas de rendimiento<\/strong><\/h2>\n\n\n\n<p>\u00bfPor qu\u00e9 dedicar esfuerzos a este aspecto y cu\u00e1ndo?<strong> Es relevante automatizar el env\u00edo y recibo de correos electr\u00f3nicos en pruebas de rendimiento cuando estos procesos forman parte de un flujo que completan las personas en un sistema y que se considera cr\u00edtico para la organizaci\u00f3n.<\/strong><\/p>\n\n\n\n<p>Estos procedimientos son claves porque tales valores son requeridos para completar una solicitud (por ejemplo, la inscripci\u00f3n en un sistema). Poder probar este flujo y medir elementos claves, como el tiempo de entrega del mensaje, resulta imprescindible para tomar decisiones informadas en busca de su optimizaci\u00f3n.<\/p>\n\n\n\n<p>Este tipo de an\u00e1lisis es vital en escenarios donde el servicio debe soportar<strong> altas demandas,<\/strong> ya que permite que los tiempos de espera y validaci\u00f3n sean adecuados para la experiencia del usuario final.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>Ejemplo de automatizaci\u00f3n de correos en pruebas de rendimiento<\/strong><\/h3>\n\n\n\n<p><strong>Un ejemplo pr\u00e1ctico fue el flujo de <\/strong><a href=\"https:\/\/dti.dgeip.edu.uy\/noticias\/380\"><strong>inscripci\u00f3n para nivel inicial y primer grado <\/strong><\/a><strong>de primaria en el sistema educativo uruguayo<\/strong>. El proceso requer\u00eda que las personas que deseaban realizar inscripciones escolares ingresaran datos personales y una direcci\u00f3n de correo electr\u00f3nico v\u00e1lida.&nbsp;<\/p>\n\n\n\n<p>Posteriormente, el sistema enviaba un c\u00f3digo que deb\u00eda ser verificado en un tiempo l\u00edmite de 10 minutos. Esto implicaba medir, por un lado, la generaci\u00f3n y env\u00edo del correo y, por otro, la rapidez con la que este mensaje llegaba a la bandeja de entrada de las personas solicitantes.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>\u00bfQu\u00e9 implica automatizar correos electr\u00f3nicos?<\/strong><\/h2>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"576\" src=\"https:\/\/es.abstracta.us\/wp-content\/uploads\/2024\/12\/women-checkin-emails-in-tablet-1024x576.jpg\" alt=\"mujer chequeando su correo en una tablet\" class=\"wp-image-18693\" srcset=\"https:\/\/es.abstracta.us\/wp-content\/uploads\/2024\/12\/women-checkin-emails-in-tablet-1024x576.jpg 1024w, https:\/\/es.abstracta.us\/wp-content\/uploads\/2024\/12\/women-checkin-emails-in-tablet-300x169.jpg 300w, https:\/\/es.abstracta.us\/wp-content\/uploads\/2024\/12\/women-checkin-emails-in-tablet-768x432.jpg 768w, https:\/\/es.abstracta.us\/wp-content\/uploads\/2024\/12\/women-checkin-emails-in-tablet-1536x864.jpg 1536w, https:\/\/es.abstracta.us\/wp-content\/uploads\/2024\/12\/women-checkin-emails-in-tablet-2048x1152.jpg 2048w, https:\/\/es.abstracta.us\/wp-content\/uploads\/2024\/12\/women-checkin-emails-in-tablet-18x10.jpg 18w, https:\/\/es.abstracta.us\/wp-content\/uploads\/2024\/12\/women-checkin-emails-in-tablet-1200x675.jpg 1200w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p>En t\u00e9rminos generales, la automatizaci\u00f3n de correos electr\u00f3nicos para pruebas de rendimiento consiste en:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Automatizar la acci\u00f3n del usuario que provoca el env\u00edo del correo.<\/li>\n\n\n\n<li>Capturar ese mensaje en una direcci\u00f3n v\u00e1lida de correo electr\u00f3nico.<\/li>\n\n\n\n<li>Extraer informaci\u00f3n relevante, como un c\u00f3digo de validaci\u00f3n.<\/li>\n\n\n\n<li>Continuar con el flujo automatizado para validar esa informaci\u00f3n.<\/li>\n<\/ul>\n\n\n\n<p>Aunque estos pasos parecen sencillos, la implementaci\u00f3n puede ser compleja, especialmente cuando se manejan grandes vol\u00famenes de usuarios simult\u00e1neos.&nbsp;<\/p>\n\n\n\n<p><strong>En el caso de nuestro proyecto de inscripci\u00f3n escolar, no se trataba de env\u00edos masivos en los cuales fuera posible enviar comunicaciones id\u00e9nticas a cientos o miles de personas, sino de un flujo en el que el sistema deb\u00eda procesar informaci\u00f3n y enviar un c\u00f3digo \u00fanico para cada solicitud individual.&nbsp;<\/strong><\/p>\n\n\n\n<p>Dado que para la puesta en producci\u00f3n se esperaba un alto volumen de solicitudes, en comparaci\u00f3n con la demanda usual que recibe el sistema, estimamos una carga objetivo de 2000 usuarios virtuales en 30 minutos. Esto implicaba que el servicio requer\u00eda generar aproximadamente 67 correos por minuto para satisfacer la demanda esperada.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>Exclusi\u00f3n del servidor de correo: \u00bfpor qu\u00e9 y cu\u00e1ndo?<\/strong><\/h2>\n\n\n\n<p><strong>En las pruebas de rendimiento, es com\u00fan excluir la evaluaci\u00f3n directa del servidor de correo electr\u00f3nico dado que la mayor\u00eda de las veces es un servicio gestionado de manera externa. Esta exclusi\u00f3n se lleva a cabo emulando las respuestas esperadas para evitar posibles impactos en la infraestructura o en servicios tercerizados.&nbsp;<\/strong><\/p>\n\n\n\n<p>En palabras simples, esto significa que cuando vamos a probar un sistema debemos tener en cuenta la infraestructura, es decir la comunicaci\u00f3n que se establece entre los distintos componentes.<\/p>\n\n\n\n<p>El servidor de correo electr\u00f3nico es el que se encarga de la generaci\u00f3n y env\u00edo de los mensajes pero no siempre est\u00e1 dentro del alcance del proyecto. Por ejemplo, si el servidor de correo es administrado externamente, puede que no sea factible coordinar con su equipo su disponibilidad durante las pruebas.<\/p>\n\n\n\n<p>No siempre las terceras partes se encuentran en condiciones de colaborar o que sus recursos sean impactados, e incluso puede suceder que las pruebas afecten a otros clientes que no tienen relaci\u00f3n ninguna con el proyecto que est\u00e1 desarrollando pruebas de rendimiento. Por este motivo, la comunicaci\u00f3n, transparencia y coordinaci\u00f3n de mutuo acuerdo son cruciales.&nbsp;<\/p>\n\n\n\n<p>Otra soluci\u00f3n que se emplea en ocasiones cuando se necesita impactar ciertos componentes que son cr\u00edticos es<strong> ejecutar las pruebas en los horarios de menor demanda<\/strong>, como por ejemplo durante la noche o madrugada.<\/p>\n\n\n\n<p><strong>Cuando no est\u00e1 dentro del alcance o por alguna raz\u00f3n no se puede incluir en las pruebas, se excluye el servidor de correo.&nbsp;<\/strong><\/p>\n\n\n\n<p>Sin embargo, en nuestro proyecto de pruebas de rendimiento del sistema para inscripci\u00f3n escolar, excluir el servidor no era viable porque necesit\u00e1bamos determinar el tiempo que le tomaba al mensaje llegar a la bandeja de entrada del usuario, con el fin de comprobar si el per\u00edodo definido inicialmente era adecuado.&nbsp;<\/p>\n\n\n\n<p>Esto implicaba impactar directamente el servidor de correo electr\u00f3nico, servicio proporcionado por <a href=\"https:\/\/aws.amazon.com\/\">AWS<\/a>, dentro de la infraestructura de prueba.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>Nuestra soluci\u00f3n para automatizar correos electr\u00f3nicos en las pruebas de rendimiento<\/strong><\/h2>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"683\" src=\"https:\/\/es.abstracta.us\/wp-content\/uploads\/2024\/12\/black-laptop-computer-1024x683.jpg\" alt=\"computador negro\" class=\"wp-image-18692\" srcset=\"https:\/\/es.abstracta.us\/wp-content\/uploads\/2024\/12\/black-laptop-computer-1024x683.jpg 1024w, https:\/\/es.abstracta.us\/wp-content\/uploads\/2024\/12\/black-laptop-computer-300x200.jpg 300w, https:\/\/es.abstracta.us\/wp-content\/uploads\/2024\/12\/black-laptop-computer-768x512.jpg 768w, https:\/\/es.abstracta.us\/wp-content\/uploads\/2024\/12\/black-laptop-computer-1536x1024.jpg 1536w, https:\/\/es.abstracta.us\/wp-content\/uploads\/2024\/12\/black-laptop-computer-2048x1365.jpg 2048w, https:\/\/es.abstracta.us\/wp-content\/uploads\/2024\/12\/black-laptop-computer-18x12.jpg 18w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p>Dado que el <a href=\"https:\/\/jmeter.apache.org\/usermanual\/component_reference.html#Mail_Reader_Sampler\">Mail Reader Sampler<\/a> de <a href=\"https:\/\/jmeter.apache.org\/\">JMeter<\/a> permite acceder a los mensajes de la bandeja de entrada de un correo electr\u00f3nico pero precisa procesar todo el contenido de ella, <strong>optamos por utilizar un <\/strong><a href=\"https:\/\/jmeter.apache.org\/usermanual\/component_reference.html#JSR223_Sampler\"><strong>JSR223 Sampler<\/strong><\/a><strong> con Groovy<\/strong> para poder acceder espec\u00edficamente al mensaje deseado. Esto nos permiti\u00f3 evitar demoras y operaciones innecesarias.&nbsp;&nbsp;<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/lh7-rt.googleusercontent.com\/docsz\/AD_4nXcWMWfpVrm_TXcbUK3shODc-dQVfo55IBVeiuw9BXh996QGGkFfcEDlOvvQdfyBIvpiDn8xSzjc9CGHSjpITX7vO1WJXXlcKbqZGvWZiIkHx6g7FX0frlHP66NzhMBRC12z_KJV?key=YxSFlbifE4yRBMOsn1Ys1fL_\" alt=\"Imagen que muestra la l\u00f3gica desarrollada. Implementaci\u00f3n generada con lenguaje Groovy en un JSR223 Sampler para capturar el c\u00f3digo.\n\"\/><\/figure>\n\n\n\n<p>Imagen que muestra la l\u00f3gica desarrollada. Implementaci\u00f3n generada con lenguaje Groovy en un JSR223 Sampler para capturar el c\u00f3digo.&nbsp;<\/p>\n\n\n\n<p>Para llegar a la soluci\u00f3n descrita, fue necesario tomar varios aspectos en consideraci\u00f3n, como la disponibilidad de cuentas, servicios de correo electr\u00f3nico valorados y&nbsp; protocolos de comunicaci\u00f3n.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>Disponibilidad de cuentas<\/strong><\/h3>\n\n\n\n<p>En condiciones ideales, se deber\u00eda tener una cuenta de correo electr\u00f3nico para cada usuario a simular. Sin embargo, dado que en nuestro caso eran 3780 las personas que deb\u00edan completar el flujo y no cont\u00e1bamos con esa cantidad de buzones disponibles, tuvimos que contemplar otras opciones que explicaremos en la secci\u00f3n de desaf\u00edos superados.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>Servicios de correo electr\u00f3nico valorados y protocolos de comunicaci\u00f3n<\/strong><\/h3>\n\n\n\n<p>Una de las opciones evaluadas fue <a href=\"https:\/\/yopmail.com\/\">Yopmail<\/a>, por medio de la que se pod\u00edan crear tantas direcciones como fuese necesario. Sin embargo, no conseguimos establecer conexi\u00f3n a trav\u00e9s de los protocolos disponibles, por lo que decidimos descartarla.<\/p>\n\n\n\n<p>Algo similar nos sucedi\u00f3 con <a href=\"https:\/\/login.yahoo.com\/\">Yahoo<\/a>, por lo cual comprendimos que era indispensable contar con un proveedor de correo electr\u00f3nico que fuese capaz de satisfacer los requisitos identificados, crear una o varias cuentas de correo electr\u00f3nico para manejar los mensajes y lograr la conexi\u00f3n a la o las cuentas a trav\u00e9s de los protocolos <a href=\"https:\/\/support.microsoft.com\/es-es\/office\/-qu%C3%A9-son-imap-y-pop-ca2c5799-49f9-4079-aefe-ddca85d5b1c9\">POP3<\/a> o <a href=\"https:\/\/support.microsoft.com\/es-es\/office\/-qu%C3%A9-son-imap-y-pop-ca2c5799-49f9-4079-aefe-ddca85d5b1c9\">IMAP<\/a>.<\/p>\n\n\n\n<p>Tomando en consideraci\u00f3n el an\u00e1lisis anterior, observamos que <a href=\"https:\/\/mail.google.com\/\">Gmail<\/a> era la alternativa m\u00e1s viable. Llevamos a cabo la conexi\u00f3n a Gmail a trav\u00e9s del protocolo IMAP y habilitamos el acceso en cada cuenta por medio de esta especificaci\u00f3n desde la configuraci\u00f3n.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>Desaf\u00edos durante la automatizaci\u00f3n<\/strong><\/h2>\n\n\n\n<p><strong>Durante el desarrollo de esta soluci\u00f3n, nos enfrentamos a diversos desaf\u00edos t\u00e9cnicos, cada uno con una soluci\u00f3n espec\u00edfica que permiti\u00f3 avanzar en el desarrollo de las pruebas.<\/strong><\/p>\n\n\n\n<p>A continuaci\u00f3n, compartimos estos desaf\u00edos y c\u00f3mo los resolvimos, con el objetivo de que puedas utilizarlo como gu\u00eda para automatizar el env\u00edo y recibo de correos electr\u00f3nicos en pruebas de rendimiento.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>Desaf\u00edo N\u00b01: Autenticaci\u00f3n segura en Gmail<\/strong><\/h3>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/lh7-rt.googleusercontent.com\/docsz\/AD_4nXfWfHa6YXiERDHyu8OBlW8r17vTBIG-Oo0-gDupA7tInMb97-Gb2Gg60h4z0nj64IArI6zHYCKYOblu_axuCpXEQzE14KDIosnd9G_MyGD9aLq9k_hpiQglIAs3wTFkRss-yZ9M?key=YxSFlbifE4yRBMOsn1Ys1fL_\" alt=\"Error observado: Authentication failed - Invalid credentials (Failure).\"\/><\/figure>\n\n\n\n<p>Vista del error que aparece cuando con la contrase\u00f1a regular de la cuenta no se permite la conexi\u00f3n<\/p>\n\n\n\n<p>El primer inconveniente con el que nos encontramos fue que la autenticaci\u00f3n desde JMeter fallaba, a pesar de que las credenciales empleadas eran correctas. Esto se deb\u00eda a que, desde hace alg\u00fan tiempo, Gmail ya no permite el acceso de las aplicaciones menos seguras.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\"><strong>Nuestra soluci\u00f3n:&nbsp;<\/strong><\/h4>\n\n\n\n<p>Decidimos habilitar la autenticaci\u00f3n de 2 factores y <a href=\"https:\/\/support.google.com\/accounts\/answer\/185833\">crear una contrase\u00f1a de aplicaci\u00f3n<\/a> que permitiera la conexi\u00f3n desde JMeter.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>Desaf\u00edo N\u00b02: Protocolos de seguridad deshabilitados<\/strong><\/h3>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"117\" src=\"https:\/\/es.abstracta.us\/wp-content\/uploads\/2024\/12\/image.jpeg\" alt=\"Error observado: No appropriate protocol (protocol is disabled or cipher suites are inappropriate).\" class=\"wp-image-18691\" srcset=\"https:\/\/es.abstracta.us\/wp-content\/uploads\/2024\/12\/image.jpeg 1024w, https:\/\/es.abstracta.us\/wp-content\/uploads\/2024\/12\/image-300x34.jpeg 300w, https:\/\/es.abstracta.us\/wp-content\/uploads\/2024\/12\/image-768x88.jpeg 768w, https:\/\/es.abstracta.us\/wp-content\/uploads\/2024\/12\/image-18x2.jpeg 18w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p>Vista del error que aparece cuando los algoritmos de seguridad de la capa de transporte est\u00e1n deshabilitados<\/p>\n\n\n\n<p>Otro inconveniente que fue necesario solucionar estuvo relacionado con los algoritmos de seguridad de la capa de transporte en el entorno de desarrollo de <a href=\"https:\/\/www.java.com\/es\/\">Java<\/a>. Estos algoritmos vienen deshabilitados por defecto y, para este caso, era preciso que no lo estuvieran.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\"><strong>Nuestra soluci\u00f3n:&nbsp;<\/strong><\/h4>\n\n\n\n<p>Ajustamos las configuraciones en las generadoras de carga donde ejecutamos las pruebas. Para lograrlo,&nbsp; editamos el archivo<em> java.security<\/em> en el \u00e1rea de seguridad de la estructura de directorios del entorno de desarrollo de Java y eliminamos elementos como TLSv1.0, TLSv1.1, DTSLv1.0, de los algoritmos inutilizados (deshabilitados por defecto) descritos en la l\u00ednea <em>jdk.tls.disabledAlgorithms<\/em>.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>Desaf\u00edo N\u00b03:&nbsp; Identificaci\u00f3n \u00fanica de usuarios virtuales<\/strong><\/h2>\n\n\n\n<p>Sin dudas, otros de los principales retos fue identificar el c\u00f3digo que correspond\u00eda a cada usuario en particular, pues a una misma cuenta de Gmail llegaban correos con el c\u00f3digo de validaci\u00f3n de distintos usuarios virtuales casi simult\u00e1neamente.&nbsp;<\/p>\n\n\n\n<h4 class=\"wp-block-heading\"><strong>Nuestra soluci\u00f3n:&nbsp;<\/strong><\/h4>\n\n\n\n<p>Para resolverlo, empleamos <em>alias<\/em> de las direcciones de correo electr\u00f3nico originales seguidas del nombre y apellido ficticios del usuario simulado.&nbsp; Por ejemplo, si el usuario de nombre n y apellido r recib\u00eda el c\u00f3digo en la direcci\u00f3n electr\u00f3nica <em>performanceabstracta@gmail.com<\/em>, este era enviado a <a href=\"mailto:performanceabstracta+nr@gmail.com\"><em>performanceabstracta+nr@gmail.com<\/em><\/a>.&nbsp;<\/p>\n\n\n\n<p>Esto nos permiti\u00f3 diferenciar entre el gran n\u00famero de mensajes enviados,&nbsp; el perteneciente a cada usuario, adem\u00e1s de simplificar la captura de la informaci\u00f3n apropiada.&nbsp;<\/p>\n\n\n\n<p>Algo que fue crucial en nuestra estrategia de identificaci\u00f3n es que algunos servicios de correo como Gmail posibilitan la inclusi\u00f3n de contenido en una direcci\u00f3n electr\u00f3nica luego de un signo de m\u00e1s (+) sin afectarla ni alterar la entrega de la comunicaci\u00f3n.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>Desaf\u00edo N\u00b04:&nbsp; Conexiones simult\u00e1neas en Gmail<\/strong><\/h2>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/lh7-rt.googleusercontent.com\/docsz\/AD_4nXeyStJhJn3nyCIMpiN3-Yfn4katMAvRQoGKFL7niPivPrgcUNNkWovxipOvF9dMvmkZMF9FWKTA1cWGAdtIVOnvklgCK9-e3O65qu9UqMmqyEGMlJa1FCKKQNR8tWLYusIb1_Z3?key=YxSFlbifE4yRBMOsn1Ys1fL_\" alt=\"Error observado:  Too many simultaneous connections (Failure).\n\"\/><\/figure>\n\n\n\n<p>Vista del error que aparece cuando existen demasiadas conexiones a una cuenta de Gmail a trav\u00e9s del protocolo IMAP<\/p>\n\n\n\n<p>Cuando llegamos al punto de manejar concurrencia de usuarios, se present\u00f3 una nueva dificultad, relacionada con la cantidad de conexiones que permite Gmail a trav\u00e9s del protocolo IMAP.&nbsp;<\/p>\n\n\n\n<h4 class=\"wp-block-heading\"><strong>Nuestra soluci\u00f3n:<\/strong><\/h4>\n\n\n\n<p>Aumentamos el n\u00famero de cuentas de correo electr\u00f3nico que inicialmente se hab\u00eda determinado en 2, primero a 5 y finalmente a 10. Nuestro objetivo era&nbsp; distribuir los accesos y conexiones, con el fin de respetar el l\u00edmite y evitar el fallo.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>Desaf\u00edo N\u00b05:&nbsp; Optimizaci\u00f3n de bandejas de entrada<\/strong><\/h2>\n\n\n\n<p>Identificamos la necesidad de que las bandejas de entrada de las cuentas se mantuvieran lo m\u00e1s ligeras posible porque, dado el volumen de notificaciones recibidas, se ve\u00eda afectada la capacidad de procesamiento y se elevaban los tiempos de respuesta.<br><\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/lh7-rt.googleusercontent.com\/docsz\/AD_4nXeNa4njSVZYAeDcJa3Xd1z3ucat5SP_oAdLdH2Vxzln5I3PfExOjLQpzO5oV8WrFoubTm5FedFTOSLcHBBnWBEGQ1gOsAA5rXWEPAljSGisNNImpue2LRJO_Bt-vIg8CxTs2c8w?key=YxSFlbifE4yRBMOsn1Ys1fL_\" alt=\"Captura de pantalla. Vista de configuraci\u00f3n en Gmail donde se muestra la creaci\u00f3n de un filtro de ejemplo.\"\/><\/figure>\n\n\n\n<p>Vista de configuraci\u00f3n en Gmail donde se muestra la creaci\u00f3n de un filtro de ejemplo<\/p>\n\n\n\n<h4 class=\"wp-block-heading\"><strong>Nuestra soluci\u00f3n:<\/strong><\/h4>\n\n\n\n<p>Creamos un filtro en la configuraci\u00f3n de cada cuenta, con la estructura que Gmail ofrece para hacerlo. Estos filtros se encargaron de eliminar autom\u00e1ticamente otras notificaciones que eran recibidas como consecuencia de la conclusi\u00f3n exitosa de otro de los flujos automatizados para las pruebas.&nbsp;<\/p>\n\n\n\n<p>Luego, ajustamos a nivel de <em>script<\/em> para que, una vez obtenido el c\u00f3digo, su mensaje correspondiente fuese eliminado.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>Desaf\u00edo N\u00b06: Medici\u00f3n precisa de tiempos de entrega<\/strong><\/h3>\n\n\n\n<p>Necesit\u00e1bamos medir el tiempo que tardaba cada mensaje en estar disponible en la bandeja de entrada del usuario una vez ejecutada la acci\u00f3n que permitir\u00eda enviar el c\u00f3digo desde el servidor.<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/lh7-rt.googleusercontent.com\/docsz\/AD_4nXcZmuhB8pXzObkiTRWcOGWpes5Bxlc_r9foBt2EPWYDUM8Vcs3xjOsW5V76HECyLLu_Wru5Fy9jI5BOeFoPm0nBHjh_XB0zvZxSSwW55OyD9FG4_mhZqtUOv4_LQivYdtClQbijcA?key=YxSFlbifE4yRBMOsn1Ys1fL_\" alt=\"C\u00f3digo generado con lenguaje Groovy en postprocesadores JSR223 Sampler para calcular el intervalo que toma la captura del c\u00f3digo.\"\/><\/figure>\n\n\n\n<p>C\u00f3digo generado con lenguaje Groovy en postprocesadores JSR223 Sampler para calcular el intervalo que toma la captura del c\u00f3digo<\/p>\n\n\n\n<h4 class=\"wp-block-heading\"><strong>Nuestra soluci\u00f3n:<\/strong><\/h4>\n\n\n\n<p>Utilizamos <a href=\"https:\/\/jmeter.apache.org\/usermanual\/component_reference.html#JSR223_PostProcessor\">postprocesadores JSR223<\/a> con lenguaje Groovy para registrar las horas en que se llam\u00f3 al servicio y fue extra\u00eddo el c\u00f3digo, respectivamente. Luego medimos la diferencia entre estas horas.<\/p>\n\n\n\n<p>Nuestro objetivo era lograr recoger el valor y tener sus percentiles para poder establecer el comportamiento que experimentar\u00edan los usuarios.&nbsp;<\/p>\n\n\n\n<p>Con este fin, utilizamos un <a href=\"https:\/\/jmeter-plugins.org\/wiki\/DummySampler\/\">Dummy Sampler<\/a>. El tiempo de respuesta asignado ser\u00eda el per\u00edodo registrado. Previamente, guardamos ese valor en una variable y adem\u00e1s, deshabilitamos la opci\u00f3n de simularlo para prevenir retardos innecesarios en el flujo.<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/lh7-rt.googleusercontent.com\/docsz\/AD_4nXdInqY60bfoCI1GpZJVOk7FBOHvlAHzaHrOrButz73J5LshWDdAZBZuuCp6xkU0tYv3Lv8pZV0EKazHfMbW89WcMOPT7ZCqHIocrEiH5oVDLgXylJJE9bUCQZB9elkqWMXrVRRv?key=YxSFlbifE4yRBMOsn1Ys1fL_\" alt=\"Captura de pantalla: Vista de configuraci\u00f3n del Dummy Sampler en JMeter.\"\/><\/figure>\n\n\n\n<p>Vista de configuraci\u00f3n del Dummy Sampler en JMeter<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>Aprendizajes sobre automatizaci\u00f3n de correos en pruebas de rendimiento<\/strong><\/h2>\n\n\n\n<p><strong>El caso compartido demuestra que abordar la automatizaci\u00f3n de correos electr\u00f3nicos en pruebas de rendimiento puede revelar retos inesperados, pero tambi\u00e9n abre puertas a soluciones creativas y eficientes.&nbsp;<\/strong><\/p>\n\n\n\n<p><strong>Si tu equipo enfrenta desaf\u00edos similares, esperamos que este ejemplo sea una fuente de inspiraci\u00f3n y una gu\u00eda pr\u00e1ctica.<\/strong><\/p>\n\n\n\n<p>En nuestro caso, los resultados demostraron que los tiempos de respuesta fueron consistentes y dentro del margen esperado. El tiempo que tardaron los mensajes en estar disponibles en las bandejas de entrada fue significativamente menor al per\u00edodo de vigencia del c\u00f3digo, lo cual valid\u00f3 la configuraci\u00f3n inicial.&nbsp;<\/p>\n\n\n\n<p>Cabe destacar que, de distintas formas, el trabajo llevado adelante durante el proyecto implic\u00f3 la realizaci\u00f3n de ajustes constantes, utilizaci\u00f3n de soluciones alternativas y adopci\u00f3n de enfoques creativos para resolver diferentes desaf\u00edos que fueron apareciendo.<\/p>\n\n\n\n<p><strong>La experiencia dej\u00f3 en claro que lo ideal hubiera sido disponer de un buz\u00f3n de correo electr\u00f3nico independiente para cada usuario virtual que habr\u00eda de participar en las pruebas, con el objetivo de evitar complejidades.&nbsp;<\/strong><\/p>\n\n\n\n<p><strong>Esta estrategia incrementa el realismo de los escenarios a simular a la vez que mitiga algunas situaciones. <\/strong>Por ejemplo, el procesamiento adicional que fue necesario desarrollar para correlacionar cada mensaje con su respectivo usuario, as\u00ed como la implementaci\u00f3n de mecanismos para filtrar y eliminar los correos ya procesados.&nbsp;<\/p>\n\n\n\n<p>Adem\u00e1s, es v\u00e1lido puntualizar que, en ocasiones, pueden existir reglas que prevengan el env\u00edo masivo de comunicaciones a una misma cuenta de correo electr\u00f3nico para evitar cualquier tipo de abuso o spam, as\u00ed como por razones de seguridad.&nbsp;<\/p>\n\n\n\n<p>En este caso, consideramos que es conveniente conciliar entre los diferentes equipos para, por ejemplo, suspender estas reglas mientras se ejecutan las pruebas y volver a habilitarlas al concluir.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>C\u00f3mo podemos ayudarte<\/strong><\/h2>\n\n\n\n<p><strong>Con m\u00e1s de 16 a\u00f1os de experiencia y presencia global, Abstracta es una empresa l\u00edder en soluciones tecnol\u00f3gicas, especializada en<\/strong><a href=\"https:\/\/es.abstracta.us\/soluciones\/\"><strong> servicios de pruebas de software<\/strong><\/a><strong> y<\/strong><a href=\"https:\/\/es.abstracta.us\/soluciones\/desarrollo-software-inteligencia-artificial\"><strong> desarrollo de software impulsado por IA<\/strong><\/a><strong>.<\/strong><\/p>\n\n\n\n<p>En Abstracta, implementamos las <a href=\"https:\/\/es.abstracta.us\/blog\/metricas-dora-en-devops-maximiza-tu-rendimiento-en-ti\/\">m\u00e9tricas DORA <\/a>adaptadas a las necesidades espec\u00edficas de tu equipo y proyectos. Nuestro enfoque abarca desde la configuraci\u00f3n de herramientas hasta la optimizaci\u00f3n continua, con foco en que cada m\u00e9trica aporte valor tangible a tu negocio. Adem\u00e1s, integramos inteligencia artificial y pr\u00e1cticas avanzadas de <a href=\"https:\/\/es.abstracta.us\/soluciones\/devops\">DevOps<\/a>, con el fin de crear un entorno \u00e1gil y eficiente.&nbsp;<\/p>\n\n\n\n<p>Creemos que construir v\u00ednculos s\u00f3lidos nos impulsa a avanzar y a mejorar el software que desarrollamos. Es por eso que hemos forjado alianzas estrat\u00e9gicas con l\u00edderes de la industria tales como<a href=\"https:\/\/www.microsoft.com\/\">&nbsp; Microsoft<\/a>,<a href=\"https:\/\/abstracta.us\/solutions\/datadog\"> Datadog<\/a>,<a href=\"https:\/\/www.tricentis.com\/\"> Tricentis<\/a> y<a href=\"https:\/\/www.perforce.com\/\"> Perforce<\/a>, e incorporamos tecnolog\u00edas de vanguardia como parte de nuestros servicios.<\/p>\n\n\n\n<p class=\"has-text-align-center has-background\" style=\"background-color:#f0f0f0\"><a href=\"https:\/\/es.abstracta.us\/contactanos\"><strong>Cont\u00e1ctanos<\/strong><\/a><strong> para conversar sobre c\u00f3mo podemos ayudarte a hacer crecer tu negocio.<\/strong><\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter is-resized\"><img decoding=\"async\" src=\"https:\/\/lh7-rt.googleusercontent.com\/docsz\/AD_4nXcuJ338Dna_6ca9OaACMo7doihb05V1zrzCr4F8JgrI3ZoowhOOz_LXu5loZv5zSZbxf5X7afgFcrcrCWCQL2g1BsDJWeUslRERMH922lYxSOSv3_XKO4UsOLYnnCcAbn-yQkkZIg?key=YxSFlbifE4yRBMOsn1Ys1fL_\" alt=\"Imagen ilustrativa de Abstracta - Cont\u00e1ctanos\" style=\"width:425px;height:auto\"\/><\/figure><\/div>\n\n\n<p class=\"has-text-align-center has-background\" style=\"background-color:#f0f0f0\"><strong>\u00a1S\u00edguenos en<\/strong><a href=\"https:\/\/www.linkedin.com\/company\/abstracta-latam\/\"><strong> LinkedIn<\/strong><\/a><strong>,<\/strong><a href=\"https:\/\/x.com\/AbstractaLatam\"><strong> X<\/strong><\/a><strong>,<\/strong><a href=\"https:\/\/web.facebook.com\/AbstractaLatam\"><strong> Facebook<\/strong><\/a><strong>,<\/strong><a href=\"https:\/\/bit.ly\/Instagram-Abstracta-Latam\"><strong> Instagram<\/strong><\/a><strong> y<\/strong><a href=\"https:\/\/bit.ly\/YT-Abstracta\"><strong> YouTube<\/strong><\/a><strong> para ser parte de nuestra comunidad!<\/strong><\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>Art\u00edculos recomendados<\/strong><\/h2>\n\n\n\n<p><a href=\"https:\/\/es.abstracta.us\/blog\/metricas-dora-en-devops-maximiza-tu-rendimiento-en-ti\/\">M\u00e9tricas DORA en DevOps: Maximiza tu rendimiento en TI<\/a><\/p>\n\n\n\n<p><a href=\"https:\/\/es.abstracta.us\/blog\/abstracta-copilot-la-revolucion-en-pruebas-de-software-con-ia\/\">Abstracta Copilot: La revoluci\u00f3n en pruebas de software con IA<\/a><\/p>\n\n\n\n<p><a href=\"https:\/\/es.abstracta.us\/blog\/auto-playwright-automatizacion-pruebas-inteligencia-artificial\/\">Auto Playwright: transformando la automatizaci\u00f3n de pruebas con IA<\/a><\/p>\n\n\n\n<p><\/p>\n","protected":false},"excerpt":{"rendered":"<p>\u00bfSab\u00edas que los correos electr\u00f3nicos pueden definir el \u00e9xito de un sistema bajo carga?&nbsp; Descubre c\u00f3mo redefinimos la automatizaci\u00f3n de correos en flujos cr\u00edticos, optimizamos los tiempos de respuesta y logramos precisi\u00f3n mientras maximizamos la eficiencia. En proyectos de pruebas de rendimiento, la automatizaci\u00f3n del&#8230;<\/p>\n","protected":false},"author":57,"featured_media":18673,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[9],"tags":[],"class_list":["post-18672","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-pruebas-performance"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v19.13 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Automatizaci\u00f3n de correos en pruebas de rendimiento | Abstracta<\/title>\n<meta name=\"description\" content=\"Descubre c\u00f3mo redefinimos la automatizaci\u00f3n de correos en flujos cr\u00edticos y optimizamos los tiempos de respuesta.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/es.abstracta.us\/blog\/automatizacion-de-correos-en-pruebas-de-rendimiento\/\" \/>\n<meta property=\"og:locale\" content=\"es_ES\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Automatizaci\u00f3n de correos en pruebas de rendimiento | Abstracta\" \/>\n<meta property=\"og:description\" content=\"Descubre c\u00f3mo redefinimos la automatizaci\u00f3n de correos en flujos cr\u00edticos y optimizamos los tiempos de respuesta.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/es.abstracta.us\/blog\/automatizacion-de-correos-en-pruebas-de-rendimiento\/\" \/>\n<meta property=\"og:site_name\" content=\"Blog de Desarrollo de Software, Testing e Inteligencia Artificial | Abstracta\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/AbstractaChile\/\" \/>\n<meta property=\"article:published_time\" content=\"2024-12-24T12:34:00+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2024-12-20T21:17:56+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/es.abstracta.us\/wp-content\/uploads\/2024\/12\/email-portada.png\" \/>\n\t<meta property=\"og:image:width\" content=\"600\" \/>\n\t<meta property=\"og:image:height\" content=\"338\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"Nayla Lago\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@AbstractaChile\" \/>\n<meta name=\"twitter:site\" content=\"@AbstractaChile\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Nayla Lago\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"14 minutos\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/es.abstracta.us\/blog\/automatizacion-de-correos-en-pruebas-de-rendimiento\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/es.abstracta.us\/blog\/automatizacion-de-correos-en-pruebas-de-rendimiento\/\"},\"author\":{\"name\":\"Nayla Lago\",\"@id\":\"https:\/\/es.abstracta.us\/blog\/#\/schema\/person\/2d758861971320c49b1eaf4b1286bfff\"},\"headline\":\"\u00bfC\u00f3mo automatizar el env\u00edo y recibo de correos electr\u00f3nicos en pruebas de rendimiento?\",\"datePublished\":\"2024-12-24T12:34:00+00:00\",\"dateModified\":\"2024-12-20T21:17:56+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/es.abstracta.us\/blog\/automatizacion-de-correos-en-pruebas-de-rendimiento\/\"},\"wordCount\":2775,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/es.abstracta.us\/blog\/#organization\"},\"articleSection\":[\"Pruebas de Performance\"],\"inLanguage\":\"es-CL\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/es.abstracta.us\/blog\/automatizacion-de-correos-en-pruebas-de-rendimiento\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/es.abstracta.us\/blog\/automatizacion-de-correos-en-pruebas-de-rendimiento\/\",\"url\":\"https:\/\/es.abstracta.us\/blog\/automatizacion-de-correos-en-pruebas-de-rendimiento\/\",\"name\":\"Automatizaci\u00f3n de correos en pruebas de rendimiento | Abstracta\",\"isPartOf\":{\"@id\":\"https:\/\/es.abstracta.us\/blog\/#website\"},\"datePublished\":\"2024-12-24T12:34:00+00:00\",\"dateModified\":\"2024-12-20T21:17:56+00:00\",\"description\":\"Descubre c\u00f3mo redefinimos la automatizaci\u00f3n de correos en flujos cr\u00edticos y optimizamos los tiempos de respuesta.\",\"breadcrumb\":{\"@id\":\"https:\/\/es.abstracta.us\/blog\/automatizacion-de-correos-en-pruebas-de-rendimiento\/#breadcrumb\"},\"inLanguage\":\"es-CL\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/es.abstracta.us\/blog\/automatizacion-de-correos-en-pruebas-de-rendimiento\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/es.abstracta.us\/blog\/automatizacion-de-correos-en-pruebas-de-rendimiento\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/es.abstracta.us\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"\u00bfC\u00f3mo automatizar el env\u00edo y recibo de correos electr\u00f3nicos en pruebas de rendimiento?\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/es.abstracta.us\/blog\/#website\",\"url\":\"https:\/\/es.abstracta.us\/blog\/\",\"name\":\"Abstracta\",\"description\":\"Recursos, buenas pr\u00e1cticas, tendencias y rese\u00f1as de herramientas de desarrollo de software, testing e Inteligencia Artificial.\",\"publisher\":{\"@id\":\"https:\/\/es.abstracta.us\/blog\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/es.abstracta.us\/blog\/?s={search_term_string}\"},\"query-input\":\"required name=search_term_string\"}],\"inLanguage\":\"es-CL\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/es.abstracta.us\/blog\/#organization\",\"name\":\"Abstracta\",\"url\":\"https:\/\/es.abstracta.us\/blog\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"es-CL\",\"@id\":\"https:\/\/es.abstracta.us\/blog\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/es.abstracta.us\/wp-content\/uploads\/2024\/03\/abstracta-logo.png\",\"contentUrl\":\"https:\/\/es.abstracta.us\/wp-content\/uploads\/2024\/03\/abstracta-logo.png\",\"width\":1217,\"height\":300,\"caption\":\"Abstracta\"},\"image\":{\"@id\":\"https:\/\/es.abstracta.us\/blog\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/www.instagram.com\/we_are_abstracta\/\",\"https:\/\/www.linkedin.com\/showcase\/abstracta-chile\/\",\"https:\/\/www.youtube.com\/channel\/UCj4dx2LZCRcgM8GzxYEKYeQ\",\"https:\/\/www.facebook.com\/AbstractaChile\/\",\"https:\/\/twitter.com\/AbstractaChile\"]},{\"@type\":\"Person\",\"@id\":\"https:\/\/es.abstracta.us\/blog\/#\/schema\/person\/2d758861971320c49b1eaf4b1286bfff\",\"name\":\"Nayla Lago\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"es-CL\",\"@id\":\"https:\/\/es.abstracta.us\/blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/15aff03674a6249a76f9d997138a7a57?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/15aff03674a6249a76f9d997138a7a57?s=96&d=mm&r=g\",\"caption\":\"Nayla Lago\"},\"sameAs\":[\"https:\/\/es.abstracta.us\/\"],\"url\":\"https:\/\/es.abstracta.us\/blog\/author\/nayla-lagoabstracta-com-uy\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Automatizaci\u00f3n de correos en pruebas de rendimiento | Abstracta","description":"Descubre c\u00f3mo redefinimos la automatizaci\u00f3n de correos en flujos cr\u00edticos y optimizamos los tiempos de respuesta.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/es.abstracta.us\/blog\/automatizacion-de-correos-en-pruebas-de-rendimiento\/","og_locale":"es_ES","og_type":"article","og_title":"Automatizaci\u00f3n de correos en pruebas de rendimiento | Abstracta","og_description":"Descubre c\u00f3mo redefinimos la automatizaci\u00f3n de correos en flujos cr\u00edticos y optimizamos los tiempos de respuesta.","og_url":"https:\/\/es.abstracta.us\/blog\/automatizacion-de-correos-en-pruebas-de-rendimiento\/","og_site_name":"Blog de Desarrollo de Software, Testing e Inteligencia Artificial | Abstracta","article_publisher":"https:\/\/www.facebook.com\/AbstractaChile\/","article_published_time":"2024-12-24T12:34:00+00:00","article_modified_time":"2024-12-20T21:17:56+00:00","og_image":[{"width":600,"height":338,"url":"https:\/\/es.abstracta.us\/wp-content\/uploads\/2024\/12\/email-portada.png","type":"image\/png"}],"author":"Nayla Lago","twitter_card":"summary_large_image","twitter_creator":"@AbstractaChile","twitter_site":"@AbstractaChile","twitter_misc":{"Written by":"Nayla Lago","Est. reading time":"14 minutos"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/es.abstracta.us\/blog\/automatizacion-de-correos-en-pruebas-de-rendimiento\/#article","isPartOf":{"@id":"https:\/\/es.abstracta.us\/blog\/automatizacion-de-correos-en-pruebas-de-rendimiento\/"},"author":{"name":"Nayla Lago","@id":"https:\/\/es.abstracta.us\/blog\/#\/schema\/person\/2d758861971320c49b1eaf4b1286bfff"},"headline":"\u00bfC\u00f3mo automatizar el env\u00edo y recibo de correos electr\u00f3nicos en pruebas de rendimiento?","datePublished":"2024-12-24T12:34:00+00:00","dateModified":"2024-12-20T21:17:56+00:00","mainEntityOfPage":{"@id":"https:\/\/es.abstracta.us\/blog\/automatizacion-de-correos-en-pruebas-de-rendimiento\/"},"wordCount":2775,"commentCount":0,"publisher":{"@id":"https:\/\/es.abstracta.us\/blog\/#organization"},"articleSection":["Pruebas de Performance"],"inLanguage":"es-CL","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/es.abstracta.us\/blog\/automatizacion-de-correos-en-pruebas-de-rendimiento\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/es.abstracta.us\/blog\/automatizacion-de-correos-en-pruebas-de-rendimiento\/","url":"https:\/\/es.abstracta.us\/blog\/automatizacion-de-correos-en-pruebas-de-rendimiento\/","name":"Automatizaci\u00f3n de correos en pruebas de rendimiento | Abstracta","isPartOf":{"@id":"https:\/\/es.abstracta.us\/blog\/#website"},"datePublished":"2024-12-24T12:34:00+00:00","dateModified":"2024-12-20T21:17:56+00:00","description":"Descubre c\u00f3mo redefinimos la automatizaci\u00f3n de correos en flujos cr\u00edticos y optimizamos los tiempos de respuesta.","breadcrumb":{"@id":"https:\/\/es.abstracta.us\/blog\/automatizacion-de-correos-en-pruebas-de-rendimiento\/#breadcrumb"},"inLanguage":"es-CL","potentialAction":[{"@type":"ReadAction","target":["https:\/\/es.abstracta.us\/blog\/automatizacion-de-correos-en-pruebas-de-rendimiento\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/es.abstracta.us\/blog\/automatizacion-de-correos-en-pruebas-de-rendimiento\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/es.abstracta.us\/blog\/"},{"@type":"ListItem","position":2,"name":"\u00bfC\u00f3mo automatizar el env\u00edo y recibo de correos electr\u00f3nicos en pruebas de rendimiento?"}]},{"@type":"WebSite","@id":"https:\/\/es.abstracta.us\/blog\/#website","url":"https:\/\/es.abstracta.us\/blog\/","name":"Abstracta","description":"Recursos, buenas pr\u00e1cticas, tendencias y rese\u00f1as de herramientas de desarrollo de software, testing e Inteligencia Artificial.","publisher":{"@id":"https:\/\/es.abstracta.us\/blog\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/es.abstracta.us\/blog\/?s={search_term_string}"},"query-input":"required name=search_term_string"}],"inLanguage":"es-CL"},{"@type":"Organization","@id":"https:\/\/es.abstracta.us\/blog\/#organization","name":"Abstracta","url":"https:\/\/es.abstracta.us\/blog\/","logo":{"@type":"ImageObject","inLanguage":"es-CL","@id":"https:\/\/es.abstracta.us\/blog\/#\/schema\/logo\/image\/","url":"https:\/\/es.abstracta.us\/wp-content\/uploads\/2024\/03\/abstracta-logo.png","contentUrl":"https:\/\/es.abstracta.us\/wp-content\/uploads\/2024\/03\/abstracta-logo.png","width":1217,"height":300,"caption":"Abstracta"},"image":{"@id":"https:\/\/es.abstracta.us\/blog\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.instagram.com\/we_are_abstracta\/","https:\/\/www.linkedin.com\/showcase\/abstracta-chile\/","https:\/\/www.youtube.com\/channel\/UCj4dx2LZCRcgM8GzxYEKYeQ","https:\/\/www.facebook.com\/AbstractaChile\/","https:\/\/twitter.com\/AbstractaChile"]},{"@type":"Person","@id":"https:\/\/es.abstracta.us\/blog\/#\/schema\/person\/2d758861971320c49b1eaf4b1286bfff","name":"Nayla Lago","image":{"@type":"ImageObject","inLanguage":"es-CL","@id":"https:\/\/es.abstracta.us\/blog\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/15aff03674a6249a76f9d997138a7a57?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/15aff03674a6249a76f9d997138a7a57?s=96&d=mm&r=g","caption":"Nayla Lago"},"sameAs":["https:\/\/es.abstracta.us\/"],"url":"https:\/\/es.abstracta.us\/blog\/author\/nayla-lagoabstracta-com-uy\/"}]}},"jetpack_featured_media_url":"https:\/\/es.abstracta.us\/wp-content\/uploads\/2024\/12\/email-portada.png","_links":{"self":[{"href":"https:\/\/es.abstracta.us\/blog\/wp-json\/wp\/v2\/posts\/18672"}],"collection":[{"href":"https:\/\/es.abstracta.us\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/es.abstracta.us\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/es.abstracta.us\/blog\/wp-json\/wp\/v2\/users\/57"}],"replies":[{"embeddable":true,"href":"https:\/\/es.abstracta.us\/blog\/wp-json\/wp\/v2\/comments?post=18672"}],"version-history":[{"count":6,"href":"https:\/\/es.abstracta.us\/blog\/wp-json\/wp\/v2\/posts\/18672\/revisions"}],"predecessor-version":[{"id":18704,"href":"https:\/\/es.abstracta.us\/blog\/wp-json\/wp\/v2\/posts\/18672\/revisions\/18704"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/es.abstracta.us\/blog\/wp-json\/wp\/v2\/media\/18673"}],"wp:attachment":[{"href":"https:\/\/es.abstracta.us\/blog\/wp-json\/wp\/v2\/media?parent=18672"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/es.abstracta.us\/blog\/wp-json\/wp\/v2\/categories?post=18672"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/es.abstracta.us\/blog\/wp-json\/wp\/v2\/tags?post=18672"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}