{"id":14342,"date":"2022-12-13T13:19:00","date_gmt":"2022-12-13T13:19:00","guid":{"rendered":"https:\/\/cl.abstracta.us\/blog\/?p=14342"},"modified":"2024-07-04T19:05:29","modified_gmt":"2024-07-04T23:05:29","slug":"diferencias-testing-funcional-no-funcional","status":"publish","type":"post","link":"https:\/\/es.abstracta.us\/blog\/diferencias-testing-funcional-no-funcional\/","title":{"rendered":"Pruebas funcionales y no funcionales: tipos, diferencias y m\u00e1s"},"content":{"rendered":"\n<p>En este art\u00edculo, nos proponemos hacer foco en las diferencias entre las pruebas funcionales y no funcionales, con el fin de lograr una comprensi\u00f3n cabal de estas tem\u00e1ticas y poder profundizar desde diferentes \u00e1ngulos y perspectivas. Esta vez, con una entrevista a Alejandro Aires.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"683\" src=\"https:\/\/cl.abstracta.us\/wp-content\/uploads\/2022\/12\/diferencias-testing-funcional-performance-software-1024x683.jpg\" alt=\"Imagen ilustrativa: Pruebas funcionales y no funcionales: tipos, diferencias y m\u00e1s\" class=\"wp-image-14348\" srcset=\"https:\/\/es.abstracta.us\/wp-content\/uploads\/2022\/12\/diferencias-testing-funcional-performance-software-1024x683.jpg 1024w, https:\/\/es.abstracta.us\/wp-content\/uploads\/2022\/12\/diferencias-testing-funcional-performance-software-300x200.jpg 300w, https:\/\/es.abstracta.us\/wp-content\/uploads\/2022\/12\/diferencias-testing-funcional-performance-software-768x512.jpg 768w, https:\/\/es.abstracta.us\/wp-content\/uploads\/2022\/12\/diferencias-testing-funcional-performance-software-1536x1024.jpg 1536w, https:\/\/es.abstracta.us\/wp-content\/uploads\/2022\/12\/diferencias-testing-funcional-performance-software-18x12.jpg 18w, https:\/\/es.abstracta.us\/wp-content\/uploads\/2022\/12\/diferencias-testing-funcional-performance-software.jpg 1920w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure><\/div>\n\n\n<p id=\"9b0b\">Antes de adentrarnos en los <strong>caracter\u00edsticas y diferencias entre las pruebas funcionales y no funcionales<\/strong>, es importante destacar que ambos tipos de testing son necesarios para la creaci\u00f3n de software de calidad. Se enfocan en aspectos diferentes, pero en definitiva son complementarios.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>\u00bfQu\u00e9 son las pruebas funcionales?<\/strong><\/h2>\n\n\n\n<p id=\"91a7\"><strong>Las pruebas funcionales se ocupan de verificar que el sistema y sus funcionalidades se ejecuten como se espera y para lo cual fueron desarrollados.<\/strong><\/p>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n<p>\u201cBaj\u00e1ndolo un poco a tierra, en un sistema web como por ejemplo una tienda online es fundamental que el usuario sea capaz de realizar las compras, ya que es lo que le da sustento al negocio. Para ello, se precisa realizar testing funcional, con foco en verificar que el flujo de compra cumpla su objetivo, su funcionalidad\u201d<\/p>\n<cite>Alejandro Aires, tester de software en Abstracta y miembro del equipo de performance<\/cite><\/blockquote>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>\u00bfQu\u00e9 son las pruebas no funcionales?<\/strong><\/h2>\n\n\n\n<p id=\"ad6d\"><strong>Las pruebas no funcionales, por su lado, se enfocan en factores transversales, relacionados con la experiencia de uso del usuario.<\/strong>&nbsp;Algunos ejemplos de ello son la usabilidad, <a href=\"https:\/\/es.abstracta.us\/blog\/ciberseguridad-pentesting-nuevas-tecnologias-vulnerabilidades\/\" target=\"_blank\" rel=\"noreferrer noopener\">seguridad<\/a>, <a href=\"https:\/\/es.abstracta.us\/blog\/testing-software-inteligencia-artificial-accesibilidad-digital\/\" target=\"_blank\" rel=\"noreferrer noopener\">accesibilidad<\/a> y <a href=\"https:\/\/es.abstracta.us\/blog\/pruebas-rendimiento-aplicaciones-web\/\" target=\"_blank\" rel=\"noreferrer noopener\">performance<\/a>.<\/p>\n\n\n\n<p>Alejandro Aires propuso un ejemplo para lograr figurar mejor la tem\u00e1tica: \u201cSupongamos que estamos probando realizar una transferencia bancaria. Las pruebas funcionales se encargan de probar que la transferencia se haga bajo los requisitos previamente establecidos (que llegue al destino correcto, con el monto correcto, etc.), mientras que el no funcional puede verificar otras cuestiones, como que el sistema soporte muchas transacciones simult\u00e1neas o que sea amigable para el usuario\u201d.<\/p>\n\n\n\n<p id=\"cbf7\">Hay otro caso interesante para analizar, que es el del airbag. Si un airbag no funciona r\u00e1pido, con buena performance, entonces no cumple su funcionalidad. Ejemplos como este son los que hacen que la separaci\u00f3n no sea tan clara en algunos casos.<\/p>\n\n\n\n<p id=\"6d7f\">Otra diferencia se encuentra en los requisitos para comenzar con las pruebas.<strong>&nbsp;<\/strong>\u201cPor lo general, las pruebas no funcionales suelen requerir que el sistema tenga cierta estabilidad, es decir que ya se haya avanzado con las pruebas y ajustes funcionales\u201d, especific\u00f3 Alejandro. \u201cA\u00fan as\u00ed, esto depende del sistema, no siempre es de ese modo\u201d, a\u00f1adi\u00f3.<\/p>\n\n\n\n<p id=\"28c5\"><strong>En definitiva, se trata de pruebas que se complementan en busca de incrementar la calidad desde una visi\u00f3n hol\u00edstica, teniendo en cuenta distintos factores de calidad.<\/strong><\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"486\" src=\"https:\/\/cl.abstracta.us\/wp-content\/uploads\/2022\/12\/alejandro-aires-software-tester-abstracta-1024x486.png\" alt=\"Alejandro Aires, Software Tester en Abstracta\" class=\"wp-image-14343\" srcset=\"https:\/\/es.abstracta.us\/wp-content\/uploads\/2022\/12\/alejandro-aires-software-tester-abstracta-1024x486.png 1024w, https:\/\/es.abstracta.us\/wp-content\/uploads\/2022\/12\/alejandro-aires-software-tester-abstracta-300x143.png 300w, https:\/\/es.abstracta.us\/wp-content\/uploads\/2022\/12\/alejandro-aires-software-tester-abstracta-768x365.png 768w, https:\/\/es.abstracta.us\/wp-content\/uploads\/2022\/12\/alejandro-aires-software-tester-abstracta-1536x730.png 1536w, https:\/\/es.abstracta.us\/wp-content\/uploads\/2022\/12\/alejandro-aires-software-tester-abstracta-18x9.png 18w, https:\/\/es.abstracta.us\/wp-content\/uploads\/2022\/12\/alejandro-aires-software-tester-abstracta.png 1600w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure><\/div>\n\n\n<h2 class=\"wp-block-heading\" id=\"8dd1\"><strong>\u00bfQu\u00e9 tipos de pruebas existen dentro de funcional?<\/strong><\/h2>\n\n\n\n<p id=\"a3b9\">Existen muchos enfoques y clasificaciones. Por ejemplo, podr\u00edamos comenzar hablando de pruebas exploratorias o planificado (o guionado,&nbsp;<em>scripted&nbsp;<\/em>en Ingl\u00e9s). Existen distintas t\u00e9cnicas de testing funcional para dise\u00f1ar casos o datos de prueba relevantes, que pueden ser utilizadas tanto en un enfoque exploratorio como en uno guionado, pero por lo general se las asocia m\u00e1s con el guionado ya que se les suele llamar t\u00e9cnicas para dise\u00f1ar casos de prueba.<\/p>\n\n\n\n<p id=\"45e8\">La particularidad del <a href=\"https:\/\/cl.abstracta.us\/blog\/testing-exploratorio-entorno-agil\/\" target=\"_blank\" rel=\"noreferrer noopener\">testing exploratorio<\/a> es que presenta una estructura externa que es sencilla de describir, en la que durante un lapso de tiempo preestablecido (de no m\u00e1s de dos horas) el tester interact\u00faa con un producto para cumplir con el objetivo de una misi\u00f3n. El objetivo de esto es poder luego presentar y reportar los resultados del proceso, los cuales ser\u00e1n utilizados por el resto de los integrantes del proyecto para tomar decisiones a conciencia.<\/p>\n\n\n\n<p id=\"0b1b\">Por otra parte, podemos clasificar seg\u00fan el nivel al que realizamos las pruebas o el momento en el ciclo de desarrollo. As\u00ed es que podemos distinguir entre pruebas unitarias, pruebas de componentes, pruebas de humo, pruebas de integraci\u00f3n, pruebas de sistemas, de regresi\u00f3n, pruebas de aceptaci\u00f3n del usuario y m\u00e1s. Me enfocar\u00e9 aqu\u00ed en algunas de ellas:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>En las&nbsp;<strong>pruebas unitarias<\/strong>, se prueban las diferentes unidades de modo individual, generalmente ac\u00e1 hablamos de unidades a nivel de c\u00f3digo. Se trata de pruebas muy espec\u00edficas, para las cuales es preciso aislar un fragmento del c\u00f3digo, el cual corresponde exclusivamente a lo que se quiere probar. En la gran mayor\u00eda de los casos, el equipo de desarrollo es el responsable de llevar adelante este tipo de pruebas. Realizar este tipo de pruebas busca detectar errores tempranamente y evitar que escalen.<\/li>\n<\/ul>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Realizamos <strong>pruebas de&nbsp;integraci\u00f3n&nbsp;<\/strong>cuando necesitamos integrar una funcionalidad al sistema y verificarla en conjunto con el resto de componentes del sistema que estamos probando, con el fin de evaluar si funcionan correctamente en conjunto. Esto puede darse a nivel de integraci\u00f3n de unidades de c\u00f3digo, a nivel de servicios (a nivel de la API de un sistema en capas) o incluso a nivel de sistema, cuando estamos integrando los cambios en distintos componentes.<\/li>\n<\/ul>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Las <strong>pruebas de&nbsp;regresi\u00f3n<\/strong>&nbsp;son un subconjunto de las pruebas planificadas que se seleccionan para ejecutar peri\u00f3dicamente, por ejemplo ante cada nueva liberaci\u00f3n del producto. Tienen el objetivo de verificar que el producto no haya sufrido regresiones.<\/li>\n<\/ul>\n\n\n\n<p id=\"81db\">En otras palabras, y en l\u00ednea con el punto previo, si queremos verificar que las integraciones que realizamos no hayan afectado otra funcionalidad previamente testeada, necesitamos realizar <a href=\"https:\/\/es.abstracta.us\/blog\/pruebas-regresion-entorno-agile\/\" target=\"_blank\" rel=\"noreferrer noopener\">pruebas de<strong>&nbsp;<\/strong>regresi\u00f3n<\/a>. Adem\u00e1s, son pruebas muy relevantes para verificar que lo que antes andaba bien ahora siga funcionando.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"8a06\"><strong>\u00bfQu\u00e9 t\u00e9cnicas se pueden utilizar para dise\u00f1ar casos de prueba en funcional?<\/strong><\/h2>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"683\" src=\"https:\/\/es.abstracta.us\/wp-content\/uploads\/2024\/06\/tecnicas-crear-casos-pruebas-funcionales-1024x683.jpg\" alt=\"Imagen ilustrativa: \u00bfQu\u00e9 t\u00e9cnicas se pueden utilizar para dise\u00f1ar casos de prueba en funcional?\" class=\"wp-image-18326\" srcset=\"https:\/\/es.abstracta.us\/wp-content\/uploads\/2024\/06\/tecnicas-crear-casos-pruebas-funcionales-1024x683.jpg 1024w, https:\/\/es.abstracta.us\/wp-content\/uploads\/2024\/06\/tecnicas-crear-casos-pruebas-funcionales-300x200.jpg 300w, https:\/\/es.abstracta.us\/wp-content\/uploads\/2024\/06\/tecnicas-crear-casos-pruebas-funcionales-768x512.jpg 768w, https:\/\/es.abstracta.us\/wp-content\/uploads\/2024\/06\/tecnicas-crear-casos-pruebas-funcionales-1536x1024.jpg 1536w, https:\/\/es.abstracta.us\/wp-content\/uploads\/2024\/06\/tecnicas-crear-casos-pruebas-funcionales-18x12.jpg 18w, https:\/\/es.abstracta.us\/wp-content\/uploads\/2024\/06\/tecnicas-crear-casos-pruebas-funcionales.jpg 1920w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure><\/div>\n\n\n<p id=\"77fe\">Hay muchas. Existen t\u00e9cnicas muy conocidas tales como particiones de equivalencia, valores l\u00edmites, combinaciones por pares o tablas de decisi\u00f3n. Tambi\u00e9n existen t\u00e9cnicas m\u00e1s avanzadas como la que implica el uso de m\u00e1quinas de estado.<\/p>\n\n\n\n<p id=\"476d\">En lugar de entrar a detallar estas t\u00e9cnicas, que para ello pueden revisar el&nbsp;<a href=\"https:\/\/federico-toledo.com\/libro-de-testing-introduccion-a-las-pruebas-de-sistemas-de-informacion\/\" target=\"_blank\" rel=\"noreferrer noopener\">libro de Federico Toledo<\/a>, quisiera distinguir c\u00f3mo se clasifican, con base en distintos criterios, viendo as\u00ed de qu\u00e9 se tratan los enfoques de caja blanca y caja negra, los casos de prueba espec\u00edficos y abstractos, y el enfoque de pruebas dirigidas por datos.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"038d\"><strong>Pruebas de caja blanca<\/strong><\/h3>\n\n\n\n<p id=\"038d\">Si para dise\u00f1ar las pruebas nos basamos en informaci\u00f3n interna del sistema que estamos probando, tal como el c\u00f3digo, esquema de base de datos, etc., entonces se dice que estamos siguiendo una <a href=\"https:\/\/es.abstracta.us\/blog\/guia-crear-estrategia-pruebas-software-adecuada\/\" target=\"_blank\" rel=\"noreferrer noopener\">estrategia de pruebas<\/a> de caja blanca. Lo m\u00e1s com\u00fan es basar el dise\u00f1o en el c\u00f3digo fuente para lograr determinados niveles de <a href=\"https:\/\/es.abstracta.us\/blog\/cobertura-pruebas-software-automatizacion\/\" target=\"_blank\" rel=\"noreferrer noopener\">cobertura<\/a>. Para entender esto, podemos decir que el m\u00e1s simple de estos niveles implicar\u00eda intentar cubrir todas las l\u00edneas de c\u00f3digo.<\/p>\n\n\n\n<p id=\"d448\">A veces, algunas personas hablan de \u201ccaja transparente\u201d en lugar de caja blanca. Esto hace referencia a que el objetivo de esta estrategia es poder mirar qu\u00e9 hay dentro de esa caja que estamos probando.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"d448\"><strong>Pruebas de caja negra<\/strong><\/h3>\n\n\n\n<p id=\"d448\">Contrariamente a caja blanca, la expresi\u00f3n \u201ccaja negra\u201d se refiere a que el sistema es una caja cuyo interior no puede ser observado desde afuera. En este modo de trabajo, nos basamos \u00fanicamente en la observaci\u00f3n de entradas y salidas del sistema. Esto puede ser a nivel de sistema, unidad, componente, API, etc.<\/p>\n\n\n\n<p id=\"6c31\">Podr\u00edamos decir que con caja blanca nos preocupamos por lo que pasa dentro de la caja y con caja negra nos preocupamos por lo que pasa fuera de ella. Muchas veces el l\u00edmite no est\u00e1 claro, o tal vez estamos siguiendo un enfoque de caja negra, pero como sabemos algo de lo que sucede dentro entonces aprovechamos esa informaci\u00f3n. En este sentido, hay quienes hablan tambi\u00e9n de \u201ccaja gris\u201d, que es justamente cuando se combinan ambos enfoques.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"449e\"><strong>Casos de prueba abstractos y espec\u00edficos<\/strong><\/h3>\n\n\n\n<p id=\"449e\">Se trata de una clasificaci\u00f3n que refiere a la especificidad con la que est\u00e1 detallado el caso de prueba.<\/p>\n\n\n\n<p id=\"0e4b\">Un caso de prueba abstracto se caracteriza por no tener determinados los valores para las entradas y salidas esperadas, por lo cual se utilizan variables y se describen con operadores l\u00f3gicos ciertas propiedades que deben cumplir.<\/p>\n\n\n\n<p id=\"59c2\">Un caso de prueba espec\u00edfico es una instancia de un caso de prueba abstracto, en la que se determinan valores espec\u00edficos para cada variable de entrada y para cada salida esperada. No es lo mismo especificar un caso de prueba donde se agrega un producto de valor mayor a 1000 pesos al carrito de compra a indicar espec\u00edficamente que se debe agregar el producto de identificador XYZ, que ya se sabe que tiene un costo establecido mayor a 1000 pesos.<\/p>\n\n\n\n<p id=\"b689\">Cada caso de prueba abstracto puede ser instanciado con distintos valores (siguiendo el ejemplo, con cualquier producto que vale m\u00e1s de 1000 pesos), por lo que podr\u00e1 haber distintos casos de prueba espec\u00edficos al momento de ser ejecutado o dise\u00f1ado a bajo nivel. Se asigna un valor concreto a cada variable, tanto de entrada como de salida, de acuerdo a las propiedades y restricciones l\u00f3gicas que tiene determinadas.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"bd29\"><strong>Pruebas dirigidas por datos (<em>Data-Driven Testing<\/em>)<\/strong><\/h3>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"523\" src=\"https:\/\/es.abstracta.us\/wp-content\/uploads\/2024\/06\/pruebas-caja-negra-blanca-1024x523.jpg\" alt=\"Imagen ilustrativa: Pruebas de software de caja negra, de caja blanca y dirigidas por datos (Data-Driven Testing)\" class=\"wp-image-18329\" srcset=\"https:\/\/es.abstracta.us\/wp-content\/uploads\/2024\/06\/pruebas-caja-negra-blanca-1024x523.jpg 1024w, https:\/\/es.abstracta.us\/wp-content\/uploads\/2024\/06\/pruebas-caja-negra-blanca-300x153.jpg 300w, https:\/\/es.abstracta.us\/wp-content\/uploads\/2024\/06\/pruebas-caja-negra-blanca-768x392.jpg 768w, https:\/\/es.abstracta.us\/wp-content\/uploads\/2024\/06\/pruebas-caja-negra-blanca-1536x785.jpg 1536w, https:\/\/es.abstracta.us\/wp-content\/uploads\/2024\/06\/pruebas-caja-negra-blanca-18x9.jpg 18w, https:\/\/es.abstracta.us\/wp-content\/uploads\/2024\/06\/pruebas-caja-negra-blanca.jpg 1920w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure><\/div>\n\n\n<p id=\"bd29\"><strong>El <em>Data-Driven Testing<\/em> es una t\u00e9cnica para construir casos de prueba, en la cual b\u00e1sicamente se separan los datos de entrada y salida del flujo que se ejecuta en la aplicaci\u00f3n<\/strong>. Dicho de otra manera, se parametrizan los casos de prueba. Para ello, se representa el flujo, una serie de pasos para ejecutar el caso de prueba, y se almacenan los datos de entrada y salida esperados en una fuente t\u00edpicamente externa (en un archivo csv, planilla, base de datos).<\/p>\n\n\n\n<p id=\"7903\">Esto permite agregar nuevos casos de prueba f\u00e1cilmente, mediante el ingreso de nuevos datos de entrada y de salida esperados que sirvan para ejecutar el mismo flujo.<\/p>\n\n\n\n<p id=\"d36a\">El flujo de la aplicaci\u00f3n se define con casos de prueba abstractos, que al momento de ser ejecutados con un juego espec\u00edfico de datos se convierten de alguna manera en casos de prueba espec\u00edficos.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"1b30\"><strong>\u00bfQu\u00e9 tipos de testing existen dentro del no funcional?<\/strong><\/h2>\n\n\n\n<p id=\"45f1\">Cada tipo de pruebas se asocia a un <a href=\"https:\/\/cl.abstracta.us\/blog\/software-testing-wheel\/\" target=\"_blank\" rel=\"noreferrer noopener\">factor de calidad<\/a>. Algunos de los tipos de pruebas m\u00e1s destacados son:<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"adb8\"><strong>Pruebas de usabilidad<\/strong><\/h3>\n\n\n\n<p id=\"adb8\">Las <a href=\"https:\/\/cl.abstracta.us\/blog\/pruebas-usabilidad-desde-mirada-testing\/\" target=\"_blank\" rel=\"noreferrer noopener\">pruebas de usabilidad<\/a> eval\u00faan el grado en que el sistema puede ser utilizado por usuarios espec\u00edficos con efectividad, eficiencia y satisfacci\u00f3n en un contexto de uso espec\u00edfico. Existen varias t\u00e9cnicas para analizar la usabilidad, las cuales buscan detectar mejoras posibles en caracter\u00edsticas asociadas a la experiencia de usuario, como por ejemplo que un sistema sea m\u00e1s intuitivo y f\u00e1cil de utilizar, entre otras cosas.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"e12c\"><strong>Pruebas de accesibilidad<\/strong><\/h3>\n\n\n\n<p id=\"e12c\">Es parte de las pruebas de usabilidad, pero su foco es que todas las personas puedan utilizar el sistema, incluso a quienes tienen alg\u00fan tipo de discapacidad, contextual, temporal o permanente.<\/p>\n\n\n\n<p id=\"addc\">Las <a href=\"https:\/\/cl.abstracta.us\/blog\/category\/pruebas-accesibilidad\/\" target=\"_blank\" rel=\"noreferrer noopener\">pruebas de accesibilidad<\/a> ayudan a detectar los errores y barreras que pueden existir en el software, pero que no son f\u00e1cilmente detectables si no se realizan pruebas espec\u00edficas para encontrarlas. Las personas expertas en accesibilidad hablan de la importancia de la incorporaci\u00f3n de la accesibilidad en todo el ciclo de vida del desarrollo de software.<\/p>\n\n\n\n<p>Te puede interesar: <a href=\"https:\/\/es.abstracta.us\/blog\/testing-software-inteligencia-artificial-accesibilidad-digital\/\" target=\"_blank\" rel=\"noreferrer noopener\">Testing de software e Inteligencia Artificial, claves para el futuro de la accesibilidad digital<\/a>.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"1eb6\"><strong>Pruebas de seguridad<\/strong><\/h3>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"683\" src=\"https:\/\/cl.abstracta.us\/wp-content\/uploads\/2022\/12\/tipos-pruebas-sotware-no-funcionales-1024x683.jpg\" alt=\"Imagen ilustrativa: pruebas de seguridad del software\" class=\"wp-image-14350\" srcset=\"https:\/\/es.abstracta.us\/wp-content\/uploads\/2022\/12\/tipos-pruebas-sotware-no-funcionales-1024x683.jpg 1024w, https:\/\/es.abstracta.us\/wp-content\/uploads\/2022\/12\/tipos-pruebas-sotware-no-funcionales-300x200.jpg 300w, https:\/\/es.abstracta.us\/wp-content\/uploads\/2022\/12\/tipos-pruebas-sotware-no-funcionales-768x512.jpg 768w, https:\/\/es.abstracta.us\/wp-content\/uploads\/2022\/12\/tipos-pruebas-sotware-no-funcionales-1536x1025.jpg 1536w, https:\/\/es.abstracta.us\/wp-content\/uploads\/2022\/12\/tipos-pruebas-sotware-no-funcionales-18x12.jpg 18w, https:\/\/es.abstracta.us\/wp-content\/uploads\/2022\/12\/tipos-pruebas-sotware-no-funcionales.jpg 1920w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure><\/div>\n\n\n<p id=\"1eb6\">El objetivo de las <a href=\"https:\/\/cl.abstracta.us\/blog\/ciberseguridad-pentesting-nuevas-tecnologias-vulnerabilidades\/\" target=\"_blank\" rel=\"noreferrer noopener\">pruebas de seguridad<\/a> es buscar posibles vulnerabilidades o amenazas que puedan afectar la protecci\u00f3n, disponibilidad e integridad de los datos o la funcionalidad del sistema. <strong>El testing de seguridad es importante como mecanismo preventivo, en b\u00fasqueda de posibles vulnerabilidades<\/strong>.<\/p>\n\n\n\n<p id=\"b45f\">De todos modos, no es posible prevenir todo y es crucial contar con protocolos espec\u00edficos para ser utilizados ante eventuales ataques inform\u00e1ticos.<\/p>\n\n\n\n<p id=\"0a77\">Seg\u00fan el&nbsp;<a href=\"https:\/\/www3.weforum.org\/docs\/WEF_The_Global_Risks_Report_2022.pdf\" target=\"_blank\" rel=\"noreferrer noopener nofollow\">Informe de Riesgos Globales 2022<\/a>&nbsp;del Foro Econ\u00f3mico Mundial, el malware aument\u00f3 un 358% en 2020, mientras que el ransomware se increment\u00f3 en un 435%.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"39f3\"><strong>Pruebas de performance<\/strong><\/h3>\n\n\n\n<p id=\"39f3\">En las pruebas de performance se analizan tanto los tiempos de respuesta como el consumo de recursos. Para ello, se simulan m\u00faltiples usuarios concurrentes y se analiza el rendimiento de la aplicaci\u00f3n bajo prueba. Cuanto m\u00e1s expuesta, m\u00e1s usuarios y variables haya en torno a una aplicaci\u00f3n, m\u00e1s importante se hace realizar <a href=\"https:\/\/es.abstracta.us\/blog\/testing-performance-llave-maestra-mejorar-calidad-software\/\">pruebas de performance<\/a>.<\/p>\n\n\n\n<p id=\"b2fb\">Para analizar estos comportamientos, se suele poner al sistema bajo una gran cantidad de usuarios en concurrencia mientras se mide el uso de recursos en b\u00fasqueda de cuellos de botella. Dentro de esta categor\u00eda, podemos encontrar pruebas de carga, volumen y estr\u00e9s entre otras.<\/p>\n\n\n\n<p><strong>Para concluir, nuestro COO Federico Toledo sostuvo que lo ideal es siempre dise\u00f1ar una <a href=\"https:\/\/es.abstracta.us\/blog\/shift-left-right-testing-software-enfoques\/\" target=\"_blank\" rel=\"noreferrer noopener\">estrategia<\/a> de pruebas en la que se combinen ambos tipos de testing desde fases tempranas (<em><a href=\"https:\/\/es.abstracta.us\/blog\/automatizacion-shift-left-testing\/\" target=\"_blank\" rel=\"noreferrer noopener\">Shift Left Testing<\/a><\/em>), trabajarlas en todo el proceso (testing continuo), monitorear en producci\u00f3n, y usar esa informaci\u00f3n para mejorar la calidad del software y la calidad de nuestras pruebas (<em>Shift Right<\/em>).<\/strong><\/p>\n\n\n\n<hr class=\"wp-block-separator has-text-color has-alpha-channel-opacity has-background is-style-wide\" style=\"background-color:#f1f1f1;color:#f1f1f1\"\/>\n\n\n\n<p>\u00bfC\u00f3mo ha sido tu experiencia realizando pruebas funcionales y no funcionales? \u00a1Cu\u00e9ntanos en los comentarios!<\/p>\n\n\n\n\n\n<p>\u00a1S\u00edguenos en&nbsp;<a href=\"https:\/\/bit.ly\/LinkedIn-Abstracta-Chile\" target=\"_blank\" rel=\"noreferrer noopener\">LinkedIn<\/a>,&nbsp;<a href=\"https:\/\/bit.ly\/TW-Abstracta-Chile\" target=\"_blank\" rel=\"noreferrer noopener\">Twitter<\/a>,&nbsp;<a href=\"https:\/\/bit.ly\/FB-Abstracta-Chile\" target=\"_blank\" rel=\"noreferrer noopener\">Facebook<\/a>,&nbsp;<a href=\"https:\/\/bit.ly\/Instagram-Abstracta-Latam\" target=\"_blank\" rel=\"noreferrer noopener\">Instagram<\/a>&nbsp;y&nbsp;<a href=\"https:\/\/bit.ly\/YT-Abstracta\" target=\"_blank\" rel=\"noreferrer noopener\">Youtube<\/a>&nbsp;para ser parte de nuestra comunidad y afianzar tus conocimientos en testing y calidad de software!<\/p>\n\n\n\n<hr class=\"wp-block-separator has-text-color has-alpha-channel-opacity has-background is-style-wide\" style=\"background-color:#f1f1f1;color:#f1f1f1\"\/>\n\n\n\n<h3 class=\"wp-block-heading\">Contenidos relacionados<\/h3>\n\n\n\n<p><a href=\"https:\/\/cl.abstracta.us\/blog\/testing-manual-vs-testing-automatizado\/\" target=\"_blank\" rel=\"noreferrer noopener\">Testing manual vs. automatizado: \u00bfcu\u00e1l elegir para tu proyecto?<\/a><\/p>\n\n\n\n<p><a href=\"https:\/\/cl.abstracta.us\/blog\/7-principios-esenciales-testing-software\/\" target=\"_blank\" rel=\"noreferrer noopener\">Los 7 principios esenciales del testing de software<\/a><\/p>\n\n\n\n<figure class=\"wp-block-embed aligncenter is-type-video is-provider-youtube wp-block-embed-youtube wp-embed-aspect-16-9 wp-has-aspect-ratio\"><div class=\"wp-block-embed__wrapper\">\n<iframe loading=\"lazy\" title=\"Pruebas no-funcionales para testers - Federico Toledo\" width=\"500\" height=\"281\" src=\"https:\/\/www.youtube.com\/embed\/2nJ_keNKS_Q?feature=oembed\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" allowfullscreen><\/iframe>\n<\/div><\/figure>\n","protected":false},"excerpt":{"rendered":"<p>Las pruebas funcionales y no funcionales son necesarias para la creaci\u00f3n de software de calidad, desde una visi\u00f3n hol\u00edstica, considerando distintos factores. Conoce en este art\u00edculo sus diferencias, tipos, enfoques y t\u00e9cnicas.<\/p>\n","protected":false},"author":35,"featured_media":14393,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[4],"tags":[134,199,120,200,89,61,2,198,108,63,164],"class_list":["post-14342","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-pruebas-software","tag-pruebas-accesibilidad","tag-pruebas-de-integracion","tag-pruebas-performance","tag-pruebas-de-regresion","tag-pruebas-de-seguridad","tag-pruebas-de-usabilidad","tag-pruebas-funcionales","tag-pruebas-no-funcionales","tag-pruebas-unitarias","tag-shift-left-testing","tag-shift-right-testing"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v19.13 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Pruebas funcionales y no funcionales: tipos, diferencias y m\u00e1s - Abstracta<\/title>\n<meta name=\"description\" content=\"Las pruebas funcionales y no funcionales son necesarias para la creaci\u00f3n de software de calidad, desde una visi\u00f3n hol\u00edstica, considerando distintos factores. Conoce en este art\u00edculo sus diferencias, tipos, enfoques y t\u00e9cnicas.\" \/>\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\/diferencias-testing-funcional-no-funcional\/\" \/>\n<meta property=\"og:locale\" content=\"es_ES\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Pruebas funcionales y no funcionales: tipos, diferencias y m\u00e1s - Abstracta\" \/>\n<meta property=\"og:description\" content=\"Las pruebas funcionales y no funcionales son necesarias para la creaci\u00f3n de software de calidad, desde una visi\u00f3n hol\u00edstica, considerando distintos factores. Conoce en este art\u00edculo sus diferencias, tipos, enfoques y t\u00e9cnicas.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/es.abstracta.us\/blog\/diferencias-testing-funcional-no-funcional\/\" \/>\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=\"2022-12-13T13:19:00+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2024-07-04T23:05:29+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/es.abstracta.us\/wp-content\/uploads\/2022\/12\/diferencias-enfoques-tecnicas-testing-funcional-no-funcional.png\" \/>\n\t<meta property=\"og:image:width\" content=\"1920\" \/>\n\t<meta property=\"og:image:height\" content=\"1080\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"Natalie Rodgers, Marketing Team Lead\" \/>\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=\"Natalie Rodgers, Marketing Team Lead\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"11 minutos\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/es.abstracta.us\/blog\/diferencias-testing-funcional-no-funcional\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/es.abstracta.us\/blog\/diferencias-testing-funcional-no-funcional\/\"},\"author\":{\"name\":\"Natalie Rodgers, Marketing Team Lead\",\"@id\":\"https:\/\/es.abstracta.us\/blog\/#\/schema\/person\/b7978e8cd73ff3ed2dcc7e127499b4cb\"},\"headline\":\"Pruebas funcionales y no funcionales: tipos, diferencias y m\u00e1s\",\"datePublished\":\"2022-12-13T13:19:00+00:00\",\"dateModified\":\"2024-07-04T23:05:29+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/es.abstracta.us\/blog\/diferencias-testing-funcional-no-funcional\/\"},\"wordCount\":2251,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/es.abstracta.us\/blog\/#organization\"},\"keywords\":[\"Pruebas de Accesibilidad\",\"Pruebas de Integraci\u00f3n\",\"Pruebas de Performance\",\"Pruebas de Regresi\u00f3n\",\"Pruebas de Seguridad\",\"Pruebas de Usabilidad\",\"Pruebas Funcionales\",\"Pruebas no Funcionales\",\"Pruebas Unitarias\",\"Shift Left Testing\",\"Shift Right Testing\"],\"articleSection\":[\"Pruebas de Software\"],\"inLanguage\":\"es-CL\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/es.abstracta.us\/blog\/diferencias-testing-funcional-no-funcional\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/es.abstracta.us\/blog\/diferencias-testing-funcional-no-funcional\/\",\"url\":\"https:\/\/es.abstracta.us\/blog\/diferencias-testing-funcional-no-funcional\/\",\"name\":\"Pruebas funcionales y no funcionales: tipos, diferencias y m\u00e1s - Abstracta\",\"isPartOf\":{\"@id\":\"https:\/\/es.abstracta.us\/blog\/#website\"},\"datePublished\":\"2022-12-13T13:19:00+00:00\",\"dateModified\":\"2024-07-04T23:05:29+00:00\",\"description\":\"Las pruebas funcionales y no funcionales son necesarias para la creaci\u00f3n de software de calidad, desde una visi\u00f3n hol\u00edstica, considerando distintos factores. Conoce en este art\u00edculo sus diferencias, tipos, enfoques y t\u00e9cnicas.\",\"breadcrumb\":{\"@id\":\"https:\/\/es.abstracta.us\/blog\/diferencias-testing-funcional-no-funcional\/#breadcrumb\"},\"inLanguage\":\"es-CL\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/es.abstracta.us\/blog\/diferencias-testing-funcional-no-funcional\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/es.abstracta.us\/blog\/diferencias-testing-funcional-no-funcional\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/es.abstracta.us\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Pruebas funcionales y no funcionales: tipos, diferencias y m\u00e1s\"}]},{\"@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\/b7978e8cd73ff3ed2dcc7e127499b4cb\",\"name\":\"Natalie Rodgers, Marketing Team Lead\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"es-CL\",\"@id\":\"https:\/\/es.abstracta.us\/blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/9a23da822367e20ddb98b59d5273eb3e?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/9a23da822367e20ddb98b59d5273eb3e?s=96&d=mm&r=g\",\"caption\":\"Natalie Rodgers, Marketing Team Lead\"},\"sameAs\":[\"https:\/\/es.abstracta.us\/\"],\"url\":\"https:\/\/es.abstracta.us\/blog\/author\/natalie-rodgers\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Pruebas funcionales y no funcionales: tipos, diferencias y m\u00e1s - Abstracta","description":"Las pruebas funcionales y no funcionales son necesarias para la creaci\u00f3n de software de calidad, desde una visi\u00f3n hol\u00edstica, considerando distintos factores. Conoce en este art\u00edculo sus diferencias, tipos, enfoques y t\u00e9cnicas.","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\/diferencias-testing-funcional-no-funcional\/","og_locale":"es_ES","og_type":"article","og_title":"Pruebas funcionales y no funcionales: tipos, diferencias y m\u00e1s - Abstracta","og_description":"Las pruebas funcionales y no funcionales son necesarias para la creaci\u00f3n de software de calidad, desde una visi\u00f3n hol\u00edstica, considerando distintos factores. Conoce en este art\u00edculo sus diferencias, tipos, enfoques y t\u00e9cnicas.","og_url":"https:\/\/es.abstracta.us\/blog\/diferencias-testing-funcional-no-funcional\/","og_site_name":"Blog de Desarrollo de Software, Testing e Inteligencia Artificial | Abstracta","article_publisher":"https:\/\/www.facebook.com\/AbstractaChile\/","article_published_time":"2022-12-13T13:19:00+00:00","article_modified_time":"2024-07-04T23:05:29+00:00","og_image":[{"width":1920,"height":1080,"url":"https:\/\/es.abstracta.us\/wp-content\/uploads\/2022\/12\/diferencias-enfoques-tecnicas-testing-funcional-no-funcional.png","type":"image\/png"}],"author":"Natalie Rodgers, Marketing Team Lead","twitter_card":"summary_large_image","twitter_creator":"@AbstractaChile","twitter_site":"@AbstractaChile","twitter_misc":{"Written by":"Natalie Rodgers, Marketing Team Lead","Est. reading time":"11 minutos"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/es.abstracta.us\/blog\/diferencias-testing-funcional-no-funcional\/#article","isPartOf":{"@id":"https:\/\/es.abstracta.us\/blog\/diferencias-testing-funcional-no-funcional\/"},"author":{"name":"Natalie Rodgers, Marketing Team Lead","@id":"https:\/\/es.abstracta.us\/blog\/#\/schema\/person\/b7978e8cd73ff3ed2dcc7e127499b4cb"},"headline":"Pruebas funcionales y no funcionales: tipos, diferencias y m\u00e1s","datePublished":"2022-12-13T13:19:00+00:00","dateModified":"2024-07-04T23:05:29+00:00","mainEntityOfPage":{"@id":"https:\/\/es.abstracta.us\/blog\/diferencias-testing-funcional-no-funcional\/"},"wordCount":2251,"commentCount":0,"publisher":{"@id":"https:\/\/es.abstracta.us\/blog\/#organization"},"keywords":["Pruebas de Accesibilidad","Pruebas de Integraci\u00f3n","Pruebas de Performance","Pruebas de Regresi\u00f3n","Pruebas de Seguridad","Pruebas de Usabilidad","Pruebas Funcionales","Pruebas no Funcionales","Pruebas Unitarias","Shift Left Testing","Shift Right Testing"],"articleSection":["Pruebas de Software"],"inLanguage":"es-CL","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/es.abstracta.us\/blog\/diferencias-testing-funcional-no-funcional\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/es.abstracta.us\/blog\/diferencias-testing-funcional-no-funcional\/","url":"https:\/\/es.abstracta.us\/blog\/diferencias-testing-funcional-no-funcional\/","name":"Pruebas funcionales y no funcionales: tipos, diferencias y m\u00e1s - Abstracta","isPartOf":{"@id":"https:\/\/es.abstracta.us\/blog\/#website"},"datePublished":"2022-12-13T13:19:00+00:00","dateModified":"2024-07-04T23:05:29+00:00","description":"Las pruebas funcionales y no funcionales son necesarias para la creaci\u00f3n de software de calidad, desde una visi\u00f3n hol\u00edstica, considerando distintos factores. Conoce en este art\u00edculo sus diferencias, tipos, enfoques y t\u00e9cnicas.","breadcrumb":{"@id":"https:\/\/es.abstracta.us\/blog\/diferencias-testing-funcional-no-funcional\/#breadcrumb"},"inLanguage":"es-CL","potentialAction":[{"@type":"ReadAction","target":["https:\/\/es.abstracta.us\/blog\/diferencias-testing-funcional-no-funcional\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/es.abstracta.us\/blog\/diferencias-testing-funcional-no-funcional\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/es.abstracta.us\/blog\/"},{"@type":"ListItem","position":2,"name":"Pruebas funcionales y no funcionales: tipos, diferencias y m\u00e1s"}]},{"@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\/b7978e8cd73ff3ed2dcc7e127499b4cb","name":"Natalie Rodgers, Marketing Team Lead","image":{"@type":"ImageObject","inLanguage":"es-CL","@id":"https:\/\/es.abstracta.us\/blog\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/9a23da822367e20ddb98b59d5273eb3e?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/9a23da822367e20ddb98b59d5273eb3e?s=96&d=mm&r=g","caption":"Natalie Rodgers, Marketing Team Lead"},"sameAs":["https:\/\/es.abstracta.us\/"],"url":"https:\/\/es.abstracta.us\/blog\/author\/natalie-rodgers\/"}]}},"jetpack_featured_media_url":"https:\/\/es.abstracta.us\/wp-content\/uploads\/2022\/12\/diferencias-enfoques-tecnicas-testing-funcional-no-funcional.png","_links":{"self":[{"href":"https:\/\/es.abstracta.us\/blog\/wp-json\/wp\/v2\/posts\/14342"}],"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\/35"}],"replies":[{"embeddable":true,"href":"https:\/\/es.abstracta.us\/blog\/wp-json\/wp\/v2\/comments?post=14342"}],"version-history":[{"count":19,"href":"https:\/\/es.abstracta.us\/blog\/wp-json\/wp\/v2\/posts\/14342\/revisions"}],"predecessor-version":[{"id":18423,"href":"https:\/\/es.abstracta.us\/blog\/wp-json\/wp\/v2\/posts\/14342\/revisions\/18423"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/es.abstracta.us\/blog\/wp-json\/wp\/v2\/media\/14393"}],"wp:attachment":[{"href":"https:\/\/es.abstracta.us\/blog\/wp-json\/wp\/v2\/media?parent=14342"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/es.abstracta.us\/blog\/wp-json\/wp\/v2\/categories?post=14342"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/es.abstracta.us\/blog\/wp-json\/wp\/v2\/tags?post=14342"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}