2015-01-12 7 views
0

Grails 어플리케이션에 Geb 테스트가있어서 폼 요소를 완전히 잃어 버렸습니다. 테스트가 진행되는 것을보고 요소 자체가 채우거나 실행되지 않습니다. 나는 무엇을 잘못 할 수 있 었는가? Geb 테스트 : 폼 요소가 누락되었습니다.

양식 요소 GSP

:

<div class="form-group"> 
    <label id="business" class="col-sm-2 control-label topsidelabel" for="business">Business</label> 
    <div class="col-sm-4"> 
     <label id="business-label" class="toplabel" for="business">Name</label> 
     <g:textField id="business" name="business" maxlength="50" class="form-control" value="${....business}" aria-labelledby="business-label"/> 
    </div> 
</div> 

게브 시험 선택 (2 개의 다른 시도) :

$('#business').value('5150 Studios') 
$("form").business == "5150 Studios" 

양식 HTML은 :

<div class="form-group"> 
    <label id="business" class="col-sm-2 control-label" for="">Business</label> 
    <div class="col-sm-4"> 
     <label id="Name-label" class="toplabel" for="Name">Name</label> 
     <input type="text" name="business" maxlength="50" class="form-control" value="" id="business" /> 
    </div> 
</div> 
+1

전 2 ID = "비즈니스" – pumpkinzzz

+0

당신이 GSP에 의해 생성 된 HTML을 게시 할 수 참조? – jk47

답변

2

당신은 ID business 두 요소를 가지고있다. $('#business') geb를 호출하면 지정된 선택기와 일치하는 Navigator 객체의 목록이 반환됩니다. 이 경우 선택기와 일치하는 두 개의 요소가 있으므로 두 개의 탐색기가 다시 수신됩니다. 문제를 해결하거나 이름을 바꾸 두 business 요소 중 하나 또는 호출하려면 :

$('#business')[1].value('5150 Studios') 
+0

+0

정확히 무엇을 요구하고 있는지 확실하지 않습니다. GSP 파일에서 생성 된 HTML을 게시하면 모든 것이 훨씬 명확 해집니다. – jk47

+0

어떻게 그 html을 찾을 수 있습니까? 파이어 폭스 -> 도구 -> 웹 개발자 -> 소스보기 ...로 가면 내가 이미 게시 한 html이다. – ry1633