web-dev-qa-db-fra.com

Comment puis-je confirmer que j'utilise le bon chromé-pilote?

Je suis arrivé au bureau hier matin pour constater que mes tests Capybara ne pouvaient pas interagir avec Chrome. je regarde

Selenium::WebDriver::Error::UnknownError: unknown error: unable to discover open pages

La recherche sur Google a révélé que cela était probablement dû à un chromedriver ou Selenium-webdriver Obsolète, ce qui semblait très plausible, car aucun n'avait été mis à jour depuis longtemps (je pense que chromedriver était à 2.2 et Selenium-webdriver à 2.35.1), et depuis Chrome mise à jour automatique vers 32.0.1700.77 le Le 14 janvier, cela m'a semblé une bonne preuve solide.

J'ai donc mis à jour Selenium-webdriver En 2.39.0. Déterminer quelle version de chromedriver que j'utilisais s'est avérée plus difficile. J'avais une version de chromedriver dans mon répertoire Téléchargements à laquelle je pensais auquel mon code faisait référence, mais je ne trouvais pas mon répertoire Téléchargements dans le PATH (J'utilise OS X d'ailleurs). J'ai essayé de remplacer ce fichier par la version 2.8 De ici , mais cela n'a eu aucun effet. Je suis devenu sceptique sur le fait que la version de mon répertoire Téléchargements était la version qui était utilisée en premier lieu, j'ai donc utilisé brew pour l'installer. brew info chromedriver Donne maintenant:

chromedriver: stable 2.8
http://code.google.com/p/chromedriver/
/usr/local/Cellar/chromedriver/2.8 (2 files, 21M) *
    Built from source
From: https://github.com/Homebrew/homebrew/commits/master/Library/Formula/chromedriver.rb

Cela semble bon. Mon PATH contient /usr/local/bin, Qui a un lien chromedriver vers l'emplacement d'installation installé. Pour autant que je le comprenne, cela devrait permettre à mon automatisation de détecter et de lancer le chromedriver.

Malheureusement, mon problème n'est toujours pas résolu. Je reste unable to discover pages. Quelqu'un peut-il confirmer que j'ai fait ce que l'on fait normalement pour configurer le chromedriver?

Question secondaire: Après avoir téléchargé chromedriver 2.8 Directement et l'avoir également installé avec brew, j'ai essayé de lancer la version téléchargée et la version brew séparément pour confirmer que l'une ou l'autre version a pu démarrer correctement. Je suis certain qu'ils sont tous les deux en fait la version 2.8, Mais quand je lance l'un ou l'autre, la console dit:

Starting ChromeDriver (v2.2) on port 9515

Est-ce normal? Je ne m'attendais certainement pas à ce qu'il dise v2.2, Mais il n'y a pas d'autre version que 2.8 Installée par brew (donc je doute que brew utilise accidentellement l'ancienne version) , et lorsque j'exécute le fichier que j'ai téléchargé directement, je suis sûr que c'est la version 2.8 du site Web de Chromedriver. Est-ce un oubli de leur part ou v2.2 Fait-il référence à autre chose, aussi improbable que cela puisse paraître?

14
James Martineau

Il serait difficile de vérifier la version du pilote chrome fréquemment lorsque vous le téléchargez avec homebrew. Je suggère de télécharger le pilote et de le conserver dans un dossier mappé dans votre PATH.

Pour que la maintenance ou l'identification de la version du pilote soit facile avec les étapes ci-dessous:

  1. Accédez au dossier où vous avez ChromeDriver
  2. Ouvrir l'invite de commande pointant vers le dossier
  3. courir: chromeDriver -v
6
sri

ChromeDriver est à la version 2.16 maintenant . Je recommanderais de mettre à jour manuellement votre pilote au lieu de mettre à jour avec n'importe quelle version plus ancienne que homebrew veut vous mettre à jour.

0
djangofan

Vous pouvez utiliser la ligne de commande: pip freeze pour répertorier tous les packages que vous avez installés avec leur version. Ou vous pouvez également utiliser pip show <package name> pour vérifier les détails du package, qui inclut également la version du package.

0
Charon Wang