2013-07-18 12 views
5

Birçok örnekte, hem webdriver-> setBrowserURL (url) hem de webdriver-> url (url) çağrılarını gördüm. Neden diğerini kullanmak istiyorum? Bu tür bir örnek kullanarak gösterir, hem (phpunit manual alınan) aynı şekilde: setBrowserUrl() bir kez adı kurulumunda olacaktır nedenphpunit için Selenium 2 web sürücüsünde setBrowserUrl() ve url() arasındaki fark nedir?

<?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()); 
    } 

} 
?> 

- ve URL() testte aynı URL ile çağrılabilir davanın kendisi mi?

Diğer örneklerde, URL için yalnızca bir yolla çağrılan URL'yi() gördüm. Burada uygun kullanım nedir? Url() kullanımı hakkında neredeyse hiç belge bulamadım.

cevap

5

setBrowserUrl(), testlerinizdeki göreli yolları kullanmanıza olanak tanıyan bir temel URL'yi ayarlar.

PHPUnit kılavuzda örnek tür kafa karıştırıcı - Ben onsuz bir hata atmak olacak çünkü setBrowserUrl() kurulum sırasında kullanılıyor inanıyoruz:

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

$ this-> url kullanacak göreceli bir yol verilirse bu taban.

+0

Teşekkürler. Açıkçası, eğer url() ile temel url + mutlak yolunu kullanırsam, setBrowserUrl() 'da set edilen temel url ve yolu geçersiz kılar mı? – Clandestine

+0

Eğer mutlak bir yolla url() kullanırsanız, temel yolu yok sayar. Daha sonra göreceli bir yolla url() kullanırsanız, ziyaret edilecek URL'yi belirlemek için setBrowserUrl() ile ayarladığınız temel yolu kullanır. –

İlgili konular