2014-07-03 24 views
1

所以我開始接觸PHPUnit的硒2PHPUnit和Selenium進行,並從要素髮行獲得價值

public function testHasALoginForm() 
{ 
    $this->url('/login'); 

    $username = $this->byName('username'); 
    $password = $this->byName('password'); 

    $this->assertEquals('', $username->value()); 
    $this->assertEquals('', $password->value()); 
} 

這只是發生時,我打電話從元素的value()方法和我結束了得到:

1) test\view\LoginTest::testHasALoginForm 
PHPUnit_Extensions_Selenium2TestCase_WebDriverException: GET /session/fdcf0669-1d42-4a35-8e7a-29dec4a0f1e4/element/0/value 
Build info: version: '2.42.1', revision: '68b415a', time: '2014-05-29 16:16:49' 
System info: host: 'Something.local', ip: '192.168.1.108', os.name: 'Mac OS X', os.arch: 'x86_64', os.version: '10.9.3', java.version: '1.8.0_05' 
Driver info: driver.version: unknown 

我做錯了什麼?

回答

4

- > value()方法已在selenium v​​2.42.0中刪除。目前推薦的解決方案是使用$element->attribute('value')

@see https://code.google.com/p/selenium/source/detail?r=953007b48e83f90450f3e41b11ec31e2928f1605

+0

是的,這解決了這個問題對我來說。我發現這非常難以診斷 - 即使是單步執行代碼,發現通過curl從服務器返回的500錯誤沒有任何亮點。當舊的代碼停止工作時,令人沮喪!感謝您的解決方案。 – scipilot

1

嗨,我得到完全相同的錯誤,大致相同的代碼。我正在使用與您相同版本的硒。 但是,使用2.39.0版本時我沒有收到此錯誤。 因此,它似乎是迴歸或不推薦使用。