2015-06-28 18 views
8

Tôi đang viết một chương trình đơn giản trong Eclipse bằng cách sử dụng chú thích JUnit.driver.close() không hoạt động trong Selenium WebDriver trên Firefox

diver.close() không đóng trình duyệt Firefox của tôi sau khi kiểm tra. Nó hoạt động tốt với Chrome. Đoạn mã ở đây.

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

Mục đích của việc sử dụng 'driver.close()' thay vì 'driver.quit()' là gì? – Saifur

+0

Cũng cùng một mã với Firefox và Junit chạy mà không có bất kỳ vấn đề và đóng trình duyệt. –

+0

Hey Saifur, Nó hoạt động tốt với driver.quit() ở đây nhưng tôi muốn biết tại sao nó không hoạt động với phương thức close(). –

Trả lời

2

đôi khi trong khi sử dụng lặp lại, chúng tôi sẽ gặp sự cố với driver.close(). Anyways driver.quit() sẽ khắc phục sự cố của bạn.

chung driver.close() đóng trình duyệt (trường hợp của lái xe vẫn còn nguyên vẹn) và driver.quit() là để giết dụ webdriver. Như bạn đang sử dụng ở đây chỉ cho một trang, bạn có thể đi với driver.quit().

Cảm ơn bạn.

1

Giả sử bạn đã bắt đầu 5 trình duyệt (lớp) song song sử dụng lưới:

driver.close - Được sử dụng cho đóng trình duyệt hiện tại (nơi thực hiện xảy ra)

driver.quit - Được sử dụng cho gần tất cả các trình duyệt đều bắt đầu bằng cách thực thi hiện tại.

Bạn có thể sử dụng bất kỳ một trong những điều này ..

Có thể trình duyệt vấn đề tương thích, cố gắng hạ cấp FF để cho chúng ta thấy ...

0

Better sử dụng driver.quit() phương pháp. Nó đóng trình duyệt, nhưng do một số vấn đề chưa biết nó ném NullPointerException. Chỉ cần bắt nó ..

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

Sử dụng mới nhất GeckoDriver.exe (17) với Firefox mới nhất (54,0); Nó hoạt động tốt cho tôi. Tôi đã có cùng một vấn đề trước đây.

Sự cố bạn đang gặp phải hoàn toàn là sự cố tương thích giữa trình điều khiển & Phiên bản trình duyệt.

driver.close(); nên có công việc mà không có vấn đề nếu bạn sử dụng các phiên bản trên. Cho tôi biết nếu nó hoạt động.

Các vấn đề liên quan