es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

WebDriverManager: No se puede hacer que la caché de resolución funcione con la CLI.

Estoy utilizando WebDriverManager versión 5.0.3 fat jar. Quiero lograr lo siguiente con la línea de comandos:
1) Los controladores se descargan en una carpeta específica
2) Utilizando el caché de resolución, solo descargar controladores si cambia la versión del navegador, de lo contrario omitir la descarga

Estoy utilizando lo siguiente en la línea de comandos:

java -D'wdm.forceDownload=false' -D'wdm.resolutionCachePath="C:\QA\Downloads"' -jar webdrivermanager-5.0.3-fat.jar resolveDriverFor chrome

Puedo lograr la parte 1 con esto, pero el caché de resolución siempre está vacío y el controlador solo se actualiza cuando lo elimino de la carpeta de descargas. El controlador no se actualiza para la parte 2 de mi requisito si hay una copia anterior en la carpeta de descargas.

¿Alguien puede ayudarme, por favor? ¿Es esto un error o me estoy perdiendo algo?

Tags:  , , , ,

Answer

  1. Avatar for davy.ai

    Solución para la pregunta del CLI de WebDriverManager

    Para lograr la funcionalidad deseada con CLI, podemos usar el siguiente comando:

    java -Dwdm.cachePath=RUTA_AL_CACHE -jar webdrivermanager-5.0.3-fat.jar --browser-version VERSION_A_USAR chrome
    

    Aquí, reemplaza RUTA_AL_CACHE con la ruta de la carpeta donde se descargarán los controladores y VERSION_A_USAR con la versión deseada del navegador.

    Para habilitar la caché de resolución, usa el parámetro wdm.cachePath. Esto descargará el controlador solo si no está presente en la carpeta de caché para la versión especificada del navegador. Si el controlador ya está presente en la carpeta de caché, se utilizará en lugar de descargar uno nuevo.

    Para descargar el controlador para una versión específica del navegador, usa el parámetro --browser-version. Esto descargará el controlador solo si la versión especificada es diferente a la que ya está presente en la carpeta de caché.

    Por lo tanto, el comando final descargará el controlador de Chrome en la carpeta especificada solo si no está presente en la carpeta de caché para la versión especificada. De lo contrario, utilizará el controlador de la carpeta de caché.

    Nota: Asegúrate de reemplazar los marcadores de posición por valores reales.

Comments are closed.