2013-02-07 7 views
5

Ich muss Download-Aktion testen. Ich habe bereits Remote-Webdriver für FF- und Chrome-Browser konfiguriert, um Dateien automatisch ohne Vorwarnungen und Popup-Fenster herunterzuladen. Aber ich kann keine nützlichen Informationen finden - wie man Datei-Download für IE9 automatisch erlaubt.Webtreiber | IE9 | Setup Auto-Download-Dateien

Was ich versucht habe:

  • mögliche Wege finden, Treiber selbst zu konfigurieren. Nichts gefunden: keine Fähigkeiten, keine Optionen, keine Cmd-Argumente
  • finden Sie Einstellungen in der Registerkarte Sicherheit. Ich habe es bereits überprüft und festgestellt, dass die Einstellungen für IE9 entfernt wurden.
  • Verwendung solcher Registry-Schlüssel, aber es hilft nicht (fand es here):

HKEY_CURRENT_USER \ Software \ Microsoft \ Windows \ Currentversion \ Internet Settings \ Zones \ 2202 = 0x0

und diese:

HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ Internet Explorer \ Main \ Eigenschaft Steuerung \ FEATURE_RESTRICT_FILEDOWNLOAD \ iexplore.exe = 0x00000000

Wer weiß, wie man es löst? Ist es echt?

+3

Es gibt eine Cross-Plattform-Datei-Download-Lösung hier (Nach einem Blog-Eintrag ermutigt Sie zuerst zu stoppen und herauszufinden, warum Sie Dateien herunterladen): http://ardesco.lazerycode.com/index.php/2012/07/ how-to-download-files-with-selen-und-warum-du-shouldnt/ – Ardesco

Antwort

3

Leider habe ich dieses Problem kürzlich auch getroffen. Ich habe Angst zu sagen, es sind keine guten Nachrichten.

IE8 und darunter, das war anders, einfach weil es ein neues Fenster war, mit dem man interagieren konnte.

IE9, ist es nun ein builtin 'Frame Notification Bar' ist

Sie können auf die Schaltfläche Speichern klicken PInvoke mit ... finden Sie in diesem Thema:

https://stackoverflow.com/a/8532222/1173729

Diese Antwort für Watin ist, aber der einzige Unterschied ist, dass Wattin bereits die Fähigkeit enthält, das Handle eines bestimmten Browserfensters zu bekommen. Dies kann einfach mit Ihrer eigenen Methode umgeschaltet werden, der Punkt ist in der Regel nur den Griff des IE-Fensters, gehen Sie hinunter seine Kind-Elemente, bis Sie eine Schaltfläche "Speichern" drücken. Das hat aber einen großen Nachteil, die Kontrolle zurück auf Selen zu setzen - das passiert nicht, Selen wird einfach hängen.

Hinweis, dies ist alles in C#. Java hat offenbar andere Möglichkeiten, wie die ‚Robot‘ Klasse:

http://docs.oracle.com/javase/1.4.2/docs/api/java/awt/Robot.html

ich sie nicht benutzt haben, aber Sie werden um die Klasse zu leiten es, wo die Save-Taste wird nutzen können.

Es gibt keine Registrierungsschlüssel oder Einstellungen, um dieses Problem zu vermeiden - es ist einfach nicht möglich.

Ich habe die Entscheidung getroffen, dass seit FF & Chrome eingerichtet werden kann, um automatisch eine Datei herunterladen, können Sie überprüfen, es ist die Existenz danach. Sie testen, dass die Datei heruntergeladen werden kann und auf der Festplatte angezeigt wird.

Welche Chancen werden in IE9 nicht auftreten, wenn es in Chrome und Firefox funktioniert? Schlank, aber möglich.

Die Quintessenz ist, es ist ein OS-Dialog, etwas außerhalb des Bereichs von Selen.

Sie können es auch mit AutoIT kombinieren. Meine Erfahrung ist, dass AutoIT auch genauso flockig sein kann.

+0

Danke, ich werde es versuchen. Habe noch nie Roboter benutzt - es wird nützliche Erfahrung sein :) thnx! Eigentlich muss ich Downalod-Aktion für alle Browser testen, weil es nicht immer aus irgendeinem Grund auf Download-Schaltfläche oder Button-Element für Benutzer klicken kann. – Gadget