Yo he usado tres: Trac. intenta muchas cosas, wikis, bugtracker, etc. Y en mi opinión no hace nada bien. Ejemplo de muchas funcionalidades pero ninguna bien. Jira. El que menos he usado pero me pareció un poco tedioso y complejo de usar. Bugzilla. La de horas que habré pasado con este… Es el que mas me gusta. Pero tiene muchas pegas. La primera el UI es un poco feo. Pero bueno se puede vivir con ello. Si no tienes cuidado se puede convertir en una fuente de spam. Yo quitando casi todas las notificaciones recibo mas de 200 mails diarios. Y por ultimo y lo peor de todo es que la búsqueda es muy mala. Los bugtrackers suelen ser unas grandes fuentes de información que se pierde al no ser fácil de encontrar. En mi proyecto, grande, siempre hemos dicho que a bugzilla le falta la capa social. Tener un muro con tus acciones, poder compartir bugs con tus colegas, y hacer favoritos. Añadiría diversión y utilidad. Eso si, solo para proyectos grandes. Para pocos desarrolladores inútil.
Herramientas de Evaluación para Automatizar Pruebas de Sistemas Orientados a Objetos Leticia Dávila-Nicanor1, Ulises Juárez-Martínez2, Alejandro Romero Herrera1 1Maestría en Ciencias de la Computación Centro Universitario UAEM Valle de México Blvd. Universitario s/n Predio San Javier, Atizapán de Zaragoza, México 2Instituto Tecnológico de Orizaba – División de Estudios de Posgrado e Investigación Oriente 9 No. 852, Col. Emiliano Zapata, Orizaba, Veracruz, México, C. P. 94320 alex.romher@gmail.com, ldavilan@uaemex.mx, ujuarez@ito-depi.edu.mx Área de Participación: Ingeniería de Software Resumen La calidad de software se ha convertido en un tema de gran importancia y la base de un gran número de investigaciones. Para obtener mejores niveles de calidad, se han utilizado modelos matemáticos e instrumentos de evaluación. Sin embargo el costo de la evaluación de un sistema es muy alto, esto es debido, a que las pruebas que se realizan a un sistema de software, normalmente son del orden de miles. El objetivo de evaluar un sistema es encontrar la mayor cantidad de fallos posibles optimizando los recursos que se tienen asignados al proyecto. A pesar de muchos esfuerzos, en la actualidad los paradigmas de programación como el orientado a objetos (POO) y el orientado a aspectos (POA), tienen características en donde las técnicas clásicas de pruebas no son suficientes. En este trabajo se propone un novedoso esquema de evaluación para sistemas orientados a objetos, en donde se combina la planeación de las pruebas, apoyada con técnicas de programación orientada a aspectos. Este enfoque mejora la eficiencia de la técnica de pruebas de caja negra para lenguajes como Java. Nuestra herramienta de evaluación se enfoca en medir los niveles de confiabilidad mediante la emulación de un ambiente controlado con evaluadores virtuales, lo que permite reducir los costos y mejorar la eficiencia en el proceso de evaluación. Abstract Quality software has become an issue with great relevance and it has been the basis of many researches. To obtain best quality levels it has been used different math models and assessment tools. However, the cost to evaluate any system is high, due to the test that have been implemented, it must be run thousands of times. Aim of evaluate a software system is to debug most errors so optimize resources allocate to the project of software. In spite of many efforts, currently the programming paradigms like object-oriented programming (OOP) and aspect-oriented programming (AOP), have characteristics where the testing classic techniques are not enough. In this paper we propose a novel evaluation scheme for object-oriented systems, where planning of tests and techniques supported with aspect-oriented programming are combined. This approach improves the efficiency of the technique of black box testing for programming languages like Java. Our assessment tool focuses to measure the levels of reliability by emulating of a controlled environment with virtual evaluators, thereby reducing costs and improvement the efficiency of process of evaluating. Palabras clave: Confiabilidad, pruebas, calidad, programación orientada a objetos. Introducción Durante el proceso de desarrollo de software, la etapa de localización y corrección de fallos, es decir, la fase de pruebas, puede llegar a ocupar desde un 40% hasta 60% de los recursos totales asignados al proyecto de software (Sommerville, 2007). En un contexto ideal, se espera que un sistema desarrollado de una forma adecuada, presente la menor cantidad de fallos posibles. Sin embargo y a pesar de muchos esfuerzos, los
• Mayor confiabilidad en los resultados. El sistema de automatización no se cansa, nunca tiene prisa, y mientras las pruebas o su información no cambie, deben de obtener siempre el mismo resultado; son consistentes, confiables, y repetibles. Como seres humanos te cansas, preocupas, o simplemente apresuras en sacar tu trabajo a tiempo. Todo esto lleva a simples errores humanos que afectan tu capacidad de ser eficiente en pruebas rutinarias. La automatización de pruebas repetitivas que requieren una ejecución frecuente,  te permite tiempo para integrar pruebas más complejas, probar nuevas funciones dentro de la aplicación y su integración con el resto del sistema.
La interacción con el software. Aquí es donde entra la computación en la nube, que nos permite el almacenamiento remoto de la información y el acceso a la misma desde dondequiera que estemos, y el modelo de Software as a Service (SaaS), que no requiere la costosa compra e instalación de software en las computadoras de la empresa, sino solo una suscripción y el pago por utilización.
La empresa Rational® Software lo lanzó inicialmente como “Robotj 1.0” y cuando IBM® adquiere dicha compañía en 2004 lo renombra simplemente como “Rational”® (aunque en su logotipo lo acompaña la palabra “software” en alusión a la compañía madre). De las herramientas para pruebas es la más profunda y compleja y nos atrevemos a decir que es inefable. Los guiones son guardados en lenguaje Java y Visual Basic .NET, aunque a partir de la versión 8.1 se puede interactuar con las capturas de pantalla que se graban en un guión gráfico (algo así como WYSIWYG). Está disponible tanto para Windows como GNU/Linux de forma vertical con “IBM Jazz integration”, como todos los productos de esta gigantesca empresa.

