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
en muchos de los casos, el código es heredado o forma parte de un diseño orientado al reúso de componentes. La arquitectura propuesta está conformada de 3 subsistemas. De acuerdo a la Figura 1, al primero subsistema se le denomina inspector de código. El objetivo de este subsistema es evaluar al sistema en reposo. La primera acción que realiza el inspector es inspeccionar el bytecode para obtener la arquitectura interna del sistema. Esta información se contrasta con la información de la matriz de pruebas, en donde se encuentran los registros de todos los parámetros necesarios para ejecutar correctamente cada caso prueba creado. El segundo subsistema es el evaluador de casos. El principal objetivo de este subsistema es generar un ambiente de evaluación real, en donde un grupo de evaluadores virtuales ejecutan cada uno de los casos de prueba de acuerdo a la funcionalidad del sistema en cuestión. Cada evaluador será apoyado con un aspecto que insertará las cláusulas en la codificación de los parámetros necesarios para cada caso de prueba. La gran ventaja de este enfoque es que no es necesario compilar el código para cada clausula insertada. El último subsistema recopilará la información resultante de cada prueba, en este caso será generada una pequeña una bitácora en el cual será especifica si la prueba fue exitosa o no. La información de las bitácoras generadas se guardará en una base de datos para estimar las métricas, las variables y sus valores del contexto de ejecución en donde se dieron los fallos, para su posterior análisis. El proceso de evaluación del sistema se realizará utilizando la técnica de simulación orientada a eventos discretos. En cada evaluación el tiempo asignado será ejecutado por el selector de casos y cada evaluador virtual será generado de forma aleatoria y automática. Figura 1. Arquitectura de la herramienta de evaluación propuesta. Las ventajas de nuestro framework de evaluación son: • La inspección de la arquitectura será basada en el bytecode o código fuente y en la funcionalidad del sistema. • La emulación de un grupo de evaluadores virtuales en entornos reales de ejecución. • El control de los casos de prueba durante la ejecución mediante la POA permite reducir el costo computacional. Esto es debido a que este proceso en la actualidad se hace mediante complicados algoritmos genéticos. • La utilización la técnica de simulación orientada a eventos discretos permite modelar el comportamiento de los evaluadores de una forma más acercada a la realidad. Conclusiones El proceso de pruebas siempre ha sido muy costoso, pero en la actualidad, los esquemas tradicionales de evolución no son suficientes. Se tienen lenguajes como Java, en donde la mayor parte de su funcionalidad se resuelve a tiempo de ejecución. Esta situación dificulta la planeación y ejecución de pruebas. De acuerdo al análisis de los instrumentos de evaluación reportados en el presente trabajo, se determinó la mayoría de los trabajos se enfoca en la cobertura del código. Dichos instrumentos, utilizan normalmente un
• Mejor organización de las pruebas. Cuando inicias la automatización de tus pruebas, analizas de manera más estructurada. Examinas tu sistema como ingeniero, ya no de manera empírica. Al crear casos de pruebas formulas preguntas tales como: ¿es repetible esta prueba?,  ¿con qué frecuencia necesito ejecutar esta prueba?,  ¿tiene alguna semejanza esta prueba a pruebas existentes?, ¿cómo automatizaría esta prueba?
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.
Los productos de software están constituidos por diferentes componentes. En las pruebas de unidad, cada uno de estos elementos es probado por separado, de manera que se identifican errores de lógica y algoritmos de forma individual. Esto permite validar más detalladamente las funcionalidades del aplicativo, por lo que la identificación y solución de errores será más ágil y precisa.
Paint de Microsoft. Si, hay un montón de alternativas mucho más completas e interesantes, como Greenshot, del que hemos hablado aquí, o Jing, del que hablaremos en breve. Pero en muchos casos, con Paint es suficiente. Es un programa básico, incluído en todas las versiones actuales de Windows, por lo que si usas alguna versión de este sistema operativo, lo usarás a menudo. En 3 simples pasos puedes tener un pantallazo, y con poco más puedes destacar un punto en concreto y añadir un texto descriptivo en la imagen:
Postman es una gran herramienta para probar APIs. Los probadores y desarrolladores pueden utilizar esta herramienta gratuita como una extensión de Chrome o un producto de colaboración en la nube para desarrollar, probar y documentar las API más rápidamente. Permite a los usuarios comprobar el historial de las solicitudes HTTP enviadas, personalizar secuencias de comandos, autocompletar URL, previsualizar imágenes, realizar pruebas de producción, organizar o configuraciones locales con una amplia gama de características y funciones.
Hola Javier, ante todo muchas gracias por tu información, es de gran utilidad. Me gustaría que me recomendases algún programa gratuito que me permita gestionar mi negocio, resulta que tenemos 2 restaurantes y una nave que nos sirve de almacén, en este caso necesitaría un programa para controlar lo que compro a los proveedores y a que precio y también registrar cuantos productos van a cada restaurante, a parte de saber cuantos quedan en almacén en ese momento. Espero que me puedas aconsejar alguno ya que ando bastante perdido. Muchas gracias y un saludo.
Beyond Compare. La última, pero no por ello menos importante, de las herramientas para pruebas de software que vamos a incluir en nuestra top ten de herramientas para testing es Beyond Compare, de la que ya os hablamos en nuestra entrada Beyond Compare. Compara archivos de texto, binarios y carpetas fácilmente. Como ya os indicamos entonces, esta herramienta nos permite comparar archivos y carpetas. Los archivos de texto pueden ser vistos y editados, con sintaxis resaltada y reglas de comparación específicas para documentos, código fuente y HTML.  Los contenidos de texto de archivos Microsoft Word y archivos PDF también se pueden comparar, pero no editar. Archivos de datos, ejecutables, binarios e imágenes, todos tienen visores dedicados, disponiendo siempre de una clara visión de los cambios.

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.
Selenium es un conjunto de diferentes herramientas de software, cada una con un enfoque diferente, para apoyar la automatización de pruebas. La mayoría de los ingenieros de QA de Selenium se centran en una o dos herramientas que satisfacen más las necesidades de su proyecto, sin embargo, aprender todas las herramientas aportará opciones diferentes para abordar distintos problemas de automatización de pruebas. 
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. 

