{"id":1655,"date":"2017-04-11T08:10:36","date_gmt":"2017-04-11T06:10:36","guid":{"rendered":"http:\/\/www.mtp.es\/blog\/?p=1655"},"modified":"2017-04-11T08:10:36","modified_gmt":"2017-04-11T06:10:36","slug":"debe-saber-testing-un-desarrollador","status":"publish","type":"post","link":"https:\/\/mtp.global\/es\/blog\/archivo\/debe-saber-testing-un-desarrollador\/","title":{"rendered":"\u00bfDebe saber testing un desarrollador?"},"content":{"rendered":"<h2>La respuesta es s\u00ed, ya que las buenas pr\u00e1cticas de programaci\u00f3n est\u00e1n relacionadas con el testing.<\/h2>\n<p>Bas\u00e1ndose en la aplicaci\u00f3n de <b>t\u00e9cnicas de pruebas de caja negra<\/b>, como clases de equivalencia, valores l\u00edmite, pruebas basadas en estados o comprobaci\u00f3n de l\u00f3gicas de negocio por tablas de decisi\u00f3n, se comprueba el efecto exponencial del coste de las pruebas respecto de la complejidad de las soluciones t\u00e9cnicas.<\/p>\n<p>Dada una funcionalidad, probarla puede suponer un esfuerzo significativamente alto si la soluci\u00f3n t\u00e9cnica no est\u00e1 correctamente elegida. Otra conclusi\u00f3n que se puede obtener es que si duplicamos la funcionalidad de un software, su esfuerzo de prueba es mucho mayor que el doble (incluso puede ser hasta 4 veces mayor). El coste de las pruebas es exponencial respecto a la complejidad de la soluci\u00f3n t\u00e9cnica<\/p>\n<p>Analizando las <b>t\u00e9cnicas de prueba de caja blanca<\/b> de un curso de fundamentos del testing, podemos comprobar que cuando no se siguen determinadas pr\u00e1cticas de codificaci\u00f3n, el n\u00famero de casos de prueba que deber\u00eda hacerse alcanza valores de varias decenas o, incluso, centenares por cada m\u00e9todo o funci\u00f3n. Un software medio (unos 500KLOC) podr\u00eda necesitar varios <b>cientos de miles de casos de prueba<\/b> a nivel de desarrollador.<\/p>\n<p>Si aplicamos t\u00e9cnicas de medida de eficacia de las pruebas, como puede ser la t\u00e9cnica m\u00e1s simple y b\u00e1sica de caja blanca que es <b>cobertura de sentencias<\/b>, de la que se derivan varios cientos de casos de prueba para un componente, podemos comprobar que es muy habitual que <b>entre un 15% y un 30% del c\u00f3digo no se prueba nunca<\/b>. Es decir, a\u00fan si hacemos cientos de casos de prueba por componente en la versi\u00f3n m\u00e1s simple de las t\u00e9cnicas de prueba, <b>hay una parte del c\u00f3digo que pasa a producci\u00f3n sin haberse ejecutado nunca<\/b>.<\/p>\n<p><b>\u00bfRealmente somos conscientes del esfuerzo y la problem\u00e1tica en materia de pruebas que generan nuestros dise\u00f1os software?.<\/b> Cuando los desarrolladores conocemos las t\u00e9cnicas y principios del testing comprendemos que:<\/p>\n<ul>\n<li>Realizar dise\u00f1os y soluciones t\u00e9cnicas sencillas disminuyen el coste de las pruebas.<\/li>\n<li>Las recomendaciones de codificaci\u00f3n reducen el tiempo de las pruebas.<\/li>\n<li>Si probamos mientras codificamos, nuestros dise\u00f1os son m\u00e1s robustos y f\u00e1ciles de mantener.<\/li>\n<\/ul>\n<p>Si deseas ampliar m\u00e1s informaci\u00f3n pincha en el enlace de la presentaci\u00f3n completa: <a href=\"https:\/\/mtp.global\/es\/emailing\/corporativo\/Testing_Desarrolladores_SSTQB_2016.pdf\" target=\"_blank\" rel=\"noopener noreferrer\">Testing para Desarrolladores<\/a><\/p>\n<p><strong>Por Aurelio Gandarillas<br \/>\nResponsable de Formaci\u00f3n de MTP<\/strong><\/p>\n","protected":false},"excerpt":{"rendered":"<p>La respuesta es s\u00ed, ya que las buenas pr\u00e1cticas de programaci\u00f3n est\u00e1n relacionadas con el testing. Bas\u00e1ndose en la aplicaci\u00f3n de t\u00e9cnicas de pruebas de caja negra, como clases de equivalencia, valores l\u00edmite, pruebas basadas en estados o comprobaci\u00f3n de l\u00f3gicas de negocio por tablas de decisi\u00f3n, se comprueba el efecto exponencial del coste de [&hellip;]<\/p>\n","protected":false},"author":9,"featured_media":1657,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[204],"tags":[150],"class_list":["post-1655","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-archivo","tag-desarrollo-de-software"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.1.1 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>\u00bfDeber\u00edan los desarrolladores saber testing? - Blog MTP<\/title>\n<meta name=\"description\" content=\"Un desarrollador debe tener conocimientos de pruebas ya que las buenas pr\u00e1cticas de programaci\u00f3n est\u00e1n relacionadas con el testing.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/mtp.global\/es\/blog\/archivo\/debe-saber-testing-un-desarrollador\/\" \/>\n<meta property=\"og:locale\" content=\"es_ES\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"\u00bfDeber\u00edan los desarrolladores saber testing? - Blog MTP\" \/>\n<meta property=\"og:description\" content=\"Un desarrollador debe tener conocimientos de pruebas ya que las buenas pr\u00e1cticas de programaci\u00f3n est\u00e1n relacionadas con el testing.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/mtp.global\/es\/blog\/archivo\/debe-saber-testing-un-desarrollador\/\" \/>\n<meta property=\"og:site_name\" content=\"MTP Espa\u00f1a\" \/>\n<meta property=\"article:published_time\" content=\"2017-04-11T06:10:36+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/mtp.global\/es\/wp-content\/uploads\/2017\/04\/testing_desarrollador.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"1000\" \/>\n\t<meta property=\"og:image:height\" content=\"400\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"MTP\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Escrito por\" \/>\n\t<meta name=\"twitter:data1\" content=\"MTP\" \/>\n\t<meta name=\"twitter:label2\" content=\"Tiempo de lectura\" \/>\n\t<meta name=\"twitter:data2\" content=\"2 minutos\" \/>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"\u00bfDeber\u00edan los desarrolladores saber testing? - Blog MTP","description":"Un desarrollador debe tener conocimientos de pruebas ya que las buenas pr\u00e1cticas de programaci\u00f3n est\u00e1n relacionadas con el testing.","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:\/\/mtp.global\/es\/blog\/archivo\/debe-saber-testing-un-desarrollador\/","og_locale":"es_ES","og_type":"article","og_title":"\u00bfDeber\u00edan los desarrolladores saber testing? - Blog MTP","og_description":"Un desarrollador debe tener conocimientos de pruebas ya que las buenas pr\u00e1cticas de programaci\u00f3n est\u00e1n relacionadas con el testing.","og_url":"https:\/\/mtp.global\/es\/blog\/archivo\/debe-saber-testing-un-desarrollador\/","og_site_name":"MTP Espa\u00f1a","article_published_time":"2017-04-11T06:10:36+00:00","og_image":[{"width":1000,"height":400,"url":"https:\/\/mtp.global\/es\/wp-content\/uploads\/2017\/04\/testing_desarrollador.jpg","type":"image\/jpeg"}],"author":"MTP","twitter_card":"summary_large_image","twitter_misc":{"Escrito por":"MTP","Tiempo de lectura":"2 minutos"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/mtp.global\/es\/blog\/archivo\/debe-saber-testing-un-desarrollador\/#article","isPartOf":{"@id":"https:\/\/mtp.global\/es\/blog\/archivo\/debe-saber-testing-un-desarrollador\/"},"author":{"name":"MTP","@id":"https:\/\/mtp.global\/es\/#\/schema\/person\/1186350db6f59e8360dd481150654813"},"headline":"\u00bfDebe saber testing un desarrollador?","datePublished":"2017-04-11T06:10:36+00:00","mainEntityOfPage":{"@id":"https:\/\/mtp.global\/es\/blog\/archivo\/debe-saber-testing-un-desarrollador\/"},"wordCount":430,"publisher":{"@id":"https:\/\/mtp.global\/es\/#organization"},"image":{"@id":"https:\/\/mtp.global\/es\/blog\/archivo\/debe-saber-testing-un-desarrollador\/#primaryimage"},"thumbnailUrl":"https:\/\/mtp.global\/es\/wp-content\/uploads\/2017\/04\/testing_desarrollador.jpg","keywords":["desarrollo de software"],"articleSection":["Archivo"],"inLanguage":"es"},{"@type":"WebPage","@id":"https:\/\/mtp.global\/es\/blog\/archivo\/debe-saber-testing-un-desarrollador\/","url":"https:\/\/mtp.global\/es\/blog\/archivo\/debe-saber-testing-un-desarrollador\/","name":"\u00bfDeber\u00edan los desarrolladores saber testing? - Blog MTP","isPartOf":{"@id":"https:\/\/mtp.global\/es\/#website"},"primaryImageOfPage":{"@id":"https:\/\/mtp.global\/es\/blog\/archivo\/debe-saber-testing-un-desarrollador\/#primaryimage"},"image":{"@id":"https:\/\/mtp.global\/es\/blog\/archivo\/debe-saber-testing-un-desarrollador\/#primaryimage"},"thumbnailUrl":"https:\/\/mtp.global\/es\/wp-content\/uploads\/2017\/04\/testing_desarrollador.jpg","datePublished":"2017-04-11T06:10:36+00:00","description":"Un desarrollador debe tener conocimientos de pruebas ya que las buenas pr\u00e1cticas de programaci\u00f3n est\u00e1n relacionadas con el testing.","breadcrumb":{"@id":"https:\/\/mtp.global\/es\/blog\/archivo\/debe-saber-testing-un-desarrollador\/#breadcrumb"},"inLanguage":"es","potentialAction":[{"@type":"ReadAction","target":["https:\/\/mtp.global\/es\/blog\/archivo\/debe-saber-testing-un-desarrollador\/"]}]},{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/mtp.global\/es\/blog\/archivo\/debe-saber-testing-un-desarrollador\/#primaryimage","url":"https:\/\/mtp.global\/es\/wp-content\/uploads\/2017\/04\/testing_desarrollador.jpg","contentUrl":"https:\/\/mtp.global\/es\/wp-content\/uploads\/2017\/04\/testing_desarrollador.jpg","width":1000,"height":400,"caption":"Testing desarrollador"},{"@type":"BreadcrumbList","@id":"https:\/\/mtp.global\/es\/blog\/archivo\/debe-saber-testing-un-desarrollador\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/mtp.global\/es\/home\/"},{"@type":"ListItem","position":2,"name":"\u00bfDebe saber testing un desarrollador?"}]},{"@type":"WebSite","@id":"https:\/\/mtp.global\/es\/#website","url":"https:\/\/mtp.global\/es\/","name":"MTP Global","description":"","publisher":{"@id":"https:\/\/mtp.global\/es\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/mtp.global\/es\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"es"},{"@type":"Organization","@id":"https:\/\/mtp.global\/es\/#organization","name":"MTP Global","url":"https:\/\/mtp.global\/es\/","logo":{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/mtp.global\/es\/#\/schema\/logo\/image\/","url":"https:\/\/mtp.global\/es\/wp-content\/uploads\/2024\/07\/MTP-global.png","contentUrl":"https:\/\/mtp.global\/es\/wp-content\/uploads\/2024\/07\/MTP-global.png","width":1200,"height":400,"caption":"MTP Global"},"image":{"@id":"https:\/\/mtp.global\/es\/#\/schema\/logo\/image\/"}},{"@type":"Person","@id":"https:\/\/mtp.global\/es\/#\/schema\/person\/1186350db6f59e8360dd481150654813","name":"MTP","image":{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/mtp.global\/es\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/9f80fcebb065607a1066a38846083841707346cf76ca0c1df24aea7a0c5d4047?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/9f80fcebb065607a1066a38846083841707346cf76ca0c1df24aea7a0c5d4047?s=96&d=mm&r=g","caption":"MTP"},"url":"https:\/\/mtp.global\/es\/blog\/author\/marketing\/"}]}},"fimg_url":"https:\/\/mtp.global\/es\/wp-content\/uploads\/2017\/04\/testing_desarrollador.jpg","_links":{"self":[{"href":"https:\/\/mtp.global\/es\/wp-json\/wp\/v2\/posts\/1655","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/mtp.global\/es\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/mtp.global\/es\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/mtp.global\/es\/wp-json\/wp\/v2\/users\/9"}],"replies":[{"embeddable":true,"href":"https:\/\/mtp.global\/es\/wp-json\/wp\/v2\/comments?post=1655"}],"version-history":[{"count":0,"href":"https:\/\/mtp.global\/es\/wp-json\/wp\/v2\/posts\/1655\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/mtp.global\/es\/wp-json\/wp\/v2\/media\/1657"}],"wp:attachment":[{"href":"https:\/\/mtp.global\/es\/wp-json\/wp\/v2\/media?parent=1655"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/mtp.global\/es\/wp-json\/wp\/v2\/categories?post=1655"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/mtp.global\/es\/wp-json\/wp\/v2\/tags?post=1655"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}