HOLA, SI FUERAN TAN AMABLES ME PODRÍAN DECIR QUE PROGRAMA UTILIZAR PARA UN LOCAL DE REPUESTOS DE AUTOS? NO TIENE NADA, TENGO QUE HACERLO DE CERO, QUIERO CARGAR TODA LA MERCADERÍA PARA SABER STOCK, SEPARAR EN LAS DISTINTAS MARCAS Y MODELOS, PODER CARGAR CÓDIGOS, Y LISTAS DE PRECIO, LISTA DE CLIENTES Y PROVEEDORES, Y EMITIR LA FACTURACIÓN. QUE SIRVA PARA LA COMPU DEL LOCAL, EN CADENA CON UNA SUCURSAL MAS EL CELULAR. HAY ALGO ASÍ? GRACIAS


Interesante artículo y un buen punto de partida para cuando se plantea automatizar parte del proceso de pruebas. Muchas veces vemos que se habla de automatización porque “es algo que está de moda”, lo cual lleva a las compañías a tomar decisiones apresuradas, decisiones que tarde o temprano tendrán consecuencias que a veces resultan nefastas. Definitivamente es clave saber donde realizar verdaderos esfuerzos para automatizar y hacer que esta actividad sea generadora de valor para el proceso mismo de desarrollo y que los resultados obtenidos contribuyan a la toma de decisiones informadas.
También existen soluciones gratuitas, como WooCommerce, que permiten montar un comercio a partir de una web de Wordpress. “Su gracia es que funciona sobre Wordpress, que es una solución tan extendida que mucha gente de marketing y negocio la sabe utilizar a nivel usuario. De esta forma, la curva de entrada es mucho más simple. Yo la recomendaría siempre que tu estrategia de marketing se base en contenidos (posts) y quieras que el blog tenga el mismo protagonismo que la tienda (de esta forma está todo en una misma plataforma)”, comenta Cortizo.
Las pruebas no funcionales tienen como objetivo realizar comprobaciones que garanticen la calidad del producto desde el punto de vista técnico (comportamiento ante altas cargas, volumen y disponibilidad, entre otros) y al mismo tiempo permiten conocer con anterioridad las capacidades, los límites, los problemas y los riesgos relacionados con el desempeño de la arquitectura de las aplicaciones que se liberan en producción.
A problem which confronts the developers of concurrent logic programming (CLP) systems concerns the design of the programming environment, particularly the provision of debugging tools. Debugging tools are useful for many activities besides identifying bugs: they can help in program testing and demonstration, in software experiments, and in teaching the language semantics. For CLP languages the ... [Show full abstract]Read more

