Maison >Java >javaDidacticiel >Comment télécharger des fichiers à l'aide de Selenium WebDriver en Java lorsque le bouton Parcourir est un contrôle Silverlight ?

Comment télécharger des fichiers à l'aide de Selenium WebDriver en Java lorsque le bouton Parcourir est un contrôle Silverlight ?

Mary-Kate Olsen
Mary-Kate Olsenoriginal
2024-12-09 20:12:171029parcourir

How to Upload Files Using Selenium WebDriver in Java When the Browse Button is a Silverlight Control?

Télécharger des fichiers avec Selenium WebDriver en Java

Le téléchargement de fichiers est une tâche courante dans les applications Web. Dans cet article, nous expliquerons comment télécharger des fichiers à l'aide de Selenium WebDriver en Java, en abordant un scénario spécifique dans lequel le bouton Parcourir est développé à l'aide de Silverlight (C#).

Problème :

Je souhaite télécharger un fichier à l'aide de Selenium, mais le bouton Parcourir ouvre une nouvelle fenêtre avec laquelle il est impossible d'interagir directement avec Sélénium.

Solution :

Comme suggéré par Mark Collin, au lieu de cliquer sur le bouton Parcourir, on peut utiliser le code suivant :

driver.findElement(By.id("myUploadElement")).sendKeys("<absolutePathToMyFile>");

où :

  • myUploadElement est l'ID du bouton de navigation ou de l'entrée élément.
  • est le chemin absolu vers le fichier que vous souhaitez télécharger.

Points clés :

  • Assurez-vous que l'élément d'entrée est visible.
  • Utilisez la méthode sendKeys() pour spécifier le chemin du fichier.
  • Le téléchargement du fichier ne fonctionnera que si l'élément d'entrée a un type="file"

Conseils supplémentaires :

  • Utilisez la classe File pour obtenir le chemin absolu du fichier.
  • Pour les non-utilisateurs -éléments visibles, pensez à utiliser la classe JavaScriptExecutor pour manipuler le DOM.
  • Si le téléchargement du fichier ne fonctionne pas, vérifiez que le chemin du fichier est correct et que l'élément a l'attribut type="file".

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn