Su PhantomJS 1.9.2, ubuntu 12 LTS e Ghostdirver 1.04 insieme al selenio 2.35 I processi phantomjs penzolanti si verificano dopo i miei test. Qualcuno sa un buon modo come risolvere questo?phantomjs non si chiude e lascia i processi orfani
Ecco un programma di test che illustra il comportamento strano:
package testing;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.phantomjs.PhantomJSDriver;
import org.openqa.selenium.phantomjs.PhantomJSDriverService;
import org.openqa.selenium.remote.DesiredCapabilities;
public class PhantomIsNotKilledDemo {
private static WebDriver getDriver(){
String browserPathStr = System.getProperty("selenium.pathToBrowser");
if (browserPathStr == null) browserPathStr = "/home/user1/apps/phantomjs/bin/phantomjs";
DesiredCapabilities caps = DesiredCapabilities.phantomjs();
caps.setCapability("takesScreenshot", true);
caps.setCapability(
PhantomJSDriverService.PHANTOMJS_EXECUTABLE_PATH_PROPERTY,
browserPathStr);
WebDriver driver = new PhantomJSDriver(caps);
return driver;
}
public static void main(String[] args) {
int max = 10;
for (int i = 0; i < max; i++){
WebDriver d1 = getDriver();
d1.get("http://www.imdb.com/title/tt1951264");
System.out.println("done with cycle " + (i+1) +" of "+max);
d1.close();
//d1.quit();
}
System.out.println("done");
System.exit(0);
}
}
Per eseguire questo, si dovrebbe fornire il percorso dei vostri phantomjs binari come proprietà di sistema o di impostare la variabile di conseguenza.
Dopo aver abbandonato questo percorso lo faccio comando di shell
ps -ef | grep phantomjs
e trovare 10 penzolanti processi phantomjs.
Se si utilizza d1.quit()
, invece, si finisce senza alcun processo di oscillazione. Questo è chiaramente migliore, ma comunque mi sarei aspettato di ottenere lo stesso risultato con .close
.
Nota, questo è un crosspost di https://github.com/detro/ghostdriver/issues/162#issuecomment-25536311
Aggiornamento Questo post viene modificato secondo il suggerimento di Richard (vedi sotto).
finalmente qualcuno fa luce su questo. Forse hanno chiarito i documenti da quando ho fatto la mia domanda da allora non ho visto la differenza. È ancora un comportamento piuttosto strano e piuttosto inaspettato, ma vabbè - così sia. Grazie per averlo indicato. – luksch