2012-04-03 10 views
0

Nachstehend ist der Code, den ich habe, um den Dialog zu schließen mit "Ok/Nein" Taste beim Laden der Seite angezeigt Webseite, die Sie gerade betrachten, versucht das Fenster zu schließen. Möchten Sie dieses Fenster schließen? " wird angezeigt. Ich bin in der Lage, den Alarmtext zu reaktivieren, aber nicht in der Lage, die Warnung zu schließen, wenn ich OK oder Nein in I.E.8 klicke, nur in IE wird die obige Nachricht angezeigt. Beim Zugriff auf die Website "http: \ 172.16.220.24/proof" wird die erste Proof-Sniffer-Seite angezeigt, beim Schließen dieser Seite durch die Warnung wird die Proof-Anmeldeseite angezeigt.Selenium WebDriver 2.20 - IE 8.0 - SeleniumTests.Test.Test: System.InvalidOperationException: Konnte nicht finden Cancel button

Die exeception auf die Ausführung des Code: SeleniumTests.Test.TheTest: System.InvalidOperationException: Könnten Sie nicht gefunden Schaltfläche Abbrechen ist

driver.Navigate().GoToUrl("http://172.16.220.24/proof/sniffer.aspx"); 
Thread.Sleep(1000); 
IAlert alert=driver.SwitchTo().Alert(); 
Console.writeline(alert.text); 
alert.Dismiss();      
Thread.Sleep(1000); 

@ Selen angezeigt wird, @ C#

+0

Nur ein Kommentar zum Thread.Sleep (1000). Sie können eine "driver.Manage(). Timeouts(). ImplicitlyWait (TimeSpan.FromSeconds (5));" das sollte Ihnen erlauben, diese Thread.Sleep (1000) zu entfernen; verstreut während Ihrer Tests. –

Antwort

0

Dies sollte in aktuellen Quellen behoben und werden zur allgemeinen Verfügbarkeit in 2.21 freigegeben. Sie können entweder auf die allgemeine Veröffentlichung warten oder das Produkt selbst aus Quellen erstellen. Vor this change, der IE-Treiber würde nach Abbrechen Schaltflächen in Warnungsfenstern nur suchen, wo die Dialogelement-ID IDCANCEL (oder 2) war. Dies wurde kürzlich geändert, so dass der Treiber nach Schaltflächen von IDCANCEL oder IDNO (oder 7) suchen würde.

+0

TQ für Ihre Antwort. Könntest du mich aber dazu erziehen, das Produkt aus der Quelle zu bauen, das gleiche auszuprobieren? –

+0

Der Erstellungsprozess für das Selenium-Projekt ist im [Projekt-Wiki] (http://code.google.com/p/selenium/wiki/BuildingWebDriver) dokumentiert. Bitte beachten Sie, dass Sie zum Erstellen der nativen Code-Komponenten des IE-Treibers Visual Studio 2010 Professional oder höher benötigen. Die Express Edition von Visual C++ funktioniert nicht. – JimEvans

+0

Das Buliding der Quelle hat nicht funktioniert, die Datei mozilla-config.h fehlt ebenso wie der Konflikt in .Netframework, obwohl ich Visual Studio Professional 10 mit Framework 3.5 verwendet habe. Daher habe ich die allgemeine Veröffentlichung 2.21 in Erwägung gezogen. Vielen Dank –