2012-11-30 5 views
0

웹 사이트를 테스트하려고합니다. 메뉴 항목을 제외한 대부분의 웹 요소에 액세스 할 수 있습니다.Selenium을 사용하여 Javascript를 테스트합니다.

기본적으로 드롭 다운 메뉴가 있는데, 셀렌을 사용하여 메뉴를 클릭하여 드롭 다운 메뉴를 열었습니다. 이제 메뉴에서 요소를 클릭해야하지만 메뉴가 웹 요소가 아닌 자바 스크립트로 작성된 것 같습니다. 따라서 메뉴 항목에 액세스 할 수있는 방법을 찾을 수 없습니다.

어떤 아이디어? 나는 특히 셀레늄에서 이것을 할 필요가있다.

업데이트 : -------------------------------------------- ------------------------------------------ 웹 사이트의 메뉴가 컨텍스트 메뉴 그것은 왼쪽 클릭을 사용하여 열립니다. 옵션에 액세스 할 수있는 아이디어가 있습니까?

+1

셀레늄 RC는 자바 스크립트를 사용하여 브라우저와 상호 작용하므로 이러한 요소와도 상호 작용할 수 있어야합니다. 일부 HTML을 보여주는 것이 도움이 될 것입니다. 또한 지금까지 시도한 것은 무엇입니까? – vidit

+0

다양한 옵션을 시도했지만이 문제와 관련하여 아무데도 가지 않았습니다. 내가 할 수 있었던 것은 셀레늄 .sendkey() 메서드로 아래 화살표를 사용하여 아래로 스크롤하여 메뉴의 요소에 액세스하는 것이 었습니다. – Steve

+0

어떤 브라우저를 사용합니까? 우리는 IE와 Chrome에서 한때 simular 문제가있었습니다. –

답변

0

나는 메뉴를 클릭하고 셀렌을 통해 위아래 화살표를 사용하여 항목을 스크롤하는 것 이외에는 셀렌을 사용하여 메뉴 항목에 액세스하지 못했다.

테스트를 기록/재생하기 위해 OpenScript를 사용했는데 작동했습니다. 필자가 사용하고 있던 웹 사이트에서는 테스트 할 수 있도록 플래그를 설정해야했습니다. 웹 사이트 테스트에 문제가 발생하는 경우 개발자에게 문의하여 "자동화"플래그가 설정되었는지 여부를 묻는 것이 좋습니다.

0

메뉴는 페이지의 javascript로 생성되고 조작 될 수 있지만 html로 존재합니다. Selenium을 사용하여이 html과 상호 작용할 수 있습니다.

+0

개발자 도구를 사용하여 메뉴 버튼을 선택하면 메뉴에 HTML이 표시되지 않고 다음과 같이 표시됩니다 : 그리고 어릴 때, 그것은 단순히 보여줍니다 : 텍스트 - 파일 – Steve

0
WebElement dropDownListBox = driver.findElement(By.id("Menu_id")); 
        Select clickThis = new Select(dropDownListBox);     
        clickThis.selectByVisibleText(activity); //If you know visible text 
       //clickThis.getFirstSelectedOption(); // This will auto select first option in the drop down     
       // clickThis.selectByValue(1); //if you the value of drop down list items 
+0

고마워요,하지만 태그는 선택 태그가 아니라 td 태그, 그래서 예외가 생겼어. "File"td에서 이해할 수있는 한 javascript 파일이 있습니다. ' ' 아래에'Text-file ' – Steve

0

컨텍스트 메뉴를 여는 것은 쉽지 않습니다. 지금까지는 자바 스크립트 실행을 통해 마우스 이벤트가 발생했습니다 (다른 솔루션을 찾지 못했습니다). 그것은 그 토론 시뮬입니다 : Trigger right-click 또는 Selenium 2 right-click

그냥 기본 JS-기능을 트리거하는 경우 가끔은, 유용 . 대부분의 경우 개발자가 전화를 걸기 위해 하나의 진입 점을 제공 할 수 있습니다. 이것은 테스트 빌드를 계속 유지할 수있게 해주 며 잠시 후 이벤트를 트리거하여 contextmenu를 여는 javascript 함수를 구현합니다.

관련 문제