2015-06-28 29 views
8

JUnit ek açıklamasını kullanarak Eclipse'de basit bir program yazıyorum. Testlerden sonra Firefox tarayıcımı kapatmıyordriver.close() yöntemi, Firefox üzerinde Selenium WebDriver'de çalışmıyor

. Chrome ile iyi çalışıyor. Kod snippet'i burada.
public class FireFox1 { 
    WebDriver driver; 

    @Before 
    public void setUp() { 
     driver= new FirefoxDriver(); 
     driver.get("http://book.theautomatedtester.co.uk/chapter4"); 
    } 

    @After 
    public void tearDown() { 
     driver.close(); 
    } 

    @Test 
    public void testExamples() { 
     WebElement element= driver.findElement(By.id("nextBid")); 
     element.sendKeys("100");  

    } 
} 
+1

'driver.quit() 'yerine' driver.close() 'kullanmanın amacı nedir? – Saifur

+0

Ayrıca Firefox ve Junit ile aynı kod herhangi bir sorun olmadan çalıştı ve tarayıcıyı kapattı. –

+0

Hey Saifur, Bu driver.quit() ile iyi çalışıyor ama neden close() yöntemi ile çalışmadığını bilmek istiyorum. –

cevap

2

bazen tekrarlanan kullanımlar, biz driver.close() ile sorunlarla karşı karşıya olacak iken. Neyse driver.quit() sorununuzu düzeltir.

Genellikle driver.close(), tarayıcıyı (sürücü örneği hala bozulmamış) kapatır ve driver.quit() webdriver örneğini öldürmektir. Her nasılsa burada sadece bir sayfa için kullanıyorsunuz, o zaman driver.quit() ile gidebilirsiniz.

Teşekkür ederiz.

1

Eğer paralel ızgara kullanarak 5 tarayıcıları (sınıflar) başlamıştır varsayarak: - (yürütme oluyor) yakın mevcut tarayıcınızda

driver.quit için kullanılır -

driver.close yakın kullanılır tüm tarayıcılar mevcut yürütme tarafından başlatıldı.

Bunların hiçbirini birini kullanabilirsiniz ..

0

Daha iyi kullanım driver.quit() yöntemi ... FF biz görelim bozmak için denemek, tarayıcı compatiblity sorunu olabilir. Tarayıcıyı kapatır, ancak bilinmeyen bazı sorunlar nedeniyle NullPointerException'u atar. Sadece onu yakalayın.

try{ 
    driver.quit(); 
    }catch (Exception e){ 
     System.out.println("Nothing to do with it"); 
     } 
0

Son GeckoDriver.exe (17) ile en son FireFox (54.0); Benim için iyi çalışıyor. Daha önce aynı problemi yaşadım.

Karşılaştığınız bu sorun, sürücü & Tarayıcı sürümü arasında tamamen bir uyumluluk sorunudur.

driver.close(); Yukarıdaki sürümleri kullanıyorsanız, sorunsuz çalışması gerekir. Eğer işe yararsa beni bilgilendir.

İlgili konular