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.
Hola Javier un gusto saludarte. Te comento que soy encargado de almacenes en una empresa constructora, en donde manejamos ingreso y salida de materiales de construcción, equipos, repuestos, herramientas, etc., en la oficina central y en coordinación con los almacenes de los campamentos de obra. Me gustaría que puedas aconsejarme un programa que me permita desarrollar estas actividades para tener un mejor control de los almacenes. Agradecido de antemano.......

· Sin desmerecer ningún lenguaje ya que todos son herramientas y/o formas de comunicación con una computadora creo que (es mi opinión personal) para una persona que no sabe o sus conocimientos sobre programación son muy pocos, un lenguaje del estilo C#, .NET, Java que son lenguajes compilados, se hace un poco mas costoso el aprendizaje, es decir que la curva se hace un poco mas pesada en la relación Aprendido/tiempo.
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.
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.

• 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?
Llevar el registro de los inscriptos en una clase son el “pan y manteca” para los centros de artes marciales, gimnasios, estudios de baile y colegios privados. En todo momento, es necesario saber cuántos estudiantes están registrados en cada clase. Esto les ayuda a determinar si deben agregar clases o si es necesario cancelar una clase debido a la baja inscripción.

Aquí no estamos para realizar evaluaciones financieras de empresas; no obstante, es insoslayable la experiencia de la casa de software y no podíamos dejar de nombrarla. Dicha experiencia la cobran muy bien en su producto y así como desembolsamos dinero para su licencia, “desembolsaremos” tiempo en su instalación y entrenamiento de usuarios, ambas tareas complejas. Como atenuante, nuestro usuario beta no deberá tener grandes habilidades de programación; VBscript es una tecnología con muchos años en el mercado y con mucha gente capacitada que lo maneja; la oferta es grande y baja nuestro presupuesto en empleados. Cuenta con interfaz de usuario web, API, versión para ordenador de escritorio y aplicación web. Tiene componentes de prueba reutilizables, documentación automatizada y se integra con herramientas de desarrollo continuo como por ejemplo Jenkis (el cual os presentamos recientemente en otro artículo). De manera adicional, como complemento, UFT ofrece “Lean Functional Testing” (LeanFT) para creación de pruebas con Visual Studio (C#) o Eclipse (Java).

La realización de pruebas manuales y automatizadas no debería ser excluyente entre sí. Mientras que unas garantizan la calidad, las otras incrementan la velocidad, de forma que puede seguir el ritmo de desarrollo y los ciclos rápidos de lanzamiento Agile. Mediante nuestro enfoque híbrido, puede escalar las pruebas para satisfacer todas sus necesidades, reducir laboriosos procesos manuales por medio de la automatización, y conservar aun así el toque humano.
PhantomJS es un navegador que se utiliza para automatizar las interacciones de la página con fines de prueba. Ayuda a los usuarios a habilitar la navegación y el comportamiento del usuario en una página sin cargar la interfaz gráfica. PhantomJS imita y manipula una página web para llevar a cabo la automatización de pruebas que en última instancia, ahorra una tremenda cantidad de tiempo para los probadores.
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.
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.    

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.
El reto planteado para la entrega final de la asignatura, una vez visto, aprendido y puesta en práctica las técnicas anteriormente mencionadas, era el desarrollo de una herramienta que realizará pruebas automáticas, bien sea de aplicaciones web o de aplicaciones móviles, en este caso era posible extender las existentes, lo que el usuario debía entregar era el denominado SUT (Software under test) como podía ser la URL de una aplicación web o el empaquetado de una aplicación nativa, en este caso Android (APK).

La automatización de pruebas es la práctica que permite controlar la ejecución de un producto software de manera automática, comparando los resultados obtenidos con los resultados esperados. Esta práctica permite no solo realizar pruebas repetitivas dentro de un proceso sino probar ejecuciones que manualmente serían difíciles de controlar. Sin embargo, la automatización de pruebas funcionales, no tiene como objetivo eliminar el testing manual, sino ayudarlo y complementarlo. Si automatizamos aquello que puede ser automatizado, entonces los testers tendrán más tiempo y podrán centrar sus esfuerzos en resolver los aspectos más complejos que se le escapan a la automatización de pruebas unitarias o repetitivas. En palabras de Alexandra Blasco: “la automatización consiste en la construcción de un conjunto de scripts reutilizables, con los que podemos aumentar drásticamente la capacidad de testear software en lo que respecta a pruebas de regresión antes y después de la publicación de una nueva versión. Dichos scripts se ajustan a cada funcionalidad y nos aportan una información del impacto de los cambios realizados”.
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.
Buenos Días, yo deseo crear una empresa y comenzar por un negocio de venta de Ropa, como voy a solicitar un crédito para eso, no me deseo retirar de trabajar hasta que mi negocio este bien posicionado, y si Dios lo permita pueda abrir una segunda sucursal, por eso necesito un programa en el cual pueda controlar el Inventario de lo que comprare para iniciar por medio de un codigo de barras o algo asi, que me permita ver las ventas del dia, y lo que tengo en stock, y a fin de mes poder verificar cual es el articulo que mas tuvo movimiento.... Agradezco si me puedes colaborar

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.
Si nos fijamos en cualquier empresa que valore la importancia de la calidad de sus productos y servicios, probablemente habrá contratado profesionales especializados en pruebas, ya sean externos o internos. Según la organización y el tamaño de la empresa, estos recursos pueden formar parte del equipo de Testing y Calidad o estar contratados exclusivamente para proyectos específicos.
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.
×