2014-12-23 10 views

Antwort

2

driver.close() der Wert des Treibers Nach dem Aufruf wird auf

FirefoxDriver: firefox on WINDOWS(4b4ffb1e-7c02-4d9c-b37b-310c771492ac) 

Aber wenn Sie driver.quit() rufen dann setzt er den Wert des Treibers

FirefoxDriver: firefox on WINDOWS (null) 

Also, wenn Sie das Browser-Fenster sind überprüft nach dem Aufruf driver.quit() dann können Sie von unten Implementierung kennen.

WebDriver driver = new FirefoxDriver(); 
driver.get("http://www.google.com"); 
driver.quit();    
if(driver.toString().contains("null")) 
{ 

System.out.print("All Browser windows are closed "); 
} 
else 
{ 
//open a new Browser 
} 
+0

Das ist eine schreckliche Idee. Wenn Sie die 'toString'-Methode überprüfen, um die Anwendungslogik zu bestimmen, schießen Sie sich selbst in den Fuß. – gzm0

+0

@ gzm0 Irgendwelche bessere Idee? Ich kann keine API finden, um den Status zu überprüfen. – user1686407

3

Es gibt keine API dafür. Das beste, können Sie tun, ist toString Methode aufrufen, die eine Zeichenfolge wie folgt zurückgibt:

SafariDriver . . . null 

Dann können Sie contains Methode aufrufen, die in der Zeichenfolge zu überprüfen ist null gibt.

Beachten Sie, dass dies nur funktioniert, wenn quit aufgerufen wird.

Verwandte Themen