Es recomendable (aunque no obligatorio) que Zahorí cuente con un ecosistema de herramientas de desarrollo y ejecución abierto, que permita la integración con sistemas de gestión de pruebas, herramientas de integración continua, y repositorios de software especializado para la gestión del código del SW de automatización. Su diseño modular es además compatible con un repositorio de artefactos, no requiriendo tiempo de interpretación/compilación del código de automatización.


Con estas herramientas de Selenium podemos reducir considerablemente el tiempo en la creación de las pruebas automatizadas, y estas mismas pruebas pueden ser ejecutadas como un complemento en la ejecución de una prueba funcional. Así, podemos optar por la alternativa que más nos convenga. Lo único que nos queda es usarlas, conocerlas y familiarizarnos con ellas.

AutoIT es una herramienta para automatizar la GUI de Windows y las secuencias de comandos generales usando una combinación de pulsaciones de teclas, movimiento del ratón y manipulación de ventana / control. Se utiliza para automatizar tareas que son difíciles de realizar con ciertos idiomas. Es muy utilizado por los probadores para crear scripts de automatización para el entorno de Windows.
Como he comentado antes tenemos que valorar la capacidad de adaptación de nuestro sistema de gestión. Para ello elegiremos sistemas modulares. ¿Qué es un sistema de gestión modular? Los sistemas modulares son aquellos que tienen una estructura que se divide en varias “partes”, cada una de estas tiene como objetivo cubrir una necesidad en concreto (módulo de facturación, módulo de logística, módulo de RRHH…). Un sistema modular también nos ofrece una reducción de costes considerable, pues solo instalaremos los módulos que realmente sean necesarios en nuestro negocio.
La mayoría nos recomienda Magento y Prestashop . Y las dos son gratuitas. Prestashop, para retailers pequeños y medianos, y Magento, para las más grandes. El pero es que las dos son soluciones de código abierto: son gratis, te las puedes instalar y configurar tú, pero como hemos dicho antes, si no tienes conocimientos técnicos, te resultará casi imposible. “Al final, lo normal con Prestashop y Magento es que pagues a un desarrollador para la instalación, configuración, adaptación y diseño del estilo visual de la tienda. Necesitarás una inversión mínima de 3.000 euros, pero merece la pena pagar por ello”, afirma Cortizo.
Podríamos preguntárnoslo de otra manera, ¿cómo es que ahora todo el mundo automatiza? o ¿qué está sucediendo para que la automatización sea indispensable? Bien, la respuesta es lógica y sencilla. Dadas las nuevas tecnologías y enfoques clave como la cultura DevOps, la productividad de los equipos de software ha aumentado mucho y el time-to-market se ha reducido considerablemente. Por tanto, todo aquello que: a) ayude a ser más ágil, b) permita a los desarrolladores dedicar tiempo a lo que realmente necesita de su atención, y, sobre todo, c) permita llegar al mercado mucho más rápida y eficientemente, es estratégicamente indispensable si se quiere sobrevivir en el mercado. A todo ello contribuye y mucho la automatización de pruebas funcionales- no sólo porque dejan tiempo al tester, sino porque además estas pruebas son reutilizables. Además, la automatización de las pruebas aporta tranquilidad al ajustar y mejorar las principales funcionalidades, ya que brindan información sobre el impacto de los cambios realizados.
“Micro Focus”®, una empresa fundada en 1976 por Brian Reynolds en el Reino Unido, lanzó en 1998 esta herramienta que aún utiliza tecnología “noventera”: VBScripting. Es software privativo que se ejecuta en “Microsoft Windows”® (GNU/Linux había sido lanzado hace apenas 4 años y aún le faltaba mucho camino por recorrer), pero no subestimemos a esta empresa por ello, al contrario, se ha modernizado de acuerdo al paso del tiempo. En ese mismo año, “Micro Focus”® adquiere Intersolv®, en 2009 adquiere la legendaria Borland® y en 2014 adquiere “Atachmate Group”®, quienes a su vez eran propietarios de Novell®, NetIQ®, y SUSE®. ¡A menos que hayan vivido en una caverna, por lo menos una de esas empresas deben conocer! Para la guinda del pastel, en 2017 se fusionó con “HP Enterprise”®, división que atiende sólo necesidades de software para empresas. ¡Todo un gigante y con muchas libras esterlinas en su haber!
Como podéis imaginar, habrá decenas de herramientas para pruebas software, de las que he querido destacar en esta lista tres: Selenium, Jmeter y Testlink. ¿Por qué estas tres? Porque son herramientas para pruebas software, son de software libre y son de las más usadas en proyectos. Las dos primeras, Selenium y Jmeter, trabajan en la automatización de las pruebas funcionales, la tercera, Testlink, en la gestión de los casos de prueba. Aquí os dejo un breve resumen de estas herramientas para pruebas software.

Insistiendo en el tema de la conversión, asegura que, en el caso de los ecommerce, Doofinder “ayuda a aumentar las ventas entre un 15% y un 20%” dado que ha ido desarrollándose hasta convertirse en una herramienta de marketing. Otra de sus funcionalidades más potentes es “sin duda, su panel de estadísticas, donde el propietario del negocio o el gestor de esa web puede comprobar ratios de clicks en los productos mostrados , y de conversión en base a las sesiones de búsqueda”. Doofinder ofrece 30 días gratuitos de prueba, se instala en 5 minutos sin necesidad de programar, es compatible con todas las plataformas de comercio electrónico y de gestión de contenidos.

A través del módulo device.js desarrollado para el proyecto, se invoca el comando adb devices, el cual entrega el listado de equipos encendidos, éstos son almacenados en la base de datos (si es que no existen ya), además de ello se obtiene la información de los mismos, como nombre del equipo, identificador y dimensiones, que para el caso de acciones de tipo tap para ADB Input son necesarias, para así delimitar el rango en el cual se puede hacer la acción.


Merece la pena añadir a estas herramientas otras que nos ayuden a organizar mejor el correo, como Unroll.Me, para olvidarte del correo basura. “Ahora Google ha lanzado la competencia a Mailbox, que se llama Inbox. Son fantásticas para una gestión eficiente del email personal. Unrol.Me es, sencillamente, buenísima. No es un gestor de correo como las otras, sirve para ver a qué estás suscrito, darte de baja fácilmente de las que no te interesen y agrupar las otras en un mismo email”, dice Emilio Rodríguez.
inspector de código para crear los casos de prueba necesarios. Algunas propuestas utilizan los archivos fuente de Java y otras se basan en diagramas UML para conocer la arquitectura del sistema. Nuestra propuesta se basa en retomar la parte de planeación y ejecución de pruebas que marca la teoría clásica, apoyada con técnicas de programación novedosas como la POA para mejorar la ejecución de cada caso de prueba. En este caso la combinación de la evaluación del sistema en reposo y en tiempo de ejecución robustece el proceso de evaluación para lenguajes como Java y nos permite planear y ejecutar los casos de prueba de una forma efectiva. De acuerdo a los resultados que hemos obtenido con este enfoque en otro tipo de aplicaciones (Davila-Nicanor, 2005), los costos se reduce en al menos el 50%. Este enfoque permite obtener sistemas productivos más confiables y eficientes. Trabajo a futuro El principal objetivo de nuestro trabajo a futuro es implementar el esquema propuesto para la herramienta de evaluación de sistemas orientados a objetos. Para evaluar la certeza de esta propuesta, serán utilizados algunos casos de estudio que tiene disponibles en su base de datos la Nasa (Rathore, 2012). El objetivo de esta base de casos, es que los instrumentos de evaluación que se proponen puedan contrastar sus resultados con los reportados en esta organización. Otro objetivo importante es que el costo computacional deberá ser bajo en la ejecución de la herramienta. En este caso los algoritmos implementados deben ser eficientes y confiables. Finalmente la técnica que elegimos POA en la ejecución de los casos de prueba, representa un gran reto, porque de acuerdo al estudio realizado en este reporte, pocas herramienta la utilizan como parte central de su proceso de evaluación. En este caso se utilizan en su mayoría técnicas de algoritmos evolutivos, lo cual genera costos muy altos de ejecución. Referencias al., K. e. (2011). LCT: an open source concolic testing tool for Java programs. In In: Proceedings of the 6th Workshop on Bytecode Semantics, Verification, Analysis and Transformation (pp. pp. 75-80). Albert, E. a.-M.-Z. (2011). jPET: An Automatic Test-Case Generator for Java. In Proceedings of the 2011 18th Working Conference on Reverse Engineering (pp. 441--442). IEEE Computer Society. doi:10.1109/WCRE.2011.67 Albert, E. a.-Z. (2010). PET: A Partial Evaluation-based Test Case Generation Tool for Java Bytecode. In Proceedings of the 2010 ACM SIGPLAN Workshop on Partial Evaluation and Program Manipulation (pp. 25-28). Madrid, Spain: ACM. doi:10.1145/1706356.1706363 Basili, V. R. (1996). A Validation of Object-Oriented Design Metrics As Quality Indicators. IEEE Trans. Softw. Eng., 22(10), 751--761. doi:10.1109/32.544352 Bhatnagar, N. (2004). A Survey of Aspect-Oriented Programming Languages. Cheon, Y. a. (2010). Automating Java Program Testing Using OCL and AspectJ. In Proceedings of the 2010 Seventh International Conference on Information Technology: New Generations (pp. 1020-1025). IEEE Computer Society. doi:10.1109/ITNG.2010.123 Davila-Nicanor, L. a.-A. (2005). Reliability evaluation of Web-based software applications. In Computer Science, 2005. ENC 2005. Sixth Mexican International Conference on (pp. 106-112). doi:10.1109/ENC.2005.36 Fraser, G. a. (2011). EvoSuite: Automatic Test Suite Generation for Object-oriented Software. In {Proceedings of the 19th ACM SIGSOFT Symposium and the 13th European Conference on Foundations of Software Engineering (pp. 416--419). Szeged, Hungary: ACM. IEEE. (2014). IEEE Spectrum. Retrieved Agosto 111, 2014, from http://spectrum.ieee.org/static/interactive-the-top-programming-languages
¿Cómo sabes que el sistema funciona? Una respuesta común a esta pregunta es “porque el equipo de testing le echó un vistazo”.  El problema viene al tener que determinar la extensión y profundidad de las pruebas realizadas. Si eres afortunado y trabajas en una empresa con buenos procesos, podrás acreditar lo probado a través de una lista de casos de prueba. Si trabajas en una empresa de clase mundial, entonces hay una gran posibilidad de que tengas la fortuna de tener a tu disposición herramientas para la gestión y automatización de pruebas.De acuerdo con Elfriede Dustin, las herramientas de automatización de pruebas consolidan y mejoran la efectividad de las pruebas siempre y cuando se manejen las expectativas, se entiendan las herramientas, y se seleccione una herramienta compatible con el ambiente de programación. Si necesitas probar un sistema no trivial que conste de algo más que unas cuantas pantallas y reportes, entonces es muy posible que por medio de pruebas manuales no logres realizar todas las pruebas que necesitas para verificar la calidad del sistema. Con la ayuda de herramientas de automatización puedes ejecutar más pruebas, lo cual se traduce en una mayor cobertura del sistema que se está probando.
Hoy las empresas en el mundo utilizan varios tipos de software que se adapten a sus negocios. Antes se utilizaban los libros de contabilidad y calculadora para recopilar información en varias hojas, sobre ventas y emisión de facturas para los clientes. Aparte de los registros regulares de las tiendas,  todo lo que hoy se usa esta completamente automatizado. Esta gran  revolución en el mundo de la informática trajo consigo un gran cambio para las empresas y el modo en que estas dirigen sus operaciones de negocios. A través del uso del software se puede asegurar que su negocio no sólo tenga un giro más exitoso, sino que además exista un ahorro considerable en tiempos y mayores ingresos.
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.   

mexERP un sistema integral que te permite registrar tu negocio/empresa de forma fácil y sin complicaciones. Una vez registrado podrás dar de alta, administrar y controlar todas tus transacciones, movimientos y actividades cotidianas de tu negocio. El sistema registrará toda la información y te proporcionará la información necesaria tales como: reportes, facturas, saldos, cuentas por pagar, entre otros que serán de vital importancia para la toma de decisiones en tu negocio.
Necesito un software para realizar robots y buenas pruebas de QA. pero necesito que pueda insertar cualquier exe en dicho software y ejecutar las pruebas sobre ese exe. Existe alguna herramienta que puedo utilizar. Son exes desktop. Estoy viendo Microsoft Team Manager pero veo que es con Microsoft Foundation Server y solo para Visual Studio y necesito alguno para hacer robots y buenas pruebas de regresion.
Una herramienta que se puede recomendar y por cierto muy buena!!!! Es: Rational Team Concert no es una herramienta para hacer pruebas. Es una solución de gestión del ciclo de vida del software que permite colaboración(Creación de Tareas, Defectos, Historia etc.), facilita la planificación y ejecución de proyectos ágiles o formales con plantillas y herramientas de planificación, incluye plantilla para las metodologías SCRUM, RUP, etc., control de compilaciones, Dashboard, creación de informes etc., y es gratis hasta 10 desarrolladores.

Por otro lado, otra herramienta que cada vez cobra mayor importancia dentro de un ecommerce es el buscador interno. “La importancia de un buscador reside en que es una de las herramientas más directamente vinculadas a la conversión, es decir, a la venta”, afirma Pepe Romero, responsable de comunicación de Doofinder . “Cualquier persona que entra en un, blog, intranet o comercio online, lo primero que hace es ir a la caja de búsqueda. En el caso de los blog, intranet o webs corporativas, Doofinder ayuda a encontrar fácilmente el contenido, mejorando así la experiencia del lector o empleado a la hora de encontrar lo que busca”.
Y nos acaban de liberar presupuesto para implementar una herramienta en primera instancia para automatizar pruebas (muy requerido en mis labores por la gran cantidad de data que manejamos) y por otro lado me gustaría poder incorporarle gestión de pruebas y bugs para implementar una solución más robusta, nuestro entorno es 100% web en .net y hacia allá debe apuntar la solución…vi que en una de tus sugerencias diste como alternativa Microsoft Test Manager pero no se si es la mejor por sobre las pagas que puedes encontrar en el mercado.
“Son herramientas muy útiles en su versión gratuita, de hecho la principal limitación de Zoho CRM sin pago es que sólo permite el acceso a tres usuarios distintos dentro de la empresa, lo que para una pyme suele ser suficiente. En el caso de Openbravo, al ser software libre, el problema puede venir, como con cualquier solución open source (código abierto), en que hay que tener ciertos conocimientos técnicos para ponerlas a funcionar. Por eso, aunque Openbravo sea gratuito, si no tienes conocimientos técnicos debes valorar si te compensa contratar a alguien que instale y configure Openbravo para ajustarlo a las necesidades específicas de la empresa”, explica José Carlos Cortizo, CMO de BrainSins .
Selenium es uno de los software de código abierto más populares para automatizar procesos, utilizado para diversas aplicaciones y plataformas web como Windows, Mac y Linux. Al tratarse de un entorno de trabajo de probadores de automatización web, especialmente aquellos con habilidades avanzadas de programación y scripting, sus scripts se pueden escribir en diferentes lenguajes de programación como Java, PHP, Python, C #, Groovy, Ruby y Perl. Tiene una gran flexibilidad y varios niveles de complejidad. Selenium es la base para la mayoría de las otras herramientas de prueba en general.

In the development of software systems, the functionality is the basis for specification, design, maintenance and evolution phase. When the system does not meet the requirements specification or requirements change for various reasons, such as new business goals, new technologies and emerging paradigms of programming, among others, losses are experienced with high costs in the software ... [Show full abstract]View full-text

Las soluciones ITPA de WebImprints están diseñadas para capturar el conocimiento de la organización, para que las tareas repetitivas o manuales de sistemas ya no tengan que ser realizadas por sus empleados. Además, la solución ITPA permite a las empresas a conducir el trabajo eficientemente. Somos un proveedor conocido por servicios de automatización de procesos en México, India, Dubái y otros países. Así con WebImprints su empresa puede beneficiarse de la automatización, mantener su posición competitiva y puede hacer un mejor uso del tiempo y la experiencia de su equipo.
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.    

TestComplete pertenece a SmartBear software, una compañía que ofrece un amplio repertorio de soluciones para la calidad de software. Si hablamos de TestComplete nos referimos a una herramienta orientada a objetos que soporta una gran cantidad de tecnologías tales como Visual Basic, Delphi, C + + y otras herramientas de desarrollo. Se puede ejecutar en los navegadores Internet Explorer, Mozilla Firefox y Google Chrome en sus versiones de 32 y 64 bits y soporta flash y otros complementos. Por el momento sólo ofrece soporte en Windows.

Fue necesario el uso del archivo .sh, debido a que algunos comandos como es el caso de calabash-android gen, exigen una segunda acción como es el para aceptar la creación del proyecto, una vez ejecutado el comando se utiliza el archivo .features solicitado al usuario para ejecutar la prueba, esto es almacenado en un directorio con el nombre del id que identifica la prueba en la base de datos.


Este documento informativo muestra cómo conseguir un sistema ERP global - una solución ERP que facilita las transacciones y procesos de empresa por todo el mundo en una única instancia de software y con una única base de datos. Un sistema ERP global es lo máximo en agilidad empresarial, control y visibilidad global. Vea también algunos consejos practicos. 
×