Si necesita configurar la supervisión o las pruebas de carga para aplicaciones web con funcionalidad de carga de archivos, utilice EveryStep Scripting Tool Desktop para grabar el script.

La grabación de carga de archivos solo está disponible para Chrome y los navegadores móviles.

Con EveryStep Desktop, puede configurar la carga de un archivo desde una dirección URL externa de hasta 5 MB y hasta 20 MB en total dentro de un script. Por ejemplo, puede grabar la carga de cuatro archivos de 5 MB o 20 archivos de 1 MB.

Cómo funciona

Dotcom-Monitor no tiene almacenamiento disponible localmente. Para emular el proceso de carga de un archivo, el sistema debe descargar el archivo en el script desde una dirección URL pública antes de ejecutar el paso de carga. Por lo tanto, en primer lugar, debe proporcionar un archivo de prueba que Dotcom-Monitor utilizará en el proceso de carga. Como resultado, Dotcom-Monitor descargará el archivo desde la URL proporcionada al almacenamiento en la nube del sistema y lo utilizará en el proceso de carga cada vez que se ejecute el script. Hay dos enfoques para proporcionar un archivo de prueba a Dotcom-Monitor.

Descargar un archivo desde la URL externa

Para registrar una carga de archivos desde una URL externa, coloque un archivo de prueba de hasta 5 MB en una dirección URL de acceso público, como el bucket de Amazon S3, el almacenamiento de Azure o los servicios de CDN. A continuación, registre el paso de carga de archivos en EveryStep Recorder. Durante la grabación del paso, se le pedirá que proporcione el vínculo al archivo de prueba. El sistema descargará el archivo y lo utilizará en la operación de carga.

Grabación de una descarga de archivos dentro del script

Como alternativa, en EveryStep Desktop Recorder, puede grabar la descarga del archivo y seleccionar el archivo descargado para grabar un paso de carga en el script. Si es necesario, puede cambiar el nombre de archivo y el vínculo, así como descargar el tiempo de espera, editando la línea relacionada en el área Código de script después de la grabación.

Mejores prácticas

Dotcom-Monitor ejecuta todos los pasos y acciones del script sin demoras de forma predeterminada. Sin embargo, normalmente se tarda algún tiempo en cargar un archivo en un recurso web. En este caso, para simular el retraso y esperar a que el sistema ejecute el paso de carga, se recomienda agregar la línea Delay al script justo después del paso de carga.

Además, para asegurarse de que la carga se ha ejecutado correctamente, configure la validación de contenido después del paso de carga. En general, si aparecen cuadros de diálogo o confirmaciones de carga en la página después de cargar el archivo, agregue la validación de palabras clave o los fragmentos de código disponibles para comprobar si el paso de carga ha traído los resultados esperados.

Grabación de la carga de archivos desde la URL externa

Compruebe los pasos de configuración de carga de archivos a continuación:

  1. Descargue un archivo de prueba de hasta 5 MB en una dirección URL de acceso público.
  2. Registre el script hasta el punto que necesita para cargar el archivo.
  3. Haga clic en el botón correspondiente en la página de destino para cargar el archivo.
  4. En la ventana Cargar archivos, proporcione un vínculo externo al archivo que desea cargar. El archivo se descargará desde el enlace externo proporcionado al almacenamiento en la nube de Dotcom-Monitor. Una vez descargado, el nombre del archivo aparecerá en la ventana Cargar archivos. Seleccione la casilla de verificación archivo y haga clic en Aceptar. Como resultado, la línea OpenFileDialogHandler se agregará automáticamente al script.

    Si la descarga del archivo se ha grabado en el paso anterior del script, seleccione el nombre del archivo de inmediato en la ventana Cargar archivos.

  5. Agregue el retardo justo después del paso de carga.
  6. Agregue la palabra clave o la validación de imagen al script.
  7. Si es necesario, proceda con la grabación; y detener el proceso de grabación cuando esté listo.

Encuentre el ejemplo del script de carga de archivos grabado en la herramienta de scripting EveryStep a continuación. El script contiene el paso de la descarga del archivo de prueba en el almacenamiento del sistema.

// script_version=3.0; everystep_version=4.0.7706.9249; date=2/10/2021; Chrome=83.0.4103.61
Tabs.SetSize (1768, 419);
DMBrowser tab0 = null;
Step (1, "Download & Generate Test Files - https://fastest.fish/test-files");
tab0 = Tabs.NewTab ();
tab0.GoTo ("https://fastest.fish/test-files");
tab0.Link ("//A[normalize-space()=\"5MB\"]", "//A[normalize-space(text())=\"5MB\"]", "//A[normalize-space()=\"10MB\"]/preceding-sibling::A[1]").Click ();
//File Download to the system storage  
Step (2, "Download & Generate Test Files - http://ipv4.download.thinkbroadband.com/5MB.zip");
tab0.Downloading ("5MB.zip", "http://ipv4.download.thinkbroadband.com/5MB.zip");
tab0.Para ("//P[normalize-space()=\"These test files will be downloaded in full over your network connection from high speed servers. These files can be used to test your network download speed.\"]/preceding-sibling::P[1]", "//P[normalize-space(text())=\"These test files will be downloaded in full over your network connection from high speed servers. These files can be used to test your network download speed.\"]/preceding-sibling::P[1]", "/HTML/BODY/DIV/DIV/P[1]").Click ();
//File Upload using the file from the system storage
Step (3, "Gofile - https://gofile.io/uploadFiles");
tab0.GoTo ("https://gofile.io/uploadFiles");
OpenFileDialogHandler (OpenFileDialogButton.Ok, new string[1] {"5MB.zip"});
tab0.Button ("//BUTTON[normalize-space()=\"Click here\"]", "//BUTTON[normalize-space(text())=\"Click here\"]", "//BUTTON[@ID=\"dropZoneBtnSelect\"]").Click ();
tab0.Button ("//BUTTON[normalize-space()=\"Upload\"]", "//BUTTON[normalize-space(text())=\"Upload\"]", "//BUTTON[@ID=\"uploadFiles-btnUpload\"]").Click ();
Delay ("40sec".ToDuration ());
tab0.KeywordAssert ("successfully uploaded");
//File Upload from the external URL
tab0.Link ("//P[normalize-space()=\"Upload Files\"]/..", "//LI[@ID=\"li-uploadFiles\"]//A", "//LI[@ID=\"li-api\"]/preceding-sibling::LI[1]//A").Click ();
tab0.Download ("Q3UTw.htm", "https://dropmefiles.com/Q3UTw");
OpenFileDialogHandler (OpenFileDialogButton.Ok, new string[1] {"Q3UTR.htm"});
tab0.Button ("//BUTTON[normalize-space()=\"Click here\"]", "//BUTTON[normalize-space(text())=\"Click here\"]", "//BUTTON[@ID=\"dropZoneBtnSelect\"]").Click ();
tab0.Button ("//BUTTON[normalize-space()=\"Upload\"]", "//BUTTON[normalize-space(text())=\"Upload\"]", "//BUTTON[@ID=\"uploadFiles-btnUpload\"]").Click ();
Delay ("40sec".ToDuration ());
tab0.KeywordAssert ("successfully uploaded");