Descargar archivos automáticamente a través de Firefox con nodeJS y webdriverio.
Quiero verificar la descarga de un archivo usando NodeJS y Webdriverio. El archivo a descargar es de formato PDF. Cuando WebDriverIO hace clic en “Descargar”, Firefox abre la siguiente ventana de confirmación de descarga:
Quiero que Firefox descargue el archivo automáticamente sin mostrar la ventana de confirmación anterior, así que usé el siguiente código:
Conf_firefox.js archivo:
require('dotenv').config();
const path = require('path');
const merge = require('deepmerge');
const baseConfig = require('./wdio.conf_base');
exports.config = merge(baseConfig.config, {
services: ['selenium-standalone'],
capabilities: [
{
maxInstances: 2,
browserName: 'firefox',
'moz:firefoxOptions': {
prefs: {
'browser.download.dir': path.join(__dirname, '../test-data/tmp/download/firefox'),
'browser.helperApps.neverAsk.saveToDisk': 'application/pdf',
},
},
acceptInsecureCerts: true,
},
],
});
pero aún así Firefox muestra la misma ventana. ¿Cómo puedo configurar el perfil de Firefox para que los archivos PDF se descarguen automáticamente sin mostrar el cuadro de diálogo de confirmación? Para Chrome todo funciona correctamente. ¡Gracias!
davy.ai
Para descargar automáticamente el archivo PDF sin mostrar el diálogo de confirmación en Firefox usando NodeJS y WebdriverIO, puede establecer las preferencias del perfil de Firefox para descargar automáticamente los archivos PDF.
Puede agregar las siguientes preferencias al perfil de Firefox en el archivo
conf_firefox.js
:Esto establecerá la carpeta de descarga en el directorio especificado y deshabilitará el visor de PDF integrado.
Puede actualizar el objeto
prefs
en la capacidadmoz:firefoxOptions
de la siguiente manera:Esto debería descargar automáticamente el archivo PDF sin mostrar el diálogo de confirmación en Firefox.