Envío de Pruebas Masivas usando SOAP UI

Me solicitan enviar 1000 peticiones de forma masiva a un servicio web de tipo SOAP, para lo cual puedo valerme de la funcionalidad de pruebas de SOAP UI.

Para esto vamos simular la llamada a un servicio que tiene la siguiente estructura:

Par lo cual vamos a crear un archivo XML por cada una de las peticiones que voy a realizar y almacenarlas en una carpeta, en este caso “requests”

Cada uno de los archivos tendrá el fragmento de la petición que variará de llamada en llamada.

Una vez que tengo armados los archivos, procedo a estructurar la prueba dentro de SOAP UI, para esto crearemos 3 pasos

Paso 1

Script lee los archivos en el directorio “request” y inicializa un arreglo con los mismos

def fileList = []
new File("/path/requests/").eachFile { f ->
if (f.isFile() && f.name.endsWith('.xml')) {
def filename = f.name[0..-1]
fileList.add(filename)
log.info filename
}
}
if (fileList.size() < 1) {
testRunner.fail("No request files")
}
context.put('fileList', fileList)

Paso 2

El paso 2 es una llamada SOAP, con una modificación para que tome el nombre del archivo del arreglo creado en el paso 1

${=new File("/path/requests/" + (context.get('fileList')).first()).text}

Paso 3

Aquí iteramos sobre cada ejecución y almacenamos tanto la llamada, como la respuesta en el directorio “responses”

def fileList = context.get('fileList')
def fileName = fileList.first()
def newName = fileName[0..-5]
def response = context.expand( '${Step2#Response}' )
def f = new File("/path/responses/${newName}_Response.xml")
f.write(response, "UTF-8")
def query = context.expand( '${Step2#Request}' )
def q = new File("/path/responses/${newName}_Query.xml")
q.write(query, "UTF-8")
fileList.pop()
if(fileList.size() >0)
{
testRunner.gotoStepByName("Step2")
}

Por ultimo ejecutamos el caso de prueba

Pasar mi colección de CD’s a Spotify

Problema: Tengo una colección de CD’s que ocupa mucho espacio y quiero tenerlos como una lista de reproducción en spotify.

Solución:

Paso 1: Obtener el nombre de las canciones, para esto podemos digitarlo nosotros o utilizar alguna herramienta OCR que nos ayude.

En caso de utilizar una herramienta de reconocimiento de texto OCR, vale la pena editar un poco la fotografía, una buena alineación y tratar de que el nombre de la canción y el autor estén en una misma linea nos ayudará más adelante.

Foto del listado de canciones

Para el proceso de OCR podemos utilizar la siguiente herramienta: https://www.onlineocr.net/es/

Despues del pasarlo por el OCR y unos minutos de edicion obtenemos los nombres de las canciones

  • GRAM PARSONS & EMMY LOU HARRIS Love Hurts
  • SANDY POSEY Born A Woman
  • DAVE DUDLEY Cowboy Boots
  • FREDDY FENDER Sugar Coated Love
  • DAVE TRAVIS Sweet Country Music
  • DONNA FARGO Daddy
  • ……..

Paso 2: Obtener las uri’s o nombres de las canciones en spotify

Para esto utilizaremos la siguiente herramienta: https://epsil.github.io/spotgen/

Aquí podemos pegar los nombres de las canciones y nos devolverá la uri de los tracks en spotify

Resultado de la herramienta

Paso 3: Creamos una lista de Spotify

Paso 4: Agregar las canciones

Para agregar las canciones, debemos copiar las uri’s que generó la herramienta del paso 2, luego dar click donde dice “start adding songs” y presionar ctrl+v, automáticamente spotify agregará las canciones a la lista.