Además ten en cuenta, que una buena estrategia de automatización de pruebas conlleva más cosas que solo automatizar las pruebas en sí: crear un buen framework de automatización, parametrizar los tests, las ejecuciones para los distintos entornos, lanzar los test con distintos datos de prueba y gestionar dichos datos, sistemas de logs, buenos reportes con información que sirvan para obtener conclusiones, montar una buena infraestructura contra la que lanzar esos tests, paralelizarlos etc.
Aparte de los software para negocios simples y complicados existen los diseñados a medida que son desarrollados  para determinados tipos de empresas. Hay muchas empresas que tienen necesidades más específicas o dueños de negocios que tienen una preferencia en cuanto a la forma en que quieren que su software  ofrezca opciones para trabajar y consultar. Software que van desde la simple reunión de información hasta un amplio control de múltiples empresas y al ajuste especifico para una necesidad de cada área. Mejorando sus procesos e integraciones.
Principalmente, porque la interfaz de usuario es la parte más propensa a cambios de toda la aplicación, y para automatizar pruebas y tener fiabilidad sobre lo que estamos ejecutando necesitamos cierta estabilidad: un cambio en la interfaz podría hacer fallar la prueba automática, y en ese caso, tendríamos que readaptarla para que volviera a funcionar.
Robot Framework es un framework open-source genérico de automatización de pruebas para pruebas de aceptación y desarrollo basado en pruebas de aceptación (ATDD). Tiene una sintaxis de datos de prueba tabular fácil de usar y utiliza el enfoque de prueba basado en palabras clave (keyword-driven testing). Sus capacidades de prueba pueden ampliarse mediante bibliotecas de prueba implementadas con Python o Java, y los usuarios pueden crear nuevas palabras clave de alto nivel a partir de las existentes usando la misma sintaxis que se usa para crear casos de prueba.
Otras buenas alternativas pueden ser Klout y Mention , muy útiles para gestionar la reputación en redes sociales: qué se dice de ti y qué comentarios tuyos tienen más impacto, quiénes son los usuarios con más influencia, etc. Eso sí, Klout es completamente gratuita, pero Mention dispone de un plan con sus correspondientes tarifas en función del tamaño y tipo de equipo. También merecen la pena otras herramientas más específicas como TwitterSearch , “un buscador en tiempo real para que no te pierdas nada de lo que se dice de ti en esta red”, comenta Isra García. En esta misma red dispones también de soluciones como las de Tweet Alarm
“Son herramientas que nos ayudan a conocer cómo está nuestra web o negocio online, en cuanto a SEO, competidores, keywords, rankings y otra serie de parámetros. En el mercado encontrarás versiones gratuitas y suficientes, como Mozbar y Quicksprout. Para mí esta última es la mejor para informes sobre tu web y para compararte con la competencia”, explica Emilio Rodríguez.
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”.

Algunas pruebas de software tales como las pruebas de regresión intensivas de bajo nivel pueden ser laboriosas y consumir mucho tiempo para su ejecución si se realizan manualmente. Adicionalmente, una aproximación manual puede no ser efectiva para encontrar ciertos tipos de defectos, mientras que las pruebas automatizadas ofrecen una alternativa que lo permite. Una vez que una prueba ha sido automatizada, ésta puede ejecutarse repetitiva y rápidamente en particular con productos de software que tienen ciclos de mantenimiento largo, ya que incluso cambios relativamente menores en la vida de una aplicación pueden inducir fallos en funcionalidades que anteriormente operaban de manera correcta. Existen dos aproximaciones a las pruebas automatizadas:
Nuestros clientes cuentan con un servicio soportado en la metodología TESTMET, basada en lineamientos internacionales para obtener reducción de costos en los proyectos, detección temprana de errores  en los productos de software,  rapidez en la generación de información de calidad para la toma de decisiones y evaluación garantizada de la calidad de los sistemas de información.

Tableau facilita el uso compartido de su información. Es la solución que busca, tanto si desea implementar una solución de análisis completamente hospedada, como local o en la nube pública (con AWS, GCP o Azure). Ayudamos a los clientes a adoptar un enfoque más ágil al proporcionar e implementar el análisis. Y nuestra metodología Tableau Drive permite a los clientes desarrollar su cultura de análisis.

Nuestra metodología de pruebas automatizadas y gestión de calidad consiste en el uso de varios programas y frameworks especiales para controlar la ejecución de pruebas y resultados de pruebas de software. La automatización de pruebas permite hacer pruebas iterativas y necesarias dentro de un proceso de pruebas ya existente o bien adicionar pruebas cuya ejecución manual implicaría mucho trabajo como las pruebas de seguridad, pruebas de aceptación, pruebas de validación, pruebas funcional, pruebas de rendimiento, pruebas de regresión, pruebas de sistema, pruebas de integración y pruebas unitarias de software. Nuestra pasión por automatización de pruebas, nos ha ayudado a potencializar el ROI en los negocios de los clientes, reducir costos humanos y ayudar a los clientes en el ahorro de costo, calendarización y tiempo.

×