Bir uyarı kutusunu "OK" düğmesine tıklayarak nasıl iptal edebilirsiniz? WebDriver Google grubunda Simon'un bu özelliği eklediğini gördüm. Bunun desteklenip desteklenmediğinden emin değilim.WebDriver bir uyarı kutusunu reddediyor
cevap
driver.findElement(By.id("updateButton")).click();
//pop up with id "updateButton" opens
Alert alert = driver.switchTo().alert();
//update is executed
alert.accept();
issue 27 in the Google Code Issues List'a bakın. Tarayıcının uyarıyı geçersiz kılmayı JavascriptExecutor kullanın:
((JavascriptExecutor)driver).executeScript("window.alert = function(msg){};");
Bu onayı iletişim kutularını işlemek için benzer bir çözüm.
((JavascriptExecutor)driver).executeScript("window.confirm = function(msg){return true;};");
Bu oldukça popüler bir istektir, bu yüzden yakında uygulamaya geçirileceğini umuyorum. Bu yaklaşımların olumsuz tarafı, mesajdaki metni doğrulamanın kolay olmamasıdır. Bunu yapmak için Selenyum'a inmek isteyebilirsiniz.
denedim '((JavascriptExecutor) sürücü) .executeScript ("window.confirm = işlev (msg) {return true;};"); 'ancak şans yok. Kimsenin güvenilir bir çözümü yok gibi görünüyor. Umarım bunu yakında halledebilirler. Yine de teşekkürler. – zihaoyu
Sürücünüzün doğru sayfaya/çerçeveye başvurduğunu bir kez daha kontrol edin. Bunu başarıyla çalıştırdım, bu yüzden sayfanızla değil, kodla benzersiz bir şey olmalı. – pnewhook
C# kodu:
IAlert alert = driver.SwitchTo().Alert();
alert.Accept();
System.Threading.Thread.Sleep(milliseconds);
Python kodu:
driver.switch_to_alert().accept()
bakınız:
site paketleri/selenyum/webdriver/uzaktan/webdriver.py
site paketleri/selenyum/webdriver/ortak/alert.py
- 1. Listede bir uyarı iletişim kutusunu kapatabilir miyim?
- 2. Krom uzantısında uyarı iletişim kutusunu göster
- 3. Sadece uygulama ilk uygulamasında bir uyarı iletişim kutusunu nasıl gösteririm?
- 4. Uyarı kutusunu gösterdikten sonra nasıl otomatik olarak gizleyebilirim?
- 5. WebDriver
- 6. tomcat belirli dosyalara erişimi reddediyor
- 7. Vagrant, private_network modunda bağlanmayı reddediyor
- 8. JUnit Formatı WebDriver ve WebDriver destekli Yedekleme
- 9. Selenium Webdriver
- 10. Yeni bir pencerenin Watir-Webdriver
- 11. Bir düğme seçin - webdriver Java
- 12. Selenium webdriver
- 13. Selenium Webdriver
- 14. Selenyum WebDriver
- 15. Chimp/Webdriver
- 16. Bir seçiciden fantezi kutusunu temizleme
- 17. Uyarı
- 18. Aniden Jslint eklentisi çalışmayı reddediyor (JSLint yalnızca JavaScript üzerinde çalışabilir ....)
- 19. Bir uyarı var
- 20. MSTest 64-bit'i çalıştırmayı reddediyor mu?
- 21. IIS URL https kuralını reddediyor localhost
- 22. Python 3 urllib SSL sertifikası doğrulamasını reddediyor
- 23. iOS simulator ekran görüntülerini kaydetmeyi reddediyor
- 24. Bootstrapper, başarısızlık yerine yok saymayı reddediyor
- 25. OWIN kimlik doğrulama çerezini ertesi gün reddediyor
- 26. Basit Qt Uygulaması, bir sinyal/yuva eklendiğinde derlemeyi reddediyor
- 27. Selenium/WebDriver betiği uyarı ile kesintiye uğrar - istisna "Mesaj: u'Modal dialog mevcut" "
- 28. Selenium Webdriver, sınıf
- 29. TeamCity ve Selenium WebDriver
- 30. Açılır Seç - Selenium Webdriver
Bunu yapmanın en uygun yolu, özellikle de circa-2012 sonrası. Bunun neden sorunun cevabı olarak kontrol edilmediğini anlamıyorum, çünkü olması gerektiği gibi. – djangofan