Selenium WebDriver mit ChromeDriver - C# - Visual Studio 2012. Debugging unmöglich
Paar Zeilen Programm perfekt funktioniert, wenn die läuft, mit Strg+F5 (nicht Debuggen), aber wirft exception beim ausführen mit F5 (debugging):
private static void Main(string[] args)
{
IWebDriver driver = new ChromeDriver(@"C:\Program Files (x86)\ChromeDriver");
Diese Aussage wirft "es konnte Keine Verbindung hergestellt werden, da der Zielcomputer aktiv verweigert" Ausnahme ohne Ausnahme.
Wieder, es funktioniert perfekt mit Strg-f5
- Windows 7 x64
- VS 2012
- Mit Selenium WebDriver NuGet Packcge 2.35 (spätestens)
- Mit ChromeDriver.exe (v2.4.226107) (Letzte)
- Alle firewalls und antivrus etc getötet wurde.
- Laufen VS als admin und UAC ausgeschaltet
Warum ist dieser Unterschied zwischen Debuggen und ausführen ohne Debuggen?
(Ich weiß, dass der debugger hat ein host-Prozess, bitte nicht erklären)
Wie kann ich dieses einfache Programm im debug-Modus?
Irgendwelche Ideen?
Thx im Voraus
Reproduzierbar auf einem anderen Rechner?
InformationsquelleAutor g.pickardou | 2013-10-16
Du musst angemeldet sein, um einen Kommentar abzugeben.
Dank für alle, die verbrachte Zeit mit Lesen und denken über diese Frage.
Ich habe es gelöst. Nun, es ist eine dumme Sache, aber ich bin mir ziemlich sicher, dass ähnliche Fragen hier beschweren, Selenium WebDriver und
"Es konnte keine Verbindung hergestellt werden, da der Zielcomputer aktiv verweigert" Ausnahme
hat diese Auflösung, und andere Antworten, die es verpasst die Korrelation zwischen den ausgestellten gelöst und die notwendigen Massnahmen ergriffen. Die meisten von Ihnen vorschlagen, verwenden Sie eine andere version von ChromeDriver.exe und reden über version-Inkompatibilität und ChromeDriver.exe bugs.
Denke ich (zumindest meinem Fall) diese Auflösungen sind falsch.
Den "Fehler" kommt aus dem WebDriver-assembly und nicht über ChromeDriver.exe. Ich habe geprüft, die Quelle von WebDriver, hier ist es:
Wenn die DriverService-Klasse startet die ChromeDriver.exe sofort beginnt polling mit Anfragen. Denn es braucht Zeit, den Prozess zu starten, der port ist nicht offen für die ersten paar Dutzend versuchen... (zumindest ein Sleep(10) oder Sleep(50) wäre schön hier, aber trotzdem)
Nun der Punkt: Wenn Sie sind so unglücklich, Sie die nicht geprüft die VS-2012-Optionen/Debug/General die Option 'Enable Just My Code" und aktiviert man die Debug/Exceptions/Geworfen, dann debugger Pause von dieser Ausnahme, aber natürlich werden Sie nicht sehen, die Quelle, die Ausnahme-Linie wird Ihre Linie
Je nach timing (Prozess starten), kann man paar wiederholt Zeit, und denken Sie, dass Ihr port, firewall, ChromeDriver.exe version, etc zu tun hat, mit der Ausnahme.
InformationsquelleAutor g.pickardou
Hatte ich diesen Fehler an einer Stelle..und nach stundenlangem Debuggen..endlich den wirklichen Fehler zu zeigen...meiner Sicht für die I. E.-browser wurde auf 125%...und wenn ich habe es wieder auf 100%...es funktioniert. 🙂
InformationsquelleAutor leady