• 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.
Un gestor de tareas es algo así como un bloc de notas muy sofisticado para crear listas de tareas y anotaciones de todo tipo y compartirlas con otros. Destaca sobre todas Evernote , con muchísima diferencia, seguida por RemembertheMilk . Y sólo algunos recomiendan la solución de Google Keep . “Evernote es la más completa para la parte de recopilar, procesar y compartir. Remember the Milk es un complemento perfecto a Evernote para administrar las listas de tareas y asignar tiempos (alarmas, listas automáticas, vencimientos, etc.), aunque se puede prescindir de ella. Las dos son multidispositivo y tienen una gran conexión con herramientas y apps de terceros”, comenta Emilio Rodríguez. Las dos son muy completas en sus versiones gratuitas, aunque en el caso de Evernote, “si la utilizas mucho, merece la pena recurrir a la versión de pago. Cuesta unos 40 euros al año”, explica Emilio Rodríguez.
IFS ofrece también un amplio soporte para múltiples modos de fabricación y procesos de negocio que permite que las divisiones compartan la misma solución de empresa, junto con el soporte de un esquema de impuestos de economías emergentes vitales como Brasil. Y además, una sólida organización de servicios globales con una amplia experiencia en gestionar implementaciones globales.
GitHub es un servicio de repositorio basado en la web para alojar y administrar proyectos de software, versiones y código fuente. Proporciona características como edición en línea, ticketing, seguimiento de errores, administración de tareas, así como funciones de redes sociales como feed, wikis, que ayudan a millones de desarrolladores y probadores a trabajar de manera colaborativa. Promueve el desarrollo rápido y flexible de proyectos con más de 14 millones de usuarios y más de 35 millones de repositorios.
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.

Javier me gustaría que me aconsejaras que programa me serviría para el manejo de una pequeña empresa de inmobiliaria con manejo de administración de inmuebles por arrendamientos y administración de inmuebles consignados para ventas con comisiones como pago y administración de inmuebles con reparaciones y manejo de trabajadores para pequeñas reparaciones. ademas de caja y consignaciones y pagos de comisiones vendedores.


Uno de los hechos más conocidos sobre los defectos del software es que cuanto más tarden en ser detectados, más caro saldrá corregirlos. Aunque la investigación puede variar en cuanto a la proporción exacta de su impacto en los costos, la regla general es 1:10:100. Es decir, si arreglar un defecto cuesta una unidad (hora, dólar, etc.) en fase de requerimientos y diseño, costará 10 unidades en la fase de prueba (sistema/aceptación) y más de 100 veces en producción. Estos costos pueden ser atribuidos a la pérdida de ingresos y clientes, fraude, malas relaciones públicas y demandas, entre otras cosas.

¿Por qué es mejor un marco de automatización de pruebas híbrido? ¿Cómo podemos replicar acciones humanas en las herramientas de automatización? ¿En qué consisten las pruebas basadas en palabras clave? Descubra cómo puede hacer evolucionar los procesos manuales en nuestro informe oficial gratuito: El lado humano de la fase de automatización de pruebas.


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.

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 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.
• Habilitación de pruebas de regresión. Con un conjunto apropiado de pruebas, y habilitados por una herramienta de automatización, cada que generamos un nuevo build de nuestro sistema de software podemos probarlo por completo. Esto es de vital importancia, ya que de acuerdo con un estudio realizado por Capers Jones, en promedio el 7% de las correcciones de defectos inyectan a su vez un nuevo defecto.

