Como dijimos, Watir se vale de Selenium y hereda su licencia y muchas de sus características; sin embargo, solamente soporta lenguaje Ruby. Inicialmente desarrollado por Bret Pettichord y Paul Rogers y una comunidad entusiasta de desarrolladores, se centra en automatizar navegadores web tal como lo haría un usuario normal y en la manipulación de todos los elementos HTML. Al igual que en Selenium, se necesita conocimientos profundos en programación y su instalación toma la forma de “RubyGems”, como gestor de paquetes.
¿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.
Posiblemente te dirán que la idea es que vos diseñes y codifiques los tests y luego los desarrolladores puedan mantenerlos/extenderlos pero creeme que eso nunca llegué a verlo. Si los desarrolladores tienen que hacer tests QUE HAGAN SUS TESTS UNITARIOS, bastante tienen con sus tareas como para que le agreguen una tarea mas que es la de las pruebas funcionales. A pocos desarrolladores les gustará la idea. Es lo que siempre vi.
Hola Javier, primero muchas gracias por tan valiosa información. Mi padre lleva muchos años con su negocio que ya es algo así como un micro-mercado y controlar la venta y compra de productos le es imposible, ahora que programa me ayudaría a poder hacerlo? puedo tener un control exacto del negocio? te agradecería mucho la ayuda que me vayas a brindar.
Please. Alguien me puede mencionar alguna herramienta para testear gratis un exe generado con código de Visual Fox Pro, realizado en Genexus. en Microsoft Test Maneger me da el error Cannot perform ‘SetProperty of Text with value “SA”‘ on the control. Additional Details: TechnologyName: ‘MSAA’ Name: ‘CCW333V11’ ControlType: ‘Edit’ SA, es un valor que yo ingreso.. Muchas gracias por su ayuda
Las herramientas de gestión de la reputación online te ayudarán a saber qué dicen de ti y dónde. La más recomendada es Google Alerts, un sistema de alertas que te avisa cuando alguien publica algo sobre tu nombre o marca. Aunque tal y como señala el webmaster Dean Romero, “no hacen falta demasiadas herramientas para saber qué se está diciendo de ti en Google. El algoritmo está muy cualificado para encontrar los términos que busques. Basta teclear tu nombre o tu marca y listo”.
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”.
Las herramientas para pruebas tienen una curiosa historia; desde los años 80, los programadores de juegos como John Romero han tenido códigos especiales para aprobar rápidamente los niveles o ir directamente a la última etapa de programación. Consideramos que eran, de facto, herramientas para pruebas muy rudimentarias, pero debemos tener en cuenta que el costo y capacidad de los ordenadores en aquella época (somos testigos) impedían, en la práctica, el automatizar las pruebas.
Con tantos dispositivos, plataformas y versiones de sistema operativo que se deben comprobar, necesitará tener de su lado el proceso de automatización para volver a tomar el control de los ciclos de lanzamiento. La automatización de las pruebas aprovecha la nube para mejorar la cobertura de las pruebas, evitando así el uso de costosas compilaciones de entornos de prueba.
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
Hoy en día hay muchos tipos de software  adecuados para casi cualquier tipo de negocio. Hay un software sencillo para las tiendas, donde no sólo se marcan las ventas diarias, semanales, mensuales y anuales, .Mediante el uso de un programa que se aloja en un servidor web, Ud. tiene la capacidad de conectarse con cualquier persona que esté en el mismo sistema de su organización. Las pequeñas empresas están usando esto para ayudar a reducir sus costos de almacenamiento.
En primer lugar quería felicitarte, es muy útil todo lo que posteastes, y aprovecho la oportunidad para preguntarte lo siguiente: acabo de abrir una escuela de informática, quería un software que me sirva para cargar mis alumnos, horarios, cuotas mensuales, y que eso lo pueda llevar paralelo con los gastos, en síntesis que me ayude a administrar la escuela..
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.
La automatización de pruebas debe implicar a todo el equipo de desarrollo, desde los analistas empresariales hasta los evaluadores. Nuestras pruebas basadas en roles permiten que los participantes de la empresa con perfil no técnico, ingenieros de control de calidad y programadores contribuyan a la creación de pruebas, lo que se traduce en calidad y velocidad.

