2013-07-18 10 views
5

W wielu przykładach widziałem połączenia nawiązywane zarówno z webdriver-> setBrowserURL (url) i webdriver-> url (url). Dlaczego miałbym chcieć użyć jednego zamiast drugiego. Jednym z takich przykładów pokazuje, używając zarówno w ten sam sposób (wzięte z phpunit manual):Jaka jest różnica w ustawieniach setBrowserUrl() i url() w sterowniku internetowym Selenium 2 dla phpunit?

<?php 
class WebTest extends PHPUnit_Extensions_Selenium2TestCase 
{ 
    protected function setUp() 
    { 
     $this->setBrowser('firefox'); 
     $this->setBrowserUrl('http://www.example.com/'); 
    } 

    public function testTitle() 
    { 
     $this->url('http://www.example.com/'); 
     $this->assertEquals('Example WWW Page', $this->title()); 
    } 

} 
?> 

Dlaczego setBrowserUrl() być wywoływana raz w konfiguracji - a potem url() być wywołana z identycznego adresu URL w teście sprawa sama w sobie?

W innych przykładach widziałem, że funkcja url() była wywoływana za pomocą tylko ścieżki do adresu URL. Jakie jest właściwe użycie tutaj? Nie mogę znaleźć prawie żadnej dokumentacji na temat korzystania z url().

Odpowiedz

5

setBrowserUrl() ustawia podstawowy adres URL, umożliwiając stosowanie względnych ścieżek w testach.

Przykład z podręcznika phpunit jest trochę mylące - Wierzę setBrowserUrl() jest używany podczas instalacji po prostu dlatego, że będzie to wygeneruje błąd bez niego:

public function start() 
{ 
    if ($this->browserUrl == NULL) { 
     throw new PHPUnit_Framework_Exception(
      'setBrowserUrl() needs to be called before start().' 
     ); 
    } 

$ this-> URL użyje ta podstawa, jeśli podana jest ścieżka względna.

+0

Dzięki. Tak więc jestem jasne, jeśli użyję adresu podstawowego + bezwzględnej ścieżki z url(), to zastąpi bazowy adres URL i ścieżkę ustawioną w setBrowserUrl()? – Clandestine

+0

Jeśli używasz url() z bezwzględną ścieżką, zignorujesz ścieżkę podstawową. Jeśli później użyjesz funkcji url() ze ścieżką względną, użyje ona ścieżki bazowej ustawionej za pomocą metody setBrowserUrl() w celu określenia adresu URL do odwiedzenia. –

Powiązane problemy