Beyond Compare. La última, pero no por ello menos importante, de las herramientas para pruebas de software que vamos a incluir en nuestra top ten de herramientas para testing es Beyond Compare, de la que ya os hablamos en nuestra entrada Beyond Compare. Compara archivos de texto, binarios y carpetas fácilmente. Como ya os indicamos entonces, esta herramienta nos permite comparar archivos y carpetas. Los archivos de texto pueden ser vistos y editados, con sintaxis resaltada y reglas de comparación específicas para documentos, código fuente y HTML.  Los contenidos de texto de archivos Microsoft Word y archivos PDF también se pueden comparar, pero no editar. Archivos de datos, ejecutables, binarios e imágenes, todos tienen visores dedicados, disponiendo siempre de una clara visión de los cambios.
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.
Jenkins es una herramienta para iniciar pruebas continuas y construir la integración a través de la automatización. Proporciona una forma poderosa de administrar los cambios de código, las pruebas y el ciclo de vida del despliegue, junto con la administración de releases, acelerando el ciclo de vida general del desarrollo del software. Hoy en día, Jenkins ofrece soporte para más de 1.200 plugins que le permiten integrarse con cualquier tecnología.
Llevo trabajando de QA en una empresa de educación algo más de 1 año pero en ningún momento hemos automatizado. De programación ando algo corto pues la mayoría de conocimientos son a nivel de sistemas y bbdd por lo que necesitaría una aplicación en la que haya que picar el menor código posible, utilizando principalmente la grabación para pruebas funcionales; la mayoría de nuestras aplicaciones son en .net, formularios web y plataformas lms. Probamos superficialmente Selenium pero no nos terminó de convencer
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.

• Capacidad para aplicar pruebas complicadas. Algunos tipos de prueba son difíciles de aplicar o muy complicadas de ejecutar de manera manual; entre esta rama podemos encontrar aquellas en las que es necesario el acceso a la base de datos para verificar que la información del sistema sea correcta, o tal vez sea preciso hacer cálculos manuales para verificar la validez de los resultados arrojados por el sistema. Muchas herramientas de automatización proporcionan estas funcionalidades. Además, los sistemas de automatización nos pueden auxiliar a introducir grandes cantidades de información, configurar la versión de prueba de la base de datos, y generar información aleatoria entre otras cosas.

El beneficio más notable de una solución integrada de administración empresarial es su capacidad para rastrear, gestionar y reunir todos los datos de la empresa, de forma fácil y privada. Imaginen cada información sobre las ventas de su empresa, finanzas, productos, pedidos, recursos, proyectos, eventos y tareas, accesible en una misma base de datos centralizada. Con ello siempre tendrán una visión general del rendimiento de su empresa y podrán acceder a datos relevantes sin atravesar complicaciones y pérdidas de tiempo para encontrarlos. El software de administración de negocios proporciona herramientas para implementar todos los procesos empresariales y procedimientos ejecutivos que sean importantes, por ejemplo, incluye herramientas de CRM, gestión de equipos, facturación, gestión de proyectos, presupuestación, gestión de nivel ejecutivo, entre otras. También se pueden integrar otras herramientas en función de los deseos y necesidades de cada empresa.
Cada vez las aplicaciones se vuelven más complejas, se le van añadiendo o modificando procesos y si a esto se le suma que el tiempo de entrega de dichas modificaciones disminuye, la inseguridad que produce la calidad final del software se incrementa. Esto ocurre porque muchas veces disminuye la calidad de la parte estable del producto y aumentan las incidencias detectadas.

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


Hablábamos hace unas semanas, en el post de una lista de herramientas de calidad software imprescindibles, sobre como en estos años se ha disparado el número de herramientas para el control de la calidad software. En aquel post hablamos de herramientas de calidad software “estáticas” (es decir, analizan sin ejecutar el software) y de “caja blanca” (analizan en base al código fuente). Y nos quedó pendiente mencionar otro grupo de herramientas de calidad software: las herramientas para pruebas software, de caja negra.
De forma breve, el software de administración de negocios ayuda a gestionar todos los procesos de negocio básicos por medio de un sistema. También ayuda a las empresas de todos los tamaños a recopilar datos e informar sobre los últimos resultados en los diversos procesos en que éstas se desenvuelven. Al ser gestionados todos los aspectos relativos a los negocios por medio de un sistema informático, desde las ventas hasta la contabilidad, se recopilarán todos los datos en un medio interactivo y accesible en cualquier momento y lugar. ¿Siguen gestionando sus tareas e información mediante métodos viejos de administración propensos a errores o hacen uso de herramientas en línea que funcionan mal? Entonces echen un vistazo más de cerca a las principales características y beneficios del software de gestión empresarial, el cual, puede convertirse en una herramienta excepcionalmente poderosa en manos de líderes empresariales inteligentes, y emprendedores con propuestas prometedoras.
Una de las herramientas para pruebas de bases de datos que funcionen con páginas web, escrito completamente en lenguaje Java y orientado directamente a los programadores. Si necesitamos probar la carga masiva de datos y realizar pruebas de esfuerzo a los servidores, debemos utilizar JMeter con un software de monitorización como Pandora FMS (no duden ustedes en contactarnos). Apache JMeter no es un navegador web (no ejecuta el JavaScript del código HTML, por ejemplo) sino que actúa a nivel de protocolo HTTP, HTTPS (Java, NodeJS, PHP, ASP.NET, entre otros), FTP, SMTP(S), POP3(S) e IMAP(S). También ofrece opciones de registro de resultados en un simple archivo de texto, ya que las funciones de monitorización le fueron eliminadas desde la versión 3.2.
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.
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..

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.
×