En este siglo XXI, los equipos pronto comenzaron a sobrepasar las capacidades de uso de sus propietarios y la potencia de cálculo nos permitió usarlos más allá del uso común y corriente. Una de esas tareas es la ejecución de herramientas para pruebas, orientadas hacia el campo que nos incumbe aquí: la monitorización. Las herramientas para pruebas se utilizan, por ejemplo, en la monitorización de Caja Abierta y Cerrada, y en el artículo sobre la optimización de rendimiento web os nombramos algunas de ellas (“Selenio, TestingWhiz y TestCompleto”). Por supuesto, Pandora FMS y la flexibilidad que le caracteriza combina todo ello en la Monitorización UX PWR. Os invitamos a leer dichas publicaciones y regresar con nosotros a este artículo para profundizar en las herramientas para pruebas.
Otra forma de realizar estudios de mercado es detectando tendencias en Internet, con herramientas gratuitas como Google Trends, que refleja qué palabras clave busca la gente diariamente, “las modas de búsqueda del momento: por ejemplo, qué juguetes se han buscado más en Reyes”, añade Romero. O realizando tus propias encuestas por correo electrónico con soluciones como SurveyMonkey, también gratuita.
Para mantener las operaciones organizadas e impedir que los animales domésticos sean difíciles de ubicar y hasta se pierdan, los emprendedores en este rubro dependen de programas de computadora que almacena fotos de las mascotas, escanean los códigos de barras en las etiquetas de identificación de las mascotas, hacen el seguimiento de la información de registro y proporcionan informes relativos a todas las mascotas que se encuentren actualmente en las instalaciones.
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.
Firebug es una extensión de navegador web que ayuda a los probadores en la depuración, edición y supervisión en línea de CSS, HTML y JavaScript de la aplicación web. Firebug junto con Firepath se utiliza para identificar XPath de cualquier elemento. Tanto Firebug como Firepath pueden instalarse como una extensión para Mozilla Firefox, mientras que Firebug Lite se puede agregar como una extensión de Chrome que proporciona una rica presentación de elementos HTML y DOM para la edición en directo.
sistemas que se desarrollan en la actualidad siguen presentando fallos en su ejecución, dichos fallos tienen costos significativamente altos. El propósito general de evaluar sistemas es localizar la mayor cantidad de fallos posibles para corregirlos. De acuerdo al estándar IEEE 1633-2008 (Norman F. Schneidewind, 2008), un fallo es una condición accidental que hace que una unidad funcional falle al ejecutar su función requerida. La funcionalidad del sistema queda establecida desde la etapa de análisis y especificación de requerimientos del proceso de desarrollo de software. La importancia de un buen proceso de evaluación se debe a que si no se realizan las pruebas de forma pertinente y adecuada, es imposible asegurar que un producto de software cumple con la funcionalidad de acuerdo a las especificaciones establecidas en relación con los requerimientos del sistema. Sin embargo el número de pruebas que se realizan para localizar y corregir fallos presenta una tendencia exponencial (Jelinski, 1972). Durante la etapa de pruebas, se tienen dos enfoques que son de gran importancia para lograr identificar los fallos existentes en un sistema, estos son la Verificación y Validación. Durante la Verificación se determina si el sistema o una parte de él operan de una manera satisfactoria. Bajo el enfoque de Validación se determina si un sistema o parte de él satisface los requerimientos establecidos por el cliente. Así esta fase del proceso de desarrollo es una forma de medir y mejorar la confiabilidad de software. Este artículo está organizado de la siguiente forma, en la sección 2 se presenta el marco teórico en donde el concepto de confiabilidad de software es abordado. En la sección 3 se describen algunas herramientas de evaluación de sistemas orientados a objetos. En la sección 4 se presenta la propuesta del presente trabajo. Finalmente en la sección 4 se exponen algunas conclusiones y el trabajo a futuro. Marco teórico La confiabilidad de software se define como la probabilidad que tiene un sistema de operar libre de fallos durante un tiempo determinado en un ambiente específico (Musa, 2004). Esta es un área de gran importancia en el proceso de desarrollo de software. En la actualidad la confiabilidad es un atributo de calidad que se exige en el desarrollo de cualquier aplicación de software. Cuando las aplicaciones de software carecen de confiabilidad se tienen consecuencias económicas, políticas y sociales. Para tener niveles adecuados de confiabilidad es necesario evaluar al sistema en cuestión, localizar y corregir la mayor cantidad de fallos antes de que el producto final sea liberado. Pruebas de software La fase de pruebas es una tarea que consume muchos recursos. Para ejecutar esta fase en la práctica las organizaciones que desarrollan software asignan un grupo de evaluadores físicos, los cuales realizan este proceso de forma manual en un lapso de varios meses e incluso años. Este enfoque consume mucho tiempo y conlleva altos costos. Para lograr una cobertura adecuada en la evaluación del sistema en cuestión, es necesario: seleccionar los datos de prueba, las variables del entorno de evaluación, determinar el número de pruebas y el tiempo asignado para este proceso. En la ejecución de la cobertura de evaluación, algunos autores desarrollan modelos de predecibilidad apoyados de métricas de software (Basili, 1996). Para optimizar los recursos que son empleados en la ejecución de miles o millones de pruebas es adecuado utilizar instrumentos de evaluación (Ragab, 2010). Se han realizado algunas propuestas para evaluar sistemas en Internet, entre estas propuestas esta (Davila-Nicanor, 2005), en donde se desarrolló un herramienta la cual automatiza la ejecución de las pruebas, reduciendo el tiempo proyectado para la ejecución de 5000 pruebas funcionales de 4 años a tan solo 6 horas. En la evaluación dinámica de un sistema de software, muchos autores se han enfocado principalmente en 2 tipos de pruebas: las pruebas unitarias y las pruebas de integración. Una cantidad importante de trabajos se han enfocado a pruebas unitarias. Mientras que en pruebas integrales existe una menor incidencia de trabajos. Es importante resaltar que para este último enfoque el contexto de operación es determinante, tal es el caso del lenguaje Java, en el cual las clausulas más importantes se resuelven a tiempo de ejecución, un ejemplo de ello son aspectos como el polimorfismo y la herencia. Pruebas Unitarias Durante la fase de pruebas, el proceso de evaluación tiene dos aspectos importantes, el primero está orientado al desarrollo de pruebas unitarias o modulares. Estas pruebas se basan en comprobar unidades individuales de código y determinar si estas cumplen con los requerimientos establecidos. Cuando hablamos de unidades nos referimos a secciones del código que pueden probarse de forma independiente. En un sistema orientado a

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.

