2014-11-03 1 views
0

수정 된 HTML 아이콘이있는 ajaxEditableLabel 인 ajaxEditableLabelWithIcon이 있습니다. 사용자가이 아이콘을 클릭하면 편집기 필드가 편집 가능하게되고 다시 클릭하면 내용이 저장됩니다. 우리는 JQuery를 사용하여이를 수행했습니다 :자바 스크립트 기능 개찰 테스트

function editOrSubmit(element){ 

panel = element.parentElement; 
    label = panel.children[0]; 
    if(panel.find){ 
     e = $.Event('keypress'); 
     e.which = 13; // Enter key 
     label.trigger(e); //submit the FormTester 
    } 
    else{ 
     label.click(); //Wich make the label editable 
    } 
} 

이제는 JUnit을 사용하여 테스트하고 싶습니다. 내가 직접 아이콘을 클릭 할 수 없기 때문에, 나는 함수에 자바 스크립트 바로 가기를 만든 다음의 keyPressed 이벤트를 트리거 할 수있는 로봇 만들려고 : 그것은 브라우저에서 잘 작동

// defining flags 
var isCtrl = false; 
var isShift = false; 

$(document).ready(function() { 
    // action on key up 
    $(document).keyup(function(e) { 
     if(e.which == 17) { 
      isCtrl = false; 
     } 
     if(e.which == 16) { 
      isShift = false; 
     } 
    }); 
    // action on key down 
    $(document).keydown(function(e) { 
     if(e.which == 17) { 
      isCtrl = true; 
     } 
     if(e.which == 16) { 
      isShift = true; 
     } 
     // En cas d'appui sur ctrl+Shift+F9 en même temps, la méthode editOrSubmit est appelée 
     if(e.which == 120 && isCtrl && isShift) { 
      var icon = document.getElementById("icon"); 
      editOrSubmit(icon); 
     } 
    }); 

}); 

을하지만, 내부 아무것도 테스트하지 않습니까? 왜 그런지 알아?

답변

-1

불행히도 Wicket과 JUnit은 JavaScript 코드가 아니라 Java 코드 만 테스트 할 수 있습니다. 그러나 Wicket 자체는 Maven과 frontend-maven-plugin을 사용하여 Maven을 통해 QUnit 테스트를 실행합니다. testing/wicket-js-tests (https://github.com/apache/wicket/tree/master/testing/wicket-js-tests)에서 Wicket 코드를 살펴보고 Wicket에 의해 어떻게 수행되는지 확인하고 테스트를 실행하는 데 필요한 코드를 복사 할 수 있습니다.