48 votes

Erreur Laravel Dusk: échec de la connexion au port localhost 9515: connexion refusée

Comme le dit le titre, j'ai passer une installation propre de Laravel 5.4 et la dernière Ferme (1.0.1). Cependant, lorsque je lance un simple Crépuscule de cas de test j'obtiens l'erreur suivante:

Impossible de se connecter à localhost port 9515: Connexion refusée

Quelqu'un sait comment traiter ce problème? J'ai essayé de changer le port à autre chose comme 8888 , en vain.

EDIT: J'ai été en mesure de creuser un peu plus et a trouvé que l' chromedriver exécutable n'a pas été réellement exécutable (chmod). Maintenant que j'ai résolu, j'obtiens cette erreur quand j'ai essayer manuellement pour l'exécuter.

./chromedriver: error while loading shared libraries: libnss3.so: ne peut ouvrir le fichier objet partagé: Aucun fichier ou répertoire

6voto

SimonDepelchin Points 835

J'ai eu ce problème aujourd'hui et la solution est sur Laracasts.

Voici une copie.

 # makes sure all your repos are up to date
sudo apt-get update

# chrome dependencies I think
sudo apt-get -y install libxpm4 libxrender1 libgtk2.0-0 libnss3 libgconf-2-4

# chromium is what I had success with on Codeship, so seemed a good option
sudo apt-get install chromium-browser

# XVFB for headless applications
sudo apt-get -y install xvfb gtk2-engines-pixbuf

# fonts for the browser
sudo apt-get -y install xfonts-cyrillic xfonts-100dpi xfonts-75dpi xfonts-base         xfonts-scalable

# support for screenshot capturing
sudo apt-get -y install imagemagick x11-apps

# Once all this has run through, you need to fire up xvfb on your homestead box. If you're planning to # do this on a regular basis, you'll want to get this setup on boot, but for the sake of testing things out:
Xvfb -ac :0 -screen 0 1280x1024x16 &
 

3voto

Noik Points 353

Sur Ubuntu, 16.04, j'ai eu ce travail:

Installer Chrome et des dépendances pour les tests sans tête

sudo apt-get -y install chromium-browser xvfb gtk2-engines-pixbuf xfonts-cyrillic xfonts-100dpi xfonts-75dpi xfonts-base xfonts-scalable imagemagick x11-apps

Créer une personnaliséeDuskCommand

Qui s'étend de l'original, avec cette handle méthode:

public function handle()
{
    $xvfb = (new ProcessBuilder())
        ->setTimeout(null)
        ->setPrefix('/usr/bin/Xvfb')
        ->setArguments(['-ac',  ':0', '-screen', '0', '1280x1024x16'])
        ->getProcess();

    $xvfb->start();

    try {
        parent::handle();
    } finally {
        $xvfb->stop();
    }

    return;
}

Cela va démarrer Xvfb pour headless tests avant d'exécuter les essais et l'arrêter après le test se termine.

Edit: Et assurez - vendor/laravel/dusk/bin/chromedriver-linux est exécutable.

1voto

Utkarsh Vishnoi Points 84

Il semble que votre installation de chrome-driver est cassée.

Vous pouvez essayer de l'installer à partir de zéro

 CHROME_DRIVER_VERSION=`curl -sS chromedriver.storage.googleapis.com/LATEST_RELEASE`

wget -N http://chromedriver.storage.googleapis.com/$CHROME_DRIVER_VERSION/chromedriver_linux64.zip -P ~/
unzip ~/chromedriver_linux64.zip -d ~/
rm ~/chromedriver_linux64.zip
sudo mv -f ~/chromedriver /usr/local/bin/chromedriver
sudo chown root:root /usr/local/bin/chromedriver
sudo chmod 0755 /usr/local/bin/chromedriver
 

1voto

user6437700 Points 45

Cela devrait vous aider à télécharger la dernière version du pilote chrome et à la décompresser correctement.

 LATEST_VERSION=$(curl -s https://chromedriver.storage.googleapis.com/LATEST_RELEASE) && wget -O /tmp/chromedriver.zip https://chromedriver.storage.googleapis.co /$LATEST_VERSION/chromedriver_linux64.zip && sudo unzip /tmp/chromedriver.zip chromedriver -d /usr/local/bin/;
 

0voto

ndberg Points 363

La dernière version de laravel / homestead box v.6.0.0 fonctionne immédiatement

https://app.vagrantup.com/laravel/boxes/homestead

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X