Autana Framework for Automated Siebel Testing - FASTEST

801 views
624 views

Published on

Herramienta para la automatización de pruebas en Siebel

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
801
On SlideShare
0
From Embeds
0
Number of Embeds
19
Actions
Shares
0
Downloads
5
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide
  • La calidad del software se refiere a dos nociones relacionadas pero distintas que existen, siempre que se define calidad en un contexto de negocio.Calidad funcional del software : refleja lo bien que cumple con o se ajusta a un modelo determinado, basado en requerimientos    funcionales o especificaciones;Calidad estructural del software : se refiere a la forma en que cumple con los requisitos no funcionales que soportan la entrega de los requerimientos      funcionales,   como la robustez, la facilidad de mantenimiento, el grado en que el software se ha producido correctamente.El control de calidad de Software implica todo el proceso de desarrollo, seguimiento y mejora continua, asegurándose de que se cumple todo lo acordado en los procesos, las normas y los procedimientos que se siguen, y que los problemas se encuentren y se resuelvan. La calidad estructural se evalúa mediante la análisis de la estructura interna del software, de su código fuente, a nivel de unidad, a nivel de tecnología y a nivel de sistemas, o sea si su arquitectura está de acuerdo con los principios de la arquitectura de software.Las cinco características estructurales deseables necesarias para que un trozo o programa de software proporcione valor de negocio son: Fiabilidad, Eficiencia, Seguridad, facilidad de mantenimiento y (adecuado) tamaño.La calidad funcional normalmente se aplica y se mide a través de las pruebas de software.
  • La solución de problemas es un proceso de alta visibilidad, la prevención de problemas es de baja visibilidad.Este es un problema en cualquier negocio pero es particularmente difícil en la industria del software. Los problemas de calidad de software, a menudo, no son tan evidentes en contraste con el caso de una industria que fabrica productos tangibles, como automóvilesLos costes de no calidad son difíciles de medirExiste dificultad para definir las causas de la no calidad.
  • Un departamento interno de control de calidad no sólo exige una evidente inversión, sino que también existen gastos ocultos que pueden elevar el precio global del proceso de control de calidad. Los costos que las empresas deben considerar a la hora de constituir un equipo interno de QA son:Costes salariales (reclutamiento, salario, impuestos, seguros, etc)Beneficios a los empleadosTI y los costos de infraestructura (ordenador, fax, software (incluyendo certificados), Internet, infraestructura de red, helpdesk, mantenimientos, teléfono, correo electrónico y alojamiento web, correo de voz, etc)Gastos de formaciónGastos de oficina (oficinas, áreas comunes, mobiliario, seguro de responsabilidad civil, material de oficina, papel, tóner, etc)En última instancia, los clientes se encuentran que externalizar el QA llega a ser más competitivo - por no hablar de que la subcontratación puede reducir los dolores de cabeza de gestión de personal y libera tiempo para perseguir otros objetivos de negocio.
  • Independientemente del alcance y la frecuencia de las necesidades de pruebas de un proyecto, a menudo es rentable y supone ahorro de tiempo contratar a un equipo independiente de profesionales de control de calidad para hacer el trabajo. La subcontratación del QA ahorra a las empresas costes excesivos o inesperados y tiempo que, de otra manera, se gastaría en la creación y mantenimiento de un equipo cualificado de ingenieros de control de calidad.
  • Hay dos opciones naturales para implementar la función de garantía de la calidad del software (SQA). Un enfoque mantiene independiente el control de calidad del equipo de desarrollo , es decir, el equipo de control de calidad reporta directamente al cliente. Alternativamente, QA puede ser parte del equipo de desarrollo existente. En este caso los informes de los equipos de control de calidad son para el director del proyecto de desarrollo, que tiene la última palabra en todas las cuestiones.SQA es una disciplina compleja que requiere del adecuado proceso organizativo y la experiencia. En primer lugar, deben participar los perfiles adecuados. Pensar que un perfil especializado en desarrollo de software también es adecuado para la realización de las actividades de control de calidad es un error común que puede costar muy caro. El desarrollo y los procesos de control de calidad son totalmente diferentes y requieren diferentes habilidades y competencias, que generalmente, no se encuentran en una sola persona.Por otra parte, sólo un equipo de control de calidad independiente tiene la capacidad para desarrollar todas las habilidades y competencias necesarias. Este conocimiento se obtiene mediante pruebas de muchos productos, mediante la mejora continua de los procesos y procedimientos de control de calidad, y con la adquisición y desarrollo de las herramientas pertinentes. Para los clientes que nunca han probado el control de calidad independiente, trabajar con el equipo de profesionales de AUTANApuede ser la forma más fácil de iniciar y evaluar los posibles beneficios para el negocio.
  • Nuestra experiencia en la industria indica, claramente, que los equipos de control de calidad independientes ofrecen mejores resultados y que con ellos el cliente siempre obtiene una imagen precisa la calidad del software. Además, el control de calidad independiente se centra en poner de manifiesto todos los problemas lo antes posible, en contraste con la situación de control de calidad integrada, cuando el director del proyecto de desarrollo puede ser demasiado optimista sobre el estado real del proyecto. Con demasiada frecuencia, el enfoque integrado da lugar a problemas ocultos que aparecen en las etapas finales de desarrollo de productos o, incluso, después de la liberación del producto. Necesidad de mayor Transparencia.Se necesitan equipos especializados con las habilidades y competencias adecuadas.Se debe establecer una mejora continua de procesos.Se debe establecer un riguroso control de calidad:Reducción de no conformidadesReducción de los costes de no calidadEste enfoque proporciona los mejores resultados desde el principio, sin necesidad de esperar a final del desarrollo y el crecimiento del equipo interno dedicado al proyecto.AUTANA invierte continuamente en la mejora de procesos y la capacitación del personal y seleccionará las mejores herramientas disponibles en el mercado con el fin de proporcionar la más alta calidad de servicio y de mantener la reputación de nuestra empresa como un proveedor de control de calidad fiable.
  • El resultado es que no se aprovechan todas las capacidades ofrecidas por herramientas. Al final, se utilizan exclusivamente para las pruebas básicas de regresión, o para los “sanitychecks”Hemos desarrollado un Framework basado en Java que extiende las capacidades de IBM RationalFunctionalTester
  • Es indiscutible que la automatizaciónde las pruebas funcionales es imprescindible para asegurar la calidad de cualquier implementación compleja – especialmente en Siebel - pero siempre han existido dudas sobre la posibilidad de automatizar el 100% delas pruebas con éxito, por los siguientes motivos:El proceso de grabación de scripts funcionales – con cualquier herramienta de Testing Funcional del mercado - está totalmente ligado a los interfaces de usuario. Esto significa que se debe de disponer de un mínimo avance en el Desarrollo antes de poder comenzar a diseñar/grabar los scripts de automatización.Los retrasos habituales en el Desarrollo también retrasan el arranque de la fase de Testing. Esto significa una pérdida de dinero para el Cliente Final y para el Proveedor de Testing ya que no se ejecutarán todas las pruebas estimadas y, por lo tanto, no se asegura la calidad del Software al 100%.Cualquier cambio en el desarrollo de los interfaces de usuario impacta en el mantenimiento de los scripts de las pruebas automatizadas. Supone una inversión adicional importante porque será necesario modificar los scripts existentes o volver a grabar el escenario por completo para adaptarlos a los cambios en el software.En el caso de herramientas como RationalFunctionalTester, o HP Quick Test Pro, se requiere experiencia avanzada en la utilización de las mismas, además de conocimientos de programación en Java, Visual Basic o C.El resultado es que no se aprovechan todas las capacidades ofrecidas por herramientas como RFT o QTP. Al final, se utilizan exclusivamente para las pruebas básicas de regresión, o para los “sanitychecks” – no se validarán por tanto todos los requisitos de los procesos de negocio. Con Fastestse pueden automatizar con seguridad el 100% de los casos de prueba, con todas las combinaciones posibles, mediante sencillos comandos en excelEs independiente de la GUI, ya que accede directamente a los objetos del repositorio de Siebel, sin grabación de scripts por pantallaLos retrasos en desarrollo no afectarán sensiblemente ya que los objetos del repositorio seguirán siendo sustancialmente los mismosLos cambios en el desarrollo igualmente afectarán en menor medida al ser indenpendientes de la GUINo son necesarios conocimientos de programación, el keyword-driven usa comandos sencillos e intuitivos
  • Simplificamospor completo el modo en el que se diseñan, mantienen y ejecutan las pruebas. ¿Cómo? Introduciendo un nuevo concepto: Keyword-DrivenAutomatedTesting.Mediante este nuevo concepto, aportamos un ahorro en TIEMPO y en RECURSOS.
  • No existe un proceso de grabación de scripts. Eliminamos la necesidad de contratar Testers que poseen experiencia con una herramienta de Testing en concreto. En vez de grabar y mantener los scripts generados por las herramientas actuales, en nuestro caso el input para las pruebas automatizadas son Test Cases Automatizados. Sólo hace falta conocer una serie de comandos intuitivos, saber rellenar una Hoja de Cálculo, o saber seguir las instrucciones de un asistente. Eliminamos la necesidad de conocer lenguajes de scripting.Enlugar de depender de Testers para programar y ejecutar los scripts, nuestro sistema arranca automáticamente con un solo “click” e interpreta los comandos secuenciales que se introducen en Hojas de Cálculo o en tablas de BBDD. Es un sistema inteligente e independiente de equipos de Testing.Genera reportes automáticos con los resultados
  • La creación de nuestros Test Cases Automatizados puede comenzar en paralelo a la fase de Diseño Técnico. No esnecesariodisponer de un interfaz de usuarioparaempezar a diseñarlaspruebasautomatizadas.Aseguramos la posibilidad de ejecutar el 100% de los Test Cases estimados con menosesfuerzo manual.La creación de nuestros Test Cases Automatizados no requiere expertise en lenguajes de programación o en herramientas de Testing. El proceso de diseño y mantenimiento es más ágil, más sencillo : se requieren menos recursos.Los cambios habituales en los interfaces de usuario no nos afectarán! Disminuimos la inversión en tiempo para modificar o mantener los Test Cases AutomatizadosLas pruebas se pueden ejecutar una y otra vez, indefinidamente (pruebas de regresión y sanitychecks)Se pueden automatizar las pruebas de cualquier fase (UnitTest, SystemTest, IntegratedTest, UserAcceptanceTest)En consecuencia, se puedenejecutarmáscasos de prueba en menostiempo, con menosrecursos. Estoredundará en un aumento de la calidaden lasentregas del software, ahorrandotiempo y dinero.
  • Ahorro endiseño, porque se hace en paralelo al diseño técnico, con keyword-driven intuitivo, independiente de la interfaz de usuarioAhorro enmantenimiento, al ser independiente de la interfaz de usuarioAhorro en laejecución, al ser automática, con un sencillo clickAhorro enrecursos, al necesitarse menos gente para la ejecuciónReducción de no conformidades, al ser usado desde prueba unitaria, aumentando la calidad en la entregaEn suma, se reduce el coste de la fase de testing, y el coste (más difícil de medir) de la no calidad (rehacer código, rehacer pruebas, retrasos en las entregas, penalizaciones, …)
  • Ahorro endiseño, porque se hace en paralelo al diseño técnico, con keyword-driven intuitivo, independiente de la interfaz de usuarioAhorro enmantenimiento, al ser independiente de la interfaz de usuarioAhorro en laejecución, al ser automática, con un sencillo clickAhorro enrecursos, al necesitarse menos gente para la ejecuciónReducción de no conformidades, al ser usado desde prueba unitaria, aumentando la calidad en la entregaEn suma, se reduce el coste de la fase de testing, y el coste (más difícil de medir) de la no calidad (rehacer código, rehacer pruebas, retrasos en las entregas, penalizaciones, …)
  • Con el mismocostejornadas/hombre, con Fastest se aumenta un 333% los casos de pruebaque se puedenejecutar
  • Para ejecutar el mismonúmero de casos de prueba, el coste se reduce en un 70%
  • Con Fastest conseguimosaumentar el número de casos de pruebaejecutadosreduciendo el coste
  • Fases habituales en los proyectos (no se han incluido las fases posteriores de capacitación, Pase a Producción, Garantía, etc)Durante la fase de macro diseño (diseño funcional), se elaboran los casos de prueba a alto nivel (HighLevelTestCases)Durante la fase de micro diseño (diseño técnico), se elaboran en detalle los casos de prueba (DetailedTestCases).Cambios en el desarrollo impactarán en los casos de prueba diseñados.La ejecución de las pruebas comenzará una vez estén listos los desarrollos y la interfaz de usuario.
  • Con otras herramientas de automatización:Si optamos por una herramienta de automatización de pruebas del mercado, no podemos empezar a diseñar los casos de prueba detallados hasta que la interfaz de usuario esté lista (el script de automatización consiste en la grabación de la prueba en la pantalla, es decir, se necesita la interfaz de usuario).El desarrollo tiene que estar avanzado para poder automatizar pruebas (interfaz de usuario necesaria)Cambios en el desarrollo afectarán a los scriptsCualquier cambio en la interfaz de usuario afectará a los scripts automatizados, que tendrán que ser adaptadosAlto coste de mantenimiento de los scriptsLa ejecución de las pruebas sufrirá retrasosCon FASTEST:Los DTC se pueden empezar a programar en fase de diseño técnicoLa ejecución de las pruebas puede comenzar tan pronto esté listo el desarrollo (se pueden automatizar pruebas unitarias)Los cambios en la interfaz de usuario no nos afectaránSe puede adelantar la ejecución de las pruebas, desde la fase de pruebas unitariasLos cambios en la GUI no requieren cambiar el test case automatizadoEl impacto de los cambios en desarrollo es menor.Las pruebas se pueden ejecutar más veces, durante más tiempo, sin coste adicionalTodo al final redunda en un Aumento de la calidad
  • Se integra con RationalQuality Manager:Diseño Centralizado de los Escenarios de Pruebas.Ejecución Centralizada de las Pruebas.Monitorización y Reporting Centralizado.Gestión de Defectos Centralizado.Reportes:Genera automáticamente los resultados en formato HTML, Word.Genera automáticamente las evidencias de las pruebas ejecutadas (configurable).Más Calidad, menos Recursos:Mayor número de casos de prueba en menor tiempoMenosrecursoshumanosnecesariosReducción de incidenciasEntregas más fiablesEficiencia de la aplicaciónSatisfacción de los usuariosMenosnecesidad de soportedurante la ejecución de pruebas UATSe reduce la dependencia de los usuarios en las UAT:Intervienen en el último momento para validar los casos de uso (ya vienen bien probados desde fases anteriores con lo que ya no fallarán). Se reduce el tiempo de dedicación requerida por los usuarios clave ya que se pueden realizar las pruebas uat de manera automática.Cumplimiento de los compromisos planificados en tiempo y formaReducción del time-to-market de los cambiosevolutivosFiabilidadPosibilidad de realizar sin esfuerzo PRUEBAS DE REGRESIÓNMayor fiabilidad: eliminamos el margen de error humano.Los casos de prueba se diseñan una vez y se ejecutan “N” veces automáticamente.
  • REDUCCIÓN DE COSTESAUMENTO DE LA CALIDAD
  • A partir de Siebel 8Reconoce objetos HTML y objetos SiebelSe puede extender el Framework para reconocer objetos de otras tecnologías.
  • REDUCCIÓN DE COSTESAUMENTO DE LA CALIDAD
  • Autana Framework for Automated Siebel Testing - FASTEST

    1. 1. Automatización de Pruebas en Siebel 8 Julio, 2013 autana Business Partners
    2. 2. Automatización de Pruebas en Siebel 8 Agosto, 2013 autana Business Partners
    3. 3. El Control de Calidad
    4. 4. ¿Qué es "Control de Calidad de Software"? El control de calidad está orientado a la prevención Fiabilidad, Eficiencia, Seguridad, f acilidad de mantenimiento y (adecuado) tamaño.
    5. 5. ¿Por qué es a veces difícil para las organizaciones tomar en serio la garantía de calidad? Solución: alta visibilidad Prevención: baja visibilidad. Los problemas de calidad de software, a menudo, no son tan evidentes en contraste con el caso de otras industrias
    6. 6. Externalización del QA
    7. 7. Los costes del QA Salarios Beneficios Sociales Costes de IT Formación Oficinas
    8. 8. Por qué gestionar de forma diferente el QA La subcontratación del QA ahorra a las empresas costes excesivos o inesperados
    9. 9. Opciones Equipo Integrado Equipo Independiente
    10. 10. MEJORES RESULTADOS Independencia Transparencia HabilidadesMejora continua Control de calidad
    11. 11. autana Business Partners
    12. 12. Framework basado en Java que extiende las capacidades de IBM Rational Functional Tester.
    13. 13. Dudas Dependencia de GUI Impacto de Retrasos Cambios en DEV Programación Otras herramientas Aseguramos el 100% Independiente Menor impacto Menor impacto Keyword- driven FASTEST
    14. 14. Simplificación Keyword-driven Ahorro
    15. 15. No grabación No lenguajes de scripting Input: Excel Ejecución automática Reporte
    16. 16. Ahorro de tiempo y costes
    17. 17. Aumento de la calidad Arranque en Fase de diseño 100% TC ejecutados Menor esfuerzo Independencia de GUI Re-ejecuciones Más casos de prueba en menos tiempo En todas las fases
    18. 18. REDUCCIÓN DE COSTE Diseño Mantenimiento Ejecución Recursos No Conformidades
    19. 19. Ahorro en Testing + Reducción de la No Calidad
    20. 20. 0 0.5 1 1.5 2 2.5 3 3.5 Manual FASTEST Casos de Prueba Ejecutados Mismo coste, más casos de prueba Núm. Casos de Prueba
    21. 21. Mismos casos de prueba, menos coste 0 1 2 3 4 5 6 7 8 9 10 Manual FASTEST Coste por Caso Coste
    22. 22. Reducción de coste Aumento de casos de prueba 0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 2 Manual FASTEST Coste-Núm. Casos de Prueba Coste Núm. Casos
    23. 23. Comparativa autana Business Partners
    24. 24. Ciclo habitual en la ejecución de proyectos Diseño y Ejecución de Pruebas MANUALMENTE Análisis de negocio Macro Diseño Micro Diseño Desarrollo Pruebas Casos de Uso Casos de Prueba Alto Nivel Casos de Prueba Detallados Ejecución de Pruebas HLTC1 HLTC n … Req. DTC1 DTC2 DTC n
    25. 25. Preparar Entorno Pruebas Diseñar Test Cases Automatizados Configurar Framework Verificar Test Cases Automatizados Comenzar Pruebas Funcionales FasedeDesarrollo Analizar Resultados FasedeTesting
    26. 26. Otras herramientas del mercado vs. Casos de Uso Casos de Prueba Alto Nivel Casos de Prueba Detallados Ejecución de Pruebas Análisis de negocio Macro Diseño Micro Diseño Desarrollo Pruebas Casos de Uso Casos de Prueba Alto Nivel Casos de Prueba Detallados Ejecución de Pruebas Casos de Prueba Detallados Ejecución de pruebas AUMENTO DE LA CALIDAD
    27. 27. Integración con IBM Rational Reportes automáticos Más Calidad, Menos Recursos • Más casos de prueba en menos tiempo • Satisfacción usuarios • Menor dependencia de los usuarios clave Compromisos cumplidos • Time To Market • En tiempo y forma Fiabilidad • Eliminamos margen de ERROR HUMANO • Pruebas de REGRESIÓN VENTAJAS
    28. 28. autana Business Partners
    29. 29. Aspectos Técnicos autana Business Partners
    30. 30. FasTest Herramienta Testing Testing Manual ¿Cómo se generan los Test Scripts? Excel Grabación Documentación ¿Cuándo se crean los Test Scripts? En paralelo al Desarrollo Después de desarrollo mínimo En paralelo al Desarrollo Conocimientos necesarios para crear los Test Scripts Excel Herramienta + Programación No aplica Dependencia de interfaces de usuario Ninguno Alta Ninguno Impacto (tiempo) por cambios en Desarrollo Muy bajo Alto Muy bajo Conocimientos necesarios de herramienta Testing Ninguno Alto Ninguno Reconocimiento Dinámico de Objetos GUI OOTB Programado Ninguno Mantenimiento de los Test Scripts Poco coste Costoso Poco coste Evidencias de Pruebas Generadas Automatizado Automatizado Manual Evidencias de Pruebas Ejecutadas Si Si No Ejecución Desatendida Si Si No
    31. 31. Ejecutar Verificar Log Ejecución Adaptar Cliente RFT Sistema Bajo Pruebas Valor del Evento Pasos de Pruebas de FasTest Siebel Automation Framework Evidencia Ejecución Parámetros del Objeto Paso de Prueba Mapeado Se ejecuta el paso? Comando del Framework
    32. 32. Ejemplo de un caso de prueba manual convertido a un Test Case Automatizado
    33. 33. autana Business Partners

    ×