23/11/2012

Test funcional: ¿cómo debe comportarse nuestro software?

Test funcional: ¿cómo debe comportarse nuestro software?

Dentro del plan de QA, luego de haberse probado la interacción entre los módulos de software en el test de integración, llega el momento de probar si nuestra aplicación hace todo aquello para lo cual fue desarrollada. De eso se encarga el test funcional. Generalmente, esta prueba incluye cinco pasos:

  1. Identificar cuáles son las funciones que el software debería llevar a cabo.
  2. Confeccionar datos de entrada basados en las especificaciones de cada función.
  3. Determinar cuáles serían las salidas producidas por esos datos de entrada de acuerdo con las especificaciones de cada función.
  4. Ejecutar el caso de test.
  5. Comparar los resultados obtenidos con los esperados.

Al igual que las pruebas unitaria, de integración y de aceptación, el test funcional es de tipo black box. Es decir, examina el comportamiento externo del software sin indagar en su implementación interna. Ve al software como una «caja negra» en la que se ingresa una entrada y de la que se extrae una salida, pero sin analizar el proceso intermedio.

Existen varios tipos de test funcional:

  • Ad Hoc. Cada tester improvisa los casos de prueba en el momento, sin planificación previa, a partir de su conocimiento sobre las metas del producto, el nivel de habilidad del usuario o las características del software que juzgue problemáticas.
  • Exploratorio. El tester diseña y ejecuta pruebas a medida que se interioriza en la aplicación. El diseño de la prueba se organiza por una serie de patrones concisos diseñados para asegurar que los testers no se pierdan de ningún detalle importante.
  • Combinado. El tester desarrolla una secuencia de eventos utilizando distintos caminos para completar una misma tarea. Esto puede sacar a la luz bugs relacionados con el orden de ejecución y que son difíciles de detectar usando otros métodos.
  • Por script. El tester utiliza un script de prueba que activa automáticamente las funciones específicas a ser probadas.

Antes de someter el programa a la opinión del cliente, el test funcional nos ayuda a adaptarlo lo más posible a los requerimientos que planteó en un principio; de esa manera, reduce el riesgo de que quede insatisfecho y solicite modificaciones drásticas sobre el producto.

0

angularjs Aplicaciones en Facebook aplicaciones mobile behavioral targeting Botones Call-to-action breadcrumbs breadcrumbs web búsqueda de personal búsqueda facetada Call-to-action buttons Client-side cliente-destacado cms a medida coding comercio electrónico content marketing CSS3 PIE cuanto debe pesar un sitio data-driven web design Datos estructurados Defacement Denegación de servicio Desarrollar una aplicación web desventajas de PhoneGap diseñar newsletters diseño web diseño web argentina diseño web esqueuomórfico Diseño web responsive Diseño web responsivo diseño web santa fe diseño web Smart TV diseño web televisores DOM desde PHP enlaces rotos filtros de búsqueda flash flat web design formularios sitio web fragmentos enriquecidos función de autocompletar futuro de la realidad aumentada html HTML5 html5shiv inbound marketing Initializr interfaces Web para televisores javascript jobs jQuery Mobile Mapbox maquetado html/css maquetador web masonry layout menú de navegación menú desplegable Metodologías ágiles Modernizr MVC Navegación por teclado oferta laboral OpenStreetMap paginas de Facebook Paper js Paper js framework personas Phishing plan de QA Polyfills polymer portfolio-destacados portfolio-inicio programacion de CMS Programadores WordPress página de contacto página de error 404 que es Backbone.js Realidad aumentada Resultados instantáneos server-side skeuomorphic design sliders y usabilidad soporte Internet Explorer Storytelling Underscores usabilidad usabilidad buscadores user-centered design ux velocidad de carga web Vendor prefixes ventajas jQuery Mobile Ventanas integradas versiones antiguas de Internet Explorer WAI-ARIA web components web imprimible Web Semántica WordPress para ecommerce