Comment exécuter ghostdriver avec Selenium en utilisant java
je veux utiliser phantomJS
pour quelques tests web, et je suis tombé sur GhostDriver
( https://github.com/detro/ghostdriver ). Je l'ai construit en utilisant les instructions dans le readme et je peux l'exécuter sur un port spécifié, mais je ne suis pas sûr de savoir comment accéder au pilote web à partir de mon code java. Pour clarifier, j'ai vu cet exemple dans ruby:
caps = {
:browserName => "phantomjs",
:platform => "LINUX"
}
urlhub = "http://key:secret@hub.testingbot.com:4444/wd/hub"
client = Selenium::WebDriver::Remote::Http::Default.new
client.timeout = 120
@webdriver = Selenium::WebDriver.for :remote, :url => urlhub, :desired_capabilities => caps, :http_client => client
@webdriver.navigate.to "http://www.google.com/"
puts @webdriver.title
@webdriver.save_screenshot("./screenshot.png")
@webdriver.quit
Je ne sais pas comment faire la même chose depuis java.
4 réponses
je crois que ce lien répondra à vos questions. Vous aurez besoin de Selenium 2.28.0, et PhantomJS 1.8. J'ai testé ceci, et cela fonctionne comme annoncé, bien que mes tests aient été précurseurs. Notez que vous devez télécharger le fichier zip de sélénium pour obtenir le bocal qui contient les reliures. Le maven repo ne l'inclut pas encore.
http://ivandemarino.me/2012/12/04/Finally-GhostDriver-1-0-0 /
juste pour clarifier pour les autres qui pourraient voir cela, de l'exécuter à partir de java:
DesiredCapabilities caps = new DesiredCapabilities();
caps.setCapability(PhantomJSDriverService.PHANTOMJS_EXECUTABLE_PATH_PROPERTY,
"/Path/to/bin/phantomjs");
driver = new PhantomJSDriver(caps);
alors il peut être utilisé comme un WebDriver habituel.
téléchargez D'abord le fichier exe du PhantomJSDriver. Vous n'avez pas besoin de l'installer, Téléchargez seulement ce fichier à partir de http://phantomjs.org/download.html et donnez simplement le chemin du fichier exe dans le code donné.
public class Browserlaunch {
public static void main(String[] args) {
DesiredCapabilities DesireCaps = new DesiredCapabilities();
DesireCaps.setCapability(PhantomJSDriverService.PHANTOMJS_EXECUTABLE_PATH_PROPERTY, "C:/Drivers/phantomjs/bin/phantomjs.exe");
WebDriver driver=new PhantomJSDriver(DesireCaps);
driver.get("http://google.com");
}
}
Seulement ensemble du système de la propriété:
System.setProperty("phantomjs.binary.path", "lib/phantomjs.exe");
WebDriver driver = new PhantomJSDriver();