2013-10-14 4 views
5

내가 기본 phpunit을 셀레늄 주장 하나, 검사 오류 출력 및 메시지를 표시합니다 사용하려고 할 때마다 함께 명령을 호출 할 수 없습니다 : http://phpunit.de/manual/3.7/en/selenium.html여러 메소드 인수

Exception: You cannot call a command with multiple method arguments. 

를, 그것은으로 사용을 보여줍니다 :

void assertElementValueEquals(string $locator, string $text) 

내가

$this->assertElementValueEquals('id=date_1_formatted', '2013-01-01'); 

t로를 호출 할 때 수 동부 표준시는 Using PHPUnit with Selenium, how can I test that an element contains exactly something?

+0

" '# date_1_formatted'' 또는''[id ='date_1_formatted ']"' – Richard

+0

제안 해 주셔서 감사하지만 그 각각은 여전히 ​​같은 오류가 발생합니다. –

+0

'$ locator'가 무엇인지 명시 적으로 명시하는 특정 문서를 찾을 수 없지만 xpath만을 허용 할 수 있습니다. 어떤 경우에는''// [@ id = 'date_1_formatted'] "' – Richard

답변

3

assertElementValueEquals이Selenium2TestCase에서 구현되지 않는 문제로이 같은 형식이 같다하더라도마다 다른 사람을 위해 작동하는 위의 오류가 발생합니다. 귀하의 링크에 SeleniumTestCase (셀렌 RC 버전) 언급했다.

$element = $this->byId('date_1_formatted'); 
$this->assertEquals('2013-01-01', $element->value()); 

PS : 당신이 잘 알고있는 경우

또한, 당신은> byXPath 여기 또한 https://github.com/sebastianbergmann/phpunit-selenium/blob/master/Tests/Selenium2TestCaseTest.php

처럼 당신이 $ this-> byId() 사용할 수 있습니다 $ this-과 올바른 구조를 사용 Selenium IDE를 사용하면 command line tool을 시도 할 수 있습니다.

+0

여는 태그와 닫는 태그 사이에 포함 된 값을 얻으려면, 예를 들어'Hello'에'Hello '를 얻으려면'$ element-> text()'를 사용하고'$ element'는'a' 요소라고 가정하십시오. –

0

내 경우에는 내 자신의 사용자 지정 방법이므로이 줄이 꺼져 있다고 생각했습니다.
나는 시험 클래스와 phpunit 사이에 다른 "버퍼"클래스를 사용하고 있었다. 그러나 __call()을 Lot로 사용하기 때문에 "undefined method"대신에 ↑에 오류가 있습니다.