2017-02-14 1 views
0

Der Test besteht darin, eine Datei herunterzuladen, indem Sie auf den Link für die Download-Vorlage klicken. Wenn ich das Skript auf meinem lokalen Rechner ausführe, funktioniert es einwandfrei. Kann den Download-Ordner erstellen und die heruntergeladene Datei wird im neu erstellten "Download" -Ordner gespeichert. Aber wenn ich es in die jenkins-Pipeline integriere, wird kein Ordner erstellt und keine Datei heruntergeladen. Hinweis: In der jenkins-Pipeline wird das Skript mithilfe von Chrom im Selenraster ausgeführt. Bitte beachten Sie die Konfiguration im Chrome-Treiber.Selen: Ordner und Datei zum Herunterladen in der Jenkins-Pipeline können nicht erstellt werden

HashMap<String, Object> chromePrefs = new HashMap<String, Object>(); 
chromePrefs.put("profile.default_content_settings.popups", 0); 
chromePrefs.put("download.default_directory", System.getProperty("user.dir") + "\\src\\main\\resources\\downloads"); 
ChromeOptions options = new ChromeOptions(); 
HashMap<String, Object> chromeOptionsMap = new HashMap<String, Object>(); 
options.setExperimentalOption("prefs", chromePrefs); 
options.addArguments("--test-type"); 
DesiredCapabilities cap = DesiredCapabilities.chrome(); 
cap.setCapability(ChromeOptions.CAPABILITY, chromeOptionsMap); 
cap.setCapability(CapabilityType.ACCEPT_SSL_CERTS, true); 
cap.setCapability(ChromeOptions.CAPABILITY, options); 
driver = new RemoteWebDriver(new URL(seleniumGridUrl), cap); 

Antwort

0

Wenn Sie nicht den Inhalt der heruntergeladenen Datei in Ihrem Test gehen zu überprüfen, würde ich mit einer Art von Ansatz von Pass vorschlagen mag. Mit der HTTP-Bibliothek können Sie einfach den http-Aufruf von Head an die Ressource ausführen, die Sie herunterladen müssen. In der Antwort erhalten Sie den Dateityp und seine Größe. In Ihrem Test behaupten Sie einfach gegen sie, um die Korrektheit der für das Herunterladen heruntergeladenen Datei zu überprüfen. Ich denke, das Problem, das Sie bekommen, ist irgendwie mit den Berechtigungen verbunden, die das Erstellen von Ordnern/Dateien in der Umgebung, in der der Test ausgeführt wird, nicht erlauben.

Verwandte Themen