2016-02-03 1 views
1

JBrowserDriver est dit être un webkit sans tête que je souhaite utiliser avec mon phpunit. Je ne sais pas comment le configurer pour qu'il puisse être utilisé.Utilisation de JBrowserDriver sans tête avec le serveur Selenium et phpunit

Je l'ai essayé avec autonome de serveur de sélénium et de l'appeler de mon unité: $this->setBrowser('jBrowserDriver');

et les plaintes du serveur:

Caused by: org.openqa.selenium.WebDriverException: The best matching driver provider org.openqa.selenium.safari.SafariDriver can't create a new driver instance for Capabilities [{browserName=jbrowserdriver}]

J'ai essayé de placer CLASSPATH mais n'aide pas sélénium trouver la classe dans jbrowserdriver-0.8.2.jar.

Comment est-ce que cette configuration si sélénium peut commencer à l'utiliser et plus tard, phpunit peut également l'utiliser. J'utilise MacOS.

+0

Est-ce que vous suivez les instructions à https://github.com/MachinePublishers/jBrowserDriver#usage? Veuillez également poster votre code d'installation. –

+0

c'est ma première tentative d'utiliser phpunit + sélénium. l'utilisation de jbrowserdriver donne l'exemple d'utilisation en Java. Mais je n'ai pas de Java dans ma configuration. https://phpunit.de/manual/3.7/en/selenium.html si vous voyez le premier exemple d'unité, c'est ce que j'essaie, seulement je veux utiliser jbrowserdriver au lieu du navigateur par défaut. c'est tout. – thevikas

+0

Bonjour, j'ai créé jBrowserDriver. Pouvez-vous essayer la version 0.8.6 disponible via Maven? Je n'ai pas PHPUnit à tester. J'ai changé le nom du navigateur pour qu'il soit "jBrowserDriver" ... Notez que toutes les options de configuration ne seront pas disponibles car je n'ai pas encore implémenté les capacités – Dan

Répondre

1

jBrowserDriver le supportera dans la prochaine version 0.10.0. Pour vous assurer que vous pouvez charger ceci, mettez jBrowserDriver et toutes ses dépendances sur le classpath. Utilisez également « jbrowserdriver » (minuscule) comme nom, $this->setBrowser('jbrowserdriver');

Pour votre information, pour faire un WebDriver disponible dans Selenium Server, sur votre chemin de classe ont un répertoire nommé META-INF/services contenant un fichier nommé org.openqa.selenium.remote.server.DriverProvider et à l'intérieur de cette liste des fichiers du paquet/nom de classe de la classe concrète qui implémente org.openqa.selenium.remote.server.DriverProvider ou s'étend org.openqa.selenium.remote.server.DefaultDriverProvider. (Pour plus de détails, voir http://docs.oracle.com/javase/7/docs/api/java/util/ServiceLoader.html). Cependant, v0.10.0 + de jBrowserDriver le fera pour vous dès la sortie de la boîte.

(divulgation: Je suis que le propriétaire du projet)