Skip to main content

Ejemplo Adaptador Genérico Script

English

Descripción

A través del Adaptador Genérico de Script, TAST se conecta a una máquina remota y ejecuta scripts, sin importar el Sistema Operativo que está funcionando en esa máquina. 

¿Qué es un script? Un script es un archivo de texto que contiene una serie de comandos que se ejecutan en secuencia. Pueden ser comandos sencillos o complejos.

Estos comandos son un conjunto de instrucciones que están escritos en un lenguaje de programación específico, como JavaScript, Bash, PowerShell, entre otros. El primer lenguaje de programación específico de Script fue el JavaScript, siendo aún hoy en día el lenguaje más popular y utilizado para añadir scripts a una página web.

Los scripts se pueden usar para hacer prototipos de programas, automatizar tareas repetitivas, hacer procesamiento por lotes e interactuar con el sistema operativo y el usuario.

Con TAST podemos automatizar la ejecución de estos comandos y aumentar la eficacia y mejorar la calidad de las pruebas; si se realizan de forma manual, serían tareas muy constantes y repetitivas, que alargarían mucho el tiempo de prueba de un tester.

Es posible realizar pruebas individuales con este adaptador o pruebas de extremo a extremo conectando con otros adaptadores.

Enunciado del ejercicio

En este caso de prueba vamos a enseñaros como se ejecuta un script o secuencia de comandos en el que extraemos la fecha, hora del día y un listado de ficheros en formato .txt. Creamos una carpeta en el servidor FTP y movemos desde local el archivo generado hacia el directorio remoto que hemos creado. Este adaptador es utilizado para ejecutar scripts en máquinas remotas o locales, sin importar el Sistema Operativo que está funcionando en esa máquina.

Resolución del caso de prueba

Hemos diseñado este caso de prueba utilizando tres Adaptadores: el Adaptador Objeto de Usuario, el Adaptador Genérico Script y el Adaptador FTP. Este es el diagrama:

Diagrama.png

Adaptador Usuario

Siempre presente en todos los diagramas. Todos los mensajes definidos en el diagrama parten de este adaptador.

Adaptador Genérico Script

Este adaptador es utilizado para ejecutar scripts (secuencias de comandos) en máquinas remotas o locales, sin importar el Sistema Operativo que está funcionando en esa máquina. En el proceso de inicialización, es necesario proporcionar la información para conectarse con la máquina:

  • Usuario: nombre de usuario autorizado para acceder al equipo Host.
  • Contraseña: contraseña de un usuario autorizado a acceder al equipo del Host.
  • Host: dirección IP de la máquina Host.
  • Puerto: puerto para la dirección IP de la máquina Host.
  • Tipo de Conexión: tipo de conexión al equipo Host. Por ejemplo: SSH (Conexión segura).

MapeoScript1.png

MapeoScript1-1.png

Adaptador FTP 

Este adaptador es usado para realizar conexiones con servidores FTP o SFTP. En cuanto a los parámetros a definir encontramos los mismo que en el adaptador Script y son los siguientes:

  • Host: nombre o dirección IP del servidor FTP que queremos conectar.
  • Puerto: número de puerto del cual depende el servidor FTP. Es 22 por defecto
  • Usuario y Contraseña: credenciales necesarias para acceder al servidor
  • Secure: es un checkbox para indicar si la conexión será segura o no.

     

     

    MapeoFTP1.png

MapeoFTP2.png

Funciones que hemos utilizado con el Adaptador Usuario

  • ExecuteCommand: ejecutamos un comando para obtener la información de nuestro dispositivo, en concreto la dirección IP. 

El comando debe siempre ir precedido de la cadena “cmd /c”.


ExecuteCommand.png

  • ExecuteJavaScript: utilizamos pequeñas líneas de código para formatear la dirección IP que recibimos del comando ejecutado.

ExecuteJavascript.png

Funciones que hemos utilizado con el Adaptador Genérico Script

  • connect_Script: función que sirve para conectar con el servidor remoto. No es necesario introducir parámetros adicionales.
  • execute_Script: función que te permite ejecutar el código seleccionado en el campo value. 

ExecuteScript0.png

En este caso ejecuta un código en remoto que genere un archivo de texto.

ExecuteScript.png

  • disconect_Script: función que sirve para desconectar con el host indicado en los parámetros del adaptador. Tampoco es necesario introducir parámetros adicionales.

Funciones que hemos utilizado con el Adaptador FTP 

  • getFile: permite transferir un Fichero del servidor al PC en el que se ejecuta el diagrama. Recibe como parámetros.

      • RemoteFilePath: indica la ruta y el nombre del fichero remoto a recuperar.

      • LocalFilePath: indica la ruta y el nombre del Fichero local donde se guardará.

      • BinaryFile: indica el tipo de transferencia, binario cuando está marcado o texto si no está marcado.

getFile.png

  • deleteFile: con esta PF podremos eliminar un archivo del servidor remoto.

deleteFile.png

  • putFile: función que nos permite recoger un archivo de un directorio remoto y guardarlo en Local. En nuestro caso lo guardaremos en la carpeta que recoge las evidencias de la ejecución. 



putFile.png

Captura de resultados

A continuación abrimos el icono de la derecha (marcado con una flecha roja) y tenemos como resultado la carpeta de evidencias, donde se almacena tanto el log de la ejecución, como todas las capturas de pantalla, archivos generados , etc... si hemos marcado la casilla «Evidencias» en la configuración general del diagrama.

Carpeta de evidencias

Log de la ejecución  

Archivos que se ha generado
  • ExecuteCommand: ejecutamos un comando para obtener la información de nuestro dispositivo, en concreto la dirección IP: 

Me falla en el paso2

ResultadosputFile.png

A la hora de devolvernos los resultados, TAST nos devuelve un documento Word, en el que se detallan los pasos que hemos realizado, los resultados obtenidos de cada paso, los links al diagrama y al test set, si hemos dado a descargar documento en la casilla de Resultados.

Adjuntamos el enlace del  documento Word para su descarga: ts_Demo_AdaptadorScript_FTP_24.06.2021 10.32.36_24.06.2021 10.32.38.docx

Os pasamos un link, para que accedáis al vídeo con la explicación de este caso de prueba: https://www.youtube.com/watch?v=GuyVvCZiDQM