La pregunta del millón - ¿qué herramientas utilizo para automatizar pruebas funcionales de software? – no tiene una respuesta sencilla. Son tantas las variables y aspectos a tener en cuenta para elegir las herramientas adecuadas que sería difícil realizar un listado. Dependerá de la funcionalidad, del tipo de aplicación, del lenguaje, del sistema de trabajo… Sin embargo, aquí te dejamos un listado que consideramos bastante completo, pero, nuestra recomendación en este aspecto es clara: antes de invertir en una herramienta de testeo de software, sea para automatizar o no, consulta a un experto en calidad de software. Ninguna herramienta, por muy buena que sea, puede hacer magia. Recuerda que el testing es una pequeña, pero indispensable parte de un conjunto, por lo que no puedes tratarlo por separado, ni desintegrarlo del resto de factores que influyen en la calidad de tu software.
Una ventaja de esta herramienta para automatizar pruebas es que tiene una fácil integración con Selenium Remote Control. Esto quiere decir que, cuando capturamos un elemento, podemos pedirle una acción que haría un usuario común y así la visualizamos en un tiempo determinado. Con esto podemos integrar las pruebas funcionales sobre aplicaciones web. Las pruebas automatizadas nos ahorrarían una gran cantidad de tiempo y harían que la ejecución de pruebas funcionales sea mucho más simple. 
Jelinski, Z. A. (1972). Software Reliability Research. In Statistical Computer Performance Evaluation. New York:academic Press. Laddad, R. (2003). AspectJ in Action. Manning. Musa, J. D. (2004). Software Reliability Engineering. New York: Mc Graw Hill. Norman F. Schneidewind, L. J. (2008, Junio 27). IEEE Recommended Practice on Software Reliability. New York, NY 10016-5997, USA. Oracle. (2014). http://www.oracle.com. Ragab, S. a. (2010). Object oriented design metrics and tools a survey. In Informatics and Systems (INFOS), 2010 The 7th International Conference on (pp. 1-7). Rathore, S. a. (2012). Investigating object-oriented design metrics to predict fault-proneness of software modules. In Software Engineering (CONSEG), 2012 CSI Sixth International Conference on (pp. 1-10). doi:10.1109/CONSEG.2012.6349484 Sommerville, I. (2007). Software Engineering. Pearson Education. Wahid, M., & Almalaise, A. (2011). JUnit framework: An interactive approach for basic unit testing learning in Software Engineering. Engineering Education (ICEED). doi:10.1109/ICEED.2011.6235381 Autorización y renuncia Los autores del presente artículo autorizan al Instituto Tecnológico de Orizaba (ITO) para publicar el escrito en la revista electrónica “Coloquio de investigación multidisciplinaria” con registro(ISSN2007$8102 en su edición 2014. El ITO o los editores no son responsables ni por el contenido ni por las implicaciones de lo que está expresado en el escrito.
Nótese que en este artículo no recomendaremos ningún software en particular, porque incluso nuestra herramienta hecha en casa necesita de Pandora FMS para que se encargue de entregarle los datos, para que se convierta en información y genere las alertas necesarias, de ser el caso, desde el punto de vista de la monitorización. Así que cada caso y necesidad son muy particulares. En honor a la justicia, los enumeraremos de acuerdo al año en que fue liberada su primera versión al público, y seguro que os agradará la lista que hemos preparado.

objetos, la ejecución de pruebas sobre los métodos de una clase, pueden considerarse como pruebas unitarias. Las ventajas de realizar pruebas unitarias son: encontrar errores de forma temprana, evitando la propagación de estos en el sistema completo, lo cual permite mejorar el comportamiento de la aplicación en las pruebas de integración. Otro beneficio es la posibilidad de documentar el código para facilitar su implementación. Pruebas Integrales Otro aspecto importante en el proceso de evaluación son las pruebas de integración. Estas pruebas se basan en probar un conjunto de unidades las cuales interactúan de acuerdo a la funcionalidad en relación con la especificación de los requerimientos. Las pruebas integrales evalúan que las secuencias de interacción entre componentes se realicen correctamente. Esto se debe hacer ya que pueden haber fallos que se mantiene ocultos y solo pueden ser detectados cuando una unidad de código interactúa con otra dentro del mismo sistema. Las ventajas de realizar estas pruebas son: descubrir interacciones inadecuadas entre los componentes, interfaces y arquitectura de diseños deficientes. Enfoque actual de programación ! Programación Orientada a Objetos De acuerdo al ranking de la revista IEEE Spectrum (IEEE, 2014) el lenguaje Java es el más utilizado para el desarrollo de sistemas empresariales, aplicaciones móviles y web. En este caso las propiedades que la Programación Orientada a Objetos (POO) ofrece, tiene grandes ventajas como son: la portabilidad, la reutilización de componentes y la sencillez de sus cláusulas, que también son fáciles de entender. El mayor representante de este paradigma es el lenguaje Java con más de 9 millones de desarrolladores en todo el mundo (Oracle, 2014). Sin embargo evaluar aplicaciones en Java no es sencillo y los esquemas tradicionales de pruebas no son suficientes, en este caso la planeación de pruebas tradicionales no es aplicable. Esto se debe a que la mayor parte de la funcionalidad de estos sistemas se resuelve a tiempo de ejecución. Las características de la POO que influyen en este aspecto son las siguientes: • Encapsulación: esta propiedad limita el acceso que se tiene a los atributos internos de una clase, y solo se puede acceder a ellos mediante la instancia de la clase. • Herencia: esta propiedad permita a una clase hija comportarse como una clase padre y a sí mismo una clase padre puede comportase como una clase hija, pero con un comportamiento limitado. • Polimorfismo: esta propiedad permite seleccionar los métodos que se utilizan durante tiempo de ejecución haciendo el código más flexible. Programación orientada a aspectos Este enfoque es relativamente nuevo el área de desarrollo de software, pero se ha consolidado como un paradigma el cual facilita la encapsulación de requerimientos no funcionales. Una de las funciones más importante de este nuevo paradigma es mejorar la modularidad del código en sistemas de software y reducir su complejidad. Esto es posible mediante enfoques como el entrelazado de asuntos (crosscutting concern) en el código, estos asuntos generalmente son requisitos no funcionales que debe de cumplir un sistemas, por ejemplo la seguridad y el inicio de sesión de usuarios. Este entrelazado es un concepto que se implementa en diversas secciones del código, mediante la implementación de corte en puntos (pointcuts), de acuerdo a la definición de puntos de unión (joint points) los cuales son puntos donde los asuntos (concerns) son aplicados. Un aviso (advice) es un comportamiento adicional que tendrá el código, el cual es ejecutado en un asunto. Entre los representantes más importantes de este paradigma tenemos a AspectJ (Laddad, 2003), que funciona como una extensión para el lenguaje Java. Actualmente forma parte del proyecto de código abierto Eclipse de IBM. La unidad principal de AspectJ es el aspecto, el cual combina los conceptos corte en puntos, avisos y declaraciones. Este nuevo paradigma ofrece nuevas posibilidades para el área de pruebas de software. En trabajos de investigación como en (Cheon, 2010) se desarrolla un enfoque que utiliza una combinación entre OCL (Object Constariant Language) y aspectos para colocar restricciones en la invocación de métodos para validar los rangos y datos de las variables de entrada.


Hola Javier mi nombre es laura Buenas Tardes una pregunta descargue Alvendi V1.3.1 y me gustaría saber si es gratuito pues se supone que yo busque programas gratuitos y me apareció esta pagina recién comienza la administración de este negocio y la verdad estoy batallando mucho pues todos los controles son mediante Excel no me han autorizado la compra de ningún programa así que me aventure a buscar un gratuito y me esta preocupando que solo me sirva para unos días y después me tenga que registrar para pagar gracias


Esto depende del tipo de prueba, para las pruebas de tipo ADB y monkey testing depende del número de eventos a realizar, para el caso de las pruebas de de tipo BDD — Calabash la configuración del proyecto toma algunos segundos, luego depende del número de pasos que contenga el archivo .features, además Calabash tiene una serie de timers, los cuales esperan hasta que se cumpla una condición.
×