2016-03-08 11 views
6

Jestem smutny,Selenium i Laravel 5.2

Używam Laravel 5.2 i opracowuję testy jednostkowe.

W laravel 5.1, można użyć wielkiej Integrated lib użyć selen, ale nie wydają się działać w laravel 5,2

więc w zasadzie, jest jakiś rodzaj integracji pomiędzy L5.2 i selen, czy nie można go ładnie używać?

W tym przypadku, należy ostatecznie przebywał w L5.1 jak testowanie jest fundamentalną częścią mojego app :(

+2

https://laracasts.com/discuss/channels/testing/has-anyone-tried-laravel-integrated-package-in-laravel-52 – haakym

Odpowiedz

0

Musisz zainstalować pakiet PHPUnit_selenium użyciu kompozytor

composer require --dev phpunit/phpunit-selenium 

Tworzenie Selen test Klasa sprawa wewnątrz laravel/testy/

<?php 

class SeleniumTestCase extends PHPUnit_Extensions_Selenium2TestCase 
{ 
    /** 
    * The base URL to use while testing the application. 
    * 
    * @var string 
    */ 
    protected function setUp() 
    { 
     $this->setBrowser('firefox'); 
     $this->setBrowserUrl('http://localhost:8000/'); 
    } 

    protected function visit($path) 
    { 
     $this->url($path); 
     return $this; 
    } 

    protected function see($text, $tag = 'body') 
    { 
     print_r(request()->session()->all()); 
     //method call by tag name; 
     $this->assertContains($text,$this->byTag($tag)->text()); 
     return $this; 
    } 

    protected function pressByName($text){ 
     $this->byName($text)->click(); 
     return $this; 
    } 
    protected function pressByTag(){ 
     $this->byTag('button')->click(); 
     return $this; 
    } 
    protected function type($value, $name) 
    { 
     $this->byName($name)->value($value); 
     return $this; 
    } 

    protected function hold($seconds){ 
     sleep($seconds); 
     return $this; 
    } 
} 

i Utwórz nowy przypadek testowy dla odwiedzenie strony głównej url

<?php  
class ExampleTest extends SeleniumTestCase 
{ 
    /** 
    * A basic functional test example. 
    * 
    * @return void 
    */ 
    public function testTitle() 
    { 
     $this->visit('/') 
      ->see('Site title','title'); 
    } 
} 

i komenda Run Test phpunit od terminala dokumentu

java -jar /usr/local/bin/selenium-server-standalone-2.35.0.jar 

referencyjnego: