Notre application a une page où vous pouvez télécharger un fichier. Le code que j'ai écrit utilisera SendKeys()
pour envoyer le chemin de fichier à la balise input
du composant de téléchargement de fichier. Cependant, cela ne fonctionne pas sur cette page.Télécharger le fichier sur le tag d'entrée avec Selenium Webdriver
string filepath = Path.GetFullPath(Directory.GetCurrentDirectory() + @"\..\..\..\Test Files\" + filename);
uploadInput.Click();
uploadInput.SendKeys(filepath);
J'ai confirmé que le chemin du fichier est définitivement correct. J'ai également confirmé que l'élément WebDriver est également correct. Et, ce code ne fonctionne sur une forme totalement séparée de notre application. Je suppose que la façon dont ce composant de téléchargement de fichiers est codé ne doit pas être compatible avec cette méthode.
Quelles autres options ai-je pour télécharger un fichier? Remarque, le contrôle de l'explorateur de fichiers système est totalement hors de question compte tenu de l'environnement dans lequel nos tests sont exécutés.
EDIT: J'ai confirmé que l'étiquette d'entrée reçoit effectivement le fichier que je spécifie. Cependant, la validation personnalisée du formulaire semble penser que rien n'a été téléchargé. Cela pourrait être quelque chose que je dois résoudre avec nos développeurs.
Est-ce un élément de téléchargement de fichier standard HTML Ou est-ce un téléchargement fichier personnalisé? – Purus
Jetez un oeil à ce fil, qui a une solution appropriée pour vous: https://stackoverflow.com/questions/3300580/webdriver-file-upload –