2012-08-28 2 views
3

Ctrl + 0을 보내어 IE 9를 100 %로 설정하려고합니다. 나는 또한 행동이 코드 개체를 시도webdriver에서 IE 9로 Ctrl-0 보내기 C#

IWebElement query = Driver.FindElement(By.TagName("html")); 

query.SendKeys("^0"); 
query.SendKeys(Keys.Control + Keys.NumberPad0); 

:

내가 다음 코드 조각을 시도

Actions action = new Actions(Driver); 
action.KeyDown(Keys.Control).SendKeys("0").KeyUp(Keys.Control).Perform(); 

내가 자바, WebDriver는 Keys.chord을 지원 읽고()를 그러나 C#에서이 구현을 찾을 수 없습니다.

어떤 아이디어라도 도움이 될 것입니다.

+0

페이지의 [이] [1] 게시물 : 당신의 줌 레벨을 100 %로 설정되지 않은 경우 같은 것을 사용하여 드라이버를 초기화하지 않는 한 InternetExplorerDriver 생성자는 예외가 발생합니다. 그것은 당신이하려고하는 것과 비슷합니다. [1] : http://stackoverflow.com/questions/8766364/how-can-i-send-key-chords-to-text-area-with-selenium –

+0

감사합니다. Tony,하지만이 예제는 Firefox 용입니다. 일부 응답은 IE 9에서 작동하지 않는다는 것을 나타냅니다. –

+0

참고로, * IE 11.0.2 *의 'ctrl-0'은'ctrl-0'이 125 %로 표시됩니다. zoom =/ – Maslow

답변

1

<html> 태그는 드라이버에 "표시"되지 않으므로 키를 보낼 수 없습니다. 다음 코드는 나를 위해 작동 : 드라이버가 검출을 해제하는 그러나

IWebElement element = driver.FindElement(By.TagName("body")); 
element.SendKeys(Keys.Control + "0"); 

의 IEDriverServer.exe의 최신 버전으로, 당신은 당신이 특별한 옵션을 설정하지 않는 한 여기까지 얻을 수 없습니다 확대/축소 설정.

InternetExplorerOptions options = new InternetExplorerOptions(); 
options.IgnoreZoomLevel = true; 
IWebDriver driver = new InternetExplorerDriver(options); 
+0

짐, 나는 IgnoreZoomLevel을 true로 설정했지만 SendKeys()는 여전히 줌 레벨을 변경하십시오. 확대/축소 수준이 무시되므로 확대/축소 수준을 변경해야합니까? –

+0

IgnoreZoomLevel을 설정하면 예외가 발생하지만 요소를 제대로 클릭하면 클릭 확대/축소 수준을 100 %로 변경해야합니다. 위의 코드 예제에서 ''요소가 아니라 ''요소를 찾습니다. 또한 SendKeys() 문자열의 구문은 작동하는 데 중요한 "Keys.NumberPad0"이 아니라 리터럴 "0"을 사용합니다. – JimEvans

+0

짐, 최신 Webdriver 및 IEDriverServer.exe를 다운로드하고 By.Tagname ("body")을 설정하고 (Keys.Control + "0") 시도했지만 여전히 줌 레벨을 변경할 수 없습니다. 이견있는 사람? –

관련 문제