J'aimerais utiliser Selenium pour automatiser quelques tâches Web (pas pour les tests). Je pense avoir Selenium RC Server installé, mais je n’ai aucun moyen d’écrire des "scripts de test" car je ne trouve pas de pilote client dans PHP (voir: http://seleniumhq.org/download/ ).
Existe-t-il un moyen pour moi d'utiliser Selenium avec PHP? Cela semble suggérer que j'ai besoin de PHPUnit http://www.phpunit.de/manual/current/en/Selenium.html . Je veux juste automatiser quelques tâches et non m'impliquer dans une suite complète de tests.
Essayez de suivre les choses
pour référence comment écrire ces fichiers, cliquez sur ici et essayez également sur git hub
facebook/php-webdriver est un client génial pour Selenium et php.
Vous pouvez l'utiliser pour automatiser des tâches Web (à la demande du PO), ou simplement intégrer php-webdriver à votre framework de test. Certains projets fournissent déjà ceci:
Téléchargez et installez facebook/php-webdriver . composer require facebook/webdriver
Téléchargez Selenium & Start it. Java -jar Selenium-server-standalone-#.jar
Téléchargez Quick Java et placez-le dans le répertoire de votre projet.
Dans cet exemple, nous utilisons l'extension quickjava
pour tout désactiver sauf javascript
et cookies
.
Voir plus de paramètres de préférence ici:
https://github.com/ThatOneGuyDotNet/QuickJava/blob/master/defaults/preferences/defaults.js
Voir plus d'exemples de commandes ici:
https://github.com/facebook/php-webdriver/wiki/Example-command-reference
use Facebook\WebDriver\Firefox\FirefoxProfile;
use Facebook\WebDriver\Firefox\FirefoxDriver;
use Facebook\WebDriver\Remote\DesiredCapabilities;
use Facebook\WebDriver\Remote\RemoteWebDriver;
// Change this to the path of you xpi
$extensionPath = $this->container->getParameter('kernel.root_dir').'/../bin/Selenium/quickjava-2.0.6-fx.xpi';
// Build our firefox profile
$profile = new FirefoxProfile();
$profile->addExtension($extensionPath);
$profile->setPreference('thatoneguydotnet.QuickJava.curVersion', '2.0.6.1');
$profile->setPreference('thatoneguydotnet.QuickJava.startupStatus.Images', 2);
$profile->setPreference('thatoneguydotnet.QuickJava.startupStatus.AnimatedImage', 2);
$profile->setPreference('thatoneguydotnet.QuickJava.startupStatus.CSS', 2);
//$profile->setPreference('thatoneguydotnet.QuickJava.startupStatus.Cookies', 2);
$profile->setPreference('thatoneguydotnet.QuickJava.startupStatus.Flash', 2);
$profile->setPreference('thatoneguydotnet.QuickJava.startupStatus.Java', 2);
//$profile->setPreference('thatoneguydotnet.QuickJava.startupStatus.JavaScript', 2);
$profile->setPreference("thatoneguydotnet.QuickJava.startupStatus.Silverlight", 2);
// Create DC + Driver
$dc = DesiredCapabilities::firefox();
$dc->setCapability(FirefoxDriver::PROFILE, $profile);
$driver = RemoteWebDriver::create($Host, $dc);
$driver->get('http://stackoverflow.com');
// Do stuff - https://github.com/facebook/php-webdriver/wiki/Example-command-reference
//$driver->findElement(WebDriverBy::id("element-id"));
// The HTML Source code
$html = $driver->getPageSource();
// Firefox should be open and you can see no images or css was loaded
Le serveur Selenium doit être en cours d'exécution et une bibliothèque de pilotes Web pour interagir avec celui-ci.
Officiellement, Selenium ne prend pas en charge PHP, mais Nearsoft a créé une bibliothèque pour interagir avec le protocole Json Wire. Nous voulions le rendre aussi semblable que possible aux exemples d’autres langages et de pilotes du site officiel afin qu’un exemple tiré de la page en Java ait une syntaxe très similaire en php.
Découvrez-le: https://github.com/Nearsoft/PHP-SeleniumClient
Si vous l'aimez, partagez-le, impliquez-vous, donnez-le à la fourchette ou faites comme bon vous semble.
Cordialement, Mark.
Je pense que le gars a principalement demandé comment utiliser IDE fichiers générés.
Il existe un formateur pour PHP: il ne vous reste plus qu'à exporter en tant que PHPunit.
Selenium IDE: PHP Formatters :: Add-ons pour Firefox https://addons.mozilla.org/en-US/firefox/addon/Selenium-ide-php-formatters/
Veuillez vérifier ce lien: http://mvnrepository.com/artifact/org.seleniumhq.Selenium.client-drivers
Cliquez sur le lien Selenium-php-client-driver pour obtenir le binaire