2012-02-21 3 views
1

저는 Selenium을 사용하여 회사의 일부 웹 제품을 테스트합니다. 제품에 색상이있는 대화 상자가 열리는 버튼이 있습니다. 나는 그것이 'extJS'를 사용하여 만들어 졌다고 생각한다. 그런 다음 Webdriver를 사용하여 해당 버튼의 아무 부분이나 클릭하면 항상 현재 선택한 색상으로 설정되지만 색상을 선택하려면 더 최근에 열린 대화 창이 열립니다.Webdriver : 오픈 컬러 선택기의 버튼 부분을 클릭하십시오.

유사한 임의의 사이트에서 비슷한 버튼을 발견했습니다. 비슷한 동작이 있습니다.

Link to site with button on developer.yahoo.com

그래서 페이지의 소스는 아래 지향 화살표 버튼의 오른쪽 부분에 대한 구체적인 요소가 없음을 볼 수 있습니다. 그래서 XPATH

//*[@id='color-picker-button'] 

는 모두 버튼, 오른쪽 부분과 왼쪽 부분을 설명합니다.

그러나 모든 하위 요소는이 버튼의 왼쪽 부분 만 설명하므로 화살표가있는 오른쪽 부분에는 WebDriver 텍스트에서 클릭 할 특정 xPath가 없습니다. 나는 또한 시도했다.

driver.action.move_to(element, coordinate_right, coordinate_down).perform 

그러나 나는 그다지 효과가 없다.

그래서 일반적으로 내 질문은 :

방법 (C#)를 that Yahoo page

답변

3

사용에에서 SendKeys() 메소드를 색상 선택기 창을 열고 컨트롤에 "아래 화살표"키를 보낼 :

element.SendKeys(Keys.ArrowDown); 

그러면 바로 열어야합니다.

+0

감사합니다. 나는 그것에 대해 결코 생각하지 않는다. 그 대답은 어떻게 얻었습니까? – ShockwaveNN

+2

WebDriver를 많이 사용합니다 ... :) – Anders

+0

정확히 Keys.ArrowDown의 값은 무엇입니까? – tipu

관련 문제