{"id":122,"date":"2011-02-25T15:53:07","date_gmt":"2011-02-25T17:53:07","guid":{"rendered":"http:\/\/blog.ces.com.uy\/?p=122"},"modified":"2020-09-16T08:59:47","modified_gmt":"2020-09-16T11:59:47","slug":"122","status":"publish","type":"post","link":"https:\/\/wordpress-test.ces.com.uy\/?p=122","title":{"rendered":"Testing funcional en sistemas financieros (caso de aplicaciones que se comunican mediante el protocolo ISO 8583)"},"content":{"rendered":"<p>Usualmente cuando hablamos de pruebas funcionales nos imaginamos una interfaz gr\u00e1fica en la cual se ejecutan casos de prueba, en esta oportunidad voy a contar sobre un\u00a0proyecto de pruebas funcionales\u00a0del\u00a0sistema financiero, complementando de esta manera <a title=\"Pruebas de Performance en protocolos menos usuales\" href=\"http:\/\/blog.ces.com.uy\/?p=28\">un\u00a0post anterior de pruebas de performance<\/a>, en el cual la interfaz del sistema es un servidor \u201cescuchando\u201d en una ip y un puerto.<\/p>\n<p>La aplicaci\u00f3n se comunica mediante el protocolo ISO 8583 (utilizado por los ATM y POS). Este est\u00e1ndar es adaptado por cada organizaci\u00f3n a sus necesidades. El sistema que probamos utiliza mensajes ISO 8583 para solicitar\/responder autorizaciones a transacciones bancarias.<\/p>\n<p>La entrada y la salida a la funcionalidad a probar era un archivo cuyo formato se define en el est\u00e1ndar para transacciones financieras ISO 8583. Cada mensaje ISO8583 consta de una lista de campos, cada campo\u00a0 tiene un identificador y un valor asociado, tanto para el mensaje ISO\u00a0 enviado como para el mensaje ISO recibido (respuesta),\u00a0 cada organizaci\u00f3n define qu\u00e9 campos usar\u00e1 y define qu\u00e9 valores pueden tomar.<\/p>\n<p><img decoding=\"async\" class=\"aligncenter size-medium wp-image-132\" title=\"diagrama mensajes\" src=\"https:\/\/wordpress-test.ces.com.uy\/web\/wp-content\/uploads\/2011\/02\/diagrama-mensajes1.jpg\" alt=\"\" width=\"300\" height=\"241\" \/><\/p>\n<p>C\u00f3mo en cualquier proyecto de pruebas fue necesario comprender el protocolo, identificar los campos relevantes, los campos adaptados por la organizaci\u00f3n y para cada tipo de transacci\u00f3n, qu\u00e9 conjunto de campos est\u00e1n involucrados y qu\u00e9 valores pueden tomar.<\/p>\n<p>El problema al cual nos enfrentamos tiene un gran n\u00famero de variables de entrada y de salida y estas variables a su vez tienen un gran n\u00famero de valores posibles. Cada campo del mensaje es considerado una variable, por ejemplo el campo del mensaje recibido que contiene el c\u00f3digo de respuesta (si la autorizaci\u00f3n fue aprobada o rechazada) tiene 66 posibles valores.<\/p>\n<p>Se dise\u00f1aron casos de prueba utilizando las t\u00e9cnicas valores limites, clases de equivalencia y combinaci\u00f3n por pares y luego se crearon manualmente algunos casos relevantes para el problema planteado. Luego de tener el dise\u00f1o de casos todav\u00eda ten\u00edamos que generar\u00a0 los mensajes ISO 8583, enviarlos y recibirlos.<\/p>\n<p>Para enviar y recibir estos mensajes se deb\u00eda invocar una funcionalidad en un servidor conocido que escucha en un puerto conocido. Debido a que no se cuenta con interfaz gr\u00e1fica nos vimos obligados a implementar una herramienta (cliente) para lograr la comunicaci\u00f3n con el servidor mencionado.<\/p>\n<p>La herramienta fue llamada \u201cISO Test tool\u201d. Brinda una interfaz amigable para establecer\u00a0 comunicaci\u00f3n con un servidor y enviar\/recibir mensajes mediante el protocolo ISO8583, la herramienta crea y mantiene un log hist\u00f3rico de transacciones enviadas y recibidas para su posterior an\u00e1lisis.<\/p>\n<p>De esta forma utilizando \u201cISO Test tool\u201d cada caso de prueba se transform\u00f3 manualmente en un mensaje ISO 8583 de salida y cada mensaje ISO de entrada (respuesta) se interpret\u00f3 como el resultado obtenido, que luego se compar\u00f3 con el resultado esperado para evaluar el caso de prueba y determinar si el mensaje de respuesta es el esperado. Cabe destacar que si bien este proceso de generaci\u00f3n de mensajes ISO de salida y revisi\u00f3n de mensajes ISO de entrada se hizo manualmente, la interfaz brindada por \u201cISO Test tool\u201d facilit\u00f3 mucho el trabajo.<\/p>\n<p>Este proyecto que en sus inicios parec\u00eda de una complejidad extrema culmin\u00f3 en forma exitosa, logrando testear \u00a0funcionalidades que se exponen mediante el protocolo ISO8583, gracias a \u201cISO Test tool\u201d y a un adecuado dise\u00f1o de casos de prueba.<br \/>\n<strong><a href=\"mailto:mreina@wordpress-test.ces.com.uy\"><br \/>\n<\/a><\/strong><\/p>\n<p style=\"text-align: right;\"><strong><a href=\"mailto:mpresto@wordpress-test.ces.com.uy\">Mar\u00eda Elisa Presto<\/a><\/strong><\/p>\n<p>&nbsp;<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Usualmente cuando hablamos de pruebas funcionales nos imaginamos una interfaz [&hellip;]<\/p>\n","protected":false},"author":9,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_mi_skip_tracking":false},"categories":[11],"tags":[54,56,59],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v20.1 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Testing funcional en sistemas financieros (caso de aplicaciones que se comunican mediante el protocolo ISO 8583) &ndash; CES<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/wordpress-test.ces.com.uy\/?p=122\" \/>\n<meta property=\"og:locale\" content=\"es_ES\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Testing funcional en sistemas financieros (caso de aplicaciones que se comunican mediante el protocolo ISO 8583) &ndash; CES\" \/>\n<meta property=\"og:description\" content=\"Usualmente cuando hablamos de pruebas funcionales nos imaginamos una interfaz [&hellip;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/wordpress-test.ces.com.uy\/?p=122\" \/>\n<meta property=\"og:site_name\" content=\"CES\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/CESUruguay\" \/>\n<meta property=\"article:published_time\" content=\"2011-02-25T17:53:07+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2020-09-16T11:59:47+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/wordpress-test.ces.com.uy\/web\/wp-content\/uploads\/2011\/02\/diagrama-mensajes1.jpg\" \/>\n<meta name=\"author\" content=\"Maria Elisa Presto\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@ces_com_uy\" \/>\n<meta name=\"twitter:site\" content=\"@ces_com_uy\" \/>\n<meta name=\"twitter:label1\" content=\"Escrito por\" \/>\n\t<meta name=\"twitter:data1\" content=\"Maria Elisa Presto\" \/>\n\t<meta name=\"twitter:label2\" content=\"Tiempo de lectura\" \/>\n\t<meta name=\"twitter:data2\" content=\"3 minutos\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/wordpress-test.ces.com.uy\/?p=122#article\",\"isPartOf\":{\"@id\":\"https:\/\/wordpress-test.ces.com.uy\/?p=122\"},\"author\":{\"name\":\"Maria Elisa Presto\",\"@id\":\"https:\/\/wordpress-test.ces.com.uy\/#\/schema\/person\/8441b8232ea7e57a5d475d1e23ca53aa\"},\"headline\":\"Testing funcional en sistemas financieros (caso de aplicaciones que se comunican mediante el protocolo ISO 8583)\",\"datePublished\":\"2011-02-25T17:53:07+00:00\",\"dateModified\":\"2020-09-16T11:59:47+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/wordpress-test.ces.com.uy\/?p=122\"},\"wordCount\":581,\"commentCount\":1,\"publisher\":{\"@id\":\"https:\/\/wordpress-test.ces.com.uy\/#organization\"},\"keywords\":[\"pruebas funcionales\",\"sistema financiero\",\"Testing Funcional\"],\"articleSection\":[\"Blog\"],\"inLanguage\":\"es\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/wordpress-test.ces.com.uy\/?p=122#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/wordpress-test.ces.com.uy\/?p=122\",\"url\":\"https:\/\/wordpress-test.ces.com.uy\/?p=122\",\"name\":\"Testing funcional en sistemas financieros (caso de aplicaciones que se comunican mediante el protocolo ISO 8583) &ndash; CES\",\"isPartOf\":{\"@id\":\"https:\/\/wordpress-test.ces.com.uy\/#website\"},\"datePublished\":\"2011-02-25T17:53:07+00:00\",\"dateModified\":\"2020-09-16T11:59:47+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/wordpress-test.ces.com.uy\/?p=122#breadcrumb\"},\"inLanguage\":\"es\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/wordpress-test.ces.com.uy\/?p=122\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/wordpress-test.ces.com.uy\/?p=122#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Portada\",\"item\":\"https:\/\/wordpress-test.ces.com.uy\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Testing funcional en sistemas financieros (caso de aplicaciones que se comunican mediante el protocolo ISO 8583)\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/wordpress-test.ces.com.uy\/#website\",\"url\":\"https:\/\/wordpress-test.ces.com.uy\/\",\"name\":\"CES\",\"description\":\"Centro de Ensayos de Software\",\"publisher\":{\"@id\":\"https:\/\/wordpress-test.ces.com.uy\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/wordpress-test.ces.com.uy\/?s={search_term_string}\"},\"query-input\":\"required name=search_term_string\"}],\"inLanguage\":\"es\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/wordpress-test.ces.com.uy\/#organization\",\"name\":\"CES Centro de Ensayos de Software\",\"url\":\"https:\/\/wordpress-test.ces.com.uy\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"https:\/\/wordpress-test.ces.com.uy\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/wordpress-test.ces.com.uy\/wp-content\/uploads\/2021\/04\/Logo-vertical-grande.png\",\"contentUrl\":\"https:\/\/wordpress-test.ces.com.uy\/wp-content\/uploads\/2021\/04\/Logo-vertical-grande.png\",\"width\":1080,\"height\":1080,\"caption\":\"CES Centro de Ensayos de Software\"},\"image\":{\"@id\":\"https:\/\/wordpress-test.ces.com.uy\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/www.facebook.com\/CESUruguay\",\"https:\/\/twitter.com\/ces_com_uy\",\"https:\/\/www.instagram.com\/ces_uruguay\/\",\"https:\/\/www.linkedin.com\/company\/ces-uruguay\/\",\"https:\/\/www.youtube.com\/channel\/UCRJrDBjRiXGU0hImjFNCAgw\",\"https:\/\/es.wikipedia.org\/wiki\/Centro_de_Ensayos_de_Software\"]},{\"@type\":\"Person\",\"@id\":\"https:\/\/wordpress-test.ces.com.uy\/#\/schema\/person\/8441b8232ea7e57a5d475d1e23ca53aa\",\"name\":\"Maria Elisa Presto\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"https:\/\/wordpress-test.ces.com.uy\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/?s=96&d=mm&r=g\",\"caption\":\"Maria Elisa Presto\"},\"url\":\"https:\/\/wordpress-test.ces.com.uy\/?author=9\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Testing funcional en sistemas financieros (caso de aplicaciones que se comunican mediante el protocolo ISO 8583) &ndash; CES","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:\/\/wordpress-test.ces.com.uy\/?p=122","og_locale":"es_ES","og_type":"article","og_title":"Testing funcional en sistemas financieros (caso de aplicaciones que se comunican mediante el protocolo ISO 8583) &ndash; CES","og_description":"Usualmente cuando hablamos de pruebas funcionales nos imaginamos una interfaz [&hellip;]","og_url":"https:\/\/wordpress-test.ces.com.uy\/?p=122","og_site_name":"CES","article_publisher":"https:\/\/www.facebook.com\/CESUruguay","article_published_time":"2011-02-25T17:53:07+00:00","article_modified_time":"2020-09-16T11:59:47+00:00","og_image":[{"url":"https:\/\/wordpress-test.ces.com.uy\/web\/wp-content\/uploads\/2011\/02\/diagrama-mensajes1.jpg"}],"author":"Maria Elisa Presto","twitter_card":"summary_large_image","twitter_creator":"@ces_com_uy","twitter_site":"@ces_com_uy","twitter_misc":{"Escrito por":"Maria Elisa Presto","Tiempo de lectura":"3 minutos"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/wordpress-test.ces.com.uy\/?p=122#article","isPartOf":{"@id":"https:\/\/wordpress-test.ces.com.uy\/?p=122"},"author":{"name":"Maria Elisa Presto","@id":"https:\/\/wordpress-test.ces.com.uy\/#\/schema\/person\/8441b8232ea7e57a5d475d1e23ca53aa"},"headline":"Testing funcional en sistemas financieros (caso de aplicaciones que se comunican mediante el protocolo ISO 8583)","datePublished":"2011-02-25T17:53:07+00:00","dateModified":"2020-09-16T11:59:47+00:00","mainEntityOfPage":{"@id":"https:\/\/wordpress-test.ces.com.uy\/?p=122"},"wordCount":581,"commentCount":1,"publisher":{"@id":"https:\/\/wordpress-test.ces.com.uy\/#organization"},"keywords":["pruebas funcionales","sistema financiero","Testing Funcional"],"articleSection":["Blog"],"inLanguage":"es","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/wordpress-test.ces.com.uy\/?p=122#respond"]}]},{"@type":"WebPage","@id":"https:\/\/wordpress-test.ces.com.uy\/?p=122","url":"https:\/\/wordpress-test.ces.com.uy\/?p=122","name":"Testing funcional en sistemas financieros (caso de aplicaciones que se comunican mediante el protocolo ISO 8583) &ndash; CES","isPartOf":{"@id":"https:\/\/wordpress-test.ces.com.uy\/#website"},"datePublished":"2011-02-25T17:53:07+00:00","dateModified":"2020-09-16T11:59:47+00:00","breadcrumb":{"@id":"https:\/\/wordpress-test.ces.com.uy\/?p=122#breadcrumb"},"inLanguage":"es","potentialAction":[{"@type":"ReadAction","target":["https:\/\/wordpress-test.ces.com.uy\/?p=122"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/wordpress-test.ces.com.uy\/?p=122#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Portada","item":"https:\/\/wordpress-test.ces.com.uy\/"},{"@type":"ListItem","position":2,"name":"Testing funcional en sistemas financieros (caso de aplicaciones que se comunican mediante el protocolo ISO 8583)"}]},{"@type":"WebSite","@id":"https:\/\/wordpress-test.ces.com.uy\/#website","url":"https:\/\/wordpress-test.ces.com.uy\/","name":"CES","description":"Centro de Ensayos de Software","publisher":{"@id":"https:\/\/wordpress-test.ces.com.uy\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/wordpress-test.ces.com.uy\/?s={search_term_string}"},"query-input":"required name=search_term_string"}],"inLanguage":"es"},{"@type":"Organization","@id":"https:\/\/wordpress-test.ces.com.uy\/#organization","name":"CES Centro de Ensayos de Software","url":"https:\/\/wordpress-test.ces.com.uy\/","logo":{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/wordpress-test.ces.com.uy\/#\/schema\/logo\/image\/","url":"https:\/\/wordpress-test.ces.com.uy\/wp-content\/uploads\/2021\/04\/Logo-vertical-grande.png","contentUrl":"https:\/\/wordpress-test.ces.com.uy\/wp-content\/uploads\/2021\/04\/Logo-vertical-grande.png","width":1080,"height":1080,"caption":"CES Centro de Ensayos de Software"},"image":{"@id":"https:\/\/wordpress-test.ces.com.uy\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/CESUruguay","https:\/\/twitter.com\/ces_com_uy","https:\/\/www.instagram.com\/ces_uruguay\/","https:\/\/www.linkedin.com\/company\/ces-uruguay\/","https:\/\/www.youtube.com\/channel\/UCRJrDBjRiXGU0hImjFNCAgw","https:\/\/es.wikipedia.org\/wiki\/Centro_de_Ensayos_de_Software"]},{"@type":"Person","@id":"https:\/\/wordpress-test.ces.com.uy\/#\/schema\/person\/8441b8232ea7e57a5d475d1e23ca53aa","name":"Maria Elisa Presto","image":{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/wordpress-test.ces.com.uy\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/?s=96&d=mm&r=g","caption":"Maria Elisa Presto"},"url":"https:\/\/wordpress-test.ces.com.uy\/?author=9"}]}},"_links":{"self":[{"href":"https:\/\/wordpress-test.ces.com.uy\/index.php?rest_route=\/wp\/v2\/posts\/122"}],"collection":[{"href":"https:\/\/wordpress-test.ces.com.uy\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/wordpress-test.ces.com.uy\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/wordpress-test.ces.com.uy\/index.php?rest_route=\/wp\/v2\/users\/9"}],"replies":[{"embeddable":true,"href":"https:\/\/wordpress-test.ces.com.uy\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=122"}],"version-history":[{"count":0,"href":"https:\/\/wordpress-test.ces.com.uy\/index.php?rest_route=\/wp\/v2\/posts\/122\/revisions"}],"wp:attachment":[{"href":"https:\/\/wordpress-test.ces.com.uy\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=122"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/wordpress-test.ces.com.uy\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=122"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/wordpress-test.ces.com.uy\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=122"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}