El término engloba una amplia variedad de aplicaciones informáticas que incluyen desde programas de contabilidad y de ofimática, hasta sistemas de planificación de recursos empresariales (ERP), pasando por programas de gestión de clientes (CRM) y de recursos humanos, así como programas de administración de la cadena de suministros (SCM), etc. Con estos se suele incluir un servicio para dar soporte técnico a las empresas que los usan, como también orientarlas en problemas y dar soluciones, según los protocolos de cada distribuidor.
Javier: hay un tema que generalmente queda por fuera de los sistemas tradicionales de hotelería y restaurantes y es el de gestión de pedidos a proveedores. Con http://horecabot.com (tiene versión gratis) eliminas "malos entendidos" con los proveedores a la hora de comunicarles lo que necesitas así como hacer seguimiento de tus costos. Aquí lo explica https://www.youtube.com/watch?v=irW-aaZa5mk

Presentado como trabajo de Maestría por Pekka Klärck y desarrollada en la empresa “Nokia Siemens Networks” ese mismo año, a partir de la versión 2.0 fue cambiada como software libre (año 2008) y su versión 3.0 llegó el año pasado. Escrita en Python y con licencia Apache 2.0, es posible su utilización principalmente con Java y .NET (con complementos se puede utilizar Perl, Javascript y PHP). Como muchas otras librerías de Python, se instala por medio PIP, y las librerías de Selenium Web Driver se deben instalar en un segundo paso; luego podremos instalar librerías adicionales para MongoDB, FTP, Android, Appium (una aplicación especializada en ejecución de guiones bajo Android e iOS) y muchas más. Robot framework utiliza también pruebas dirigidas por palabras clave.
Otra duda razonable. Si existen herramientas todo en uno, ¿merece la pena escoger una más completa o las buscamos por especialidades? “Depende de las necesidades de la empresa. Para muchas, un software integrado que incluya funcionalidades de CRM y de ERP puede ser más que suficiente. Ahora bien, hay empresas donde alguna de estas partes cobra mucha importancia y necesitan un software específico. Por ejemplo, en retailers, el ERP es fundamental para gestionar bien el stock, las necesidades de compra, etc.”, explica José Carlos Cortizo.
Bugzilla es otra herramienta de rastreo y prueba de defectos que es ampliamente utilizada por los probadores para realizar un seguimiento de los errores pendientes. Viene con una variedad de características tales como un sistema integrado del email, gerencia avanzada de la pregunta, sistema de los permisos, el sistema incorporado del informe así como los perfiles editable del usuario para asegurar proceso de prueba liso y eficaz.
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.
×