La automatización de pruebas de software consiste en utilizar herramientas y estrategias para reducir la intervención o interacción humana en tareas redundantes, repetitivas o complejas. Esta automatización se ve reflejada en secuencias de comandos (o por su traducción al inglés “Scripts”) con los que podemos aumentar de forma drástica la capacidad de probar el software. Para poder simplificar aún más el tiempo de diseño y ejecución de dichos scripts se han desarrollado los llamados marcos de trabajo (o comúnmente conocidos como framework por su traducción al inglés), que son un conjunto de suposiciones, conceptos y prácticas que proporcionan apoyo a las pruebas de software automatizado.
2. www.sgcampus.com.mx @sgcampus
Tabla de Contenidos
1. Introducción y Ventajas
2. Arquitectura: Keyword y Expert
3. Configuración Básica
4. Modo Keyword
5. Modo Expert
6. Web Object Browser (WOB)
7. ¿Qué Sigue?
4. www.sgcampus.com.mx @sgcampus
1.1 Introducción
• Para asegurar un nivel de calidad antes de lanzar un prototipo de un software, es muy aconsejable recurrir a
la automatización de ciertas pruebas funcionales que aporten mayor confiabilidad sobre las principales
funcionalidades del producto (J. Hui et al, 2008).
• La automatización de pruebas de software consiste en utilizar herramientas y estrategias para reducir la
intervención o interacción humana en tareas redundantes, repetitivas o complejas. (guru99.com, 2015).
5. www.sgcampus.com.mx @sgcampus
1.2 Frameworks
• Un Framework (marco de trabajo) de automatización de pruebas es un conjunto de suposiciones, conceptos
y prácticas que proporcionan apoyo a las pruebas de software automatizado (guru99.com, 2015).
• Estos marcos integran las bibliotecas de funciones, fuentes de datos de prueba, detalles de objetos y
diversos módulos reutilizables. Estos componentes actúan como pequeños bloques de construcción que
deben ser ensamblados para representar un proceso de negocio (PediaPress, 2012).
6. www.sgcampus.com.mx @sgcampus
1.3 Ventajas del Framework GSM
1. Menos Experiencia Técnica.
2. Fácil de Entender.
3. Inicio Temprano de Desarrollo.
4. Reutilización de componentes.
5. Reutilización de código.
8. www.sgcampus.com.mx @sgcampus
2.1 Estructura de Folder
Class to perform Action as click,
input, close browser, etc.
Test Case executor
in Keyword mode.
Class to handle exceptions
Excel reader.
Libraries
XML for TestNG.
Class to generate log info,
debug, error, etc.
Class to perform Highlight
And screenshots.
Scripts created
In Expert mode.
Class to read object
repository and config files.
Class to store constants as
config file path, columns number, etc.
XML in order to save
Log file.
12. www.sgcampus.com.mx @sgcampus
3.1 Configuración
• El archivo “InitialSetUp.exe”, sirve para crear los folders donde almacenaremos archivos como:
Archivo de configuraciones (config.properties)
Repositorio de Objetos.
Hojas de Excel, Data Engine, etc.
Drivers para navegadores.
Archivo de Logs (logfile.log).
Screenshots.
13. www.sgcampus.com.mx @sgcampus
3.1 Configuración
• Carpeta “Config”: en esta carpeta se almacenara nuestro(s) Repositorios de Objetos, el archivo
“ObjRep.txt” es creado en automático cuando se ejecuta la clase “InitialSetUp.exe”, una vez creado
se procederá a llenar con los objetos de nuestra aplicación bajo prueba
14. www.sgcampus.com.mx @sgcampus
3.1 Configuración
• Carpeta “DataEngine”: en esta carpeta se almacenara nuestro(s) DataEngine.xlsx o cualquier hoja
de datos que se requiera para nuestros scripts de prueba, el archivo “DataEngineTemplate.xlsx” es
para referencia y poder crear nuestro DataEngine.xlsx con los casos de prueba, pasos de prueba,
datos de prueba, etc. que necesitemos.
15. www.sgcampus.com.mx @sgcampus
3.1 Configuración
• Carpeta “Drivers”: esta carpeta contendrá, todos los drivers necesarios para diferentes navegadores.
• Carpeta “Results”: en esta carpeta se almacenaran el log de resultados, y las impresiones de
pantalla una carpeta interna llamada “ScreenShots”, una vez ejecutado un script.
16. www.sgcampus.com.mx @sgcampus
3.1 Configuración
• El archivo logfile.log, contiene toda la información necesaria de cada paso de prueba, una vez
ejecutado, el archivo es autocreado. Nota: con cada ejecución, se almacenara en el mismo archivo,
no creara uno por cada ejecución:
17. www.sgcampus.com.mx @sgcampus
3.1 Configuración
• Archivo config.properties: en este archivo almacenaremos todas las rutas de nuestros archivos
como lo son los drivers, los xlsx, los nombres de cada hoja de Excel, el repositorio de objeto, etc.
un ejemplo de llenado del archivo de configuración, es el siguiente (se puede tomar como base
para cada proyecto). Nota: una vez que se indica una ruta, se debe indicar el separador de
carpetas como “” no como “”, ya que java lo tomara como texto: