-2

나는이 사이트 012res에 대한 셀레늄과 함께 C# 테스트를하고있다. http://onliner.by. 처음에는이 사이트에서 승인을 받아야합니다.보내는 방법 textBox에서 키를 누르십니까? 자동화를 위해

오른쪽 상단 모서리에 "Вход"라는 이름의 (xpath로) 버튼이 있음을 발견했습니다.

그런 다음 새로 고침되고 페이지가 변경되었지만 링크는 동일하게 유지됩니다 (http://onliner.by).

그리고이 페이지에 로그인과 비밀번호를 입력해야합니다. 그러나 나는 그것을 할 수 없다. 나는이 요소의 XPath는 경로를 설립하고이 코드를 사용 :

//this doesn't work 
driver.FindElement(By.XPath("//*[@id='auth-container__forms']/div/div[2]/form/div[1]/div[1]/input")).SendKeys("user"); 
driver.FindElement(By.XPath("//*[@id='auth-container__forms']/div/div[2]/form/div[1]/div[2]/input")).SendKeys("password"); 
driver.FindElement(By.XPath("//*[@id='auth-container__forms']/div/div[2]/form/div[3]/div/button")).Click(); 

내가 그것을 어떻게 할 수 있습니까? SwitchTo()를 사용하려고했으나 프레임도 도움이되지 않았습니다.

매우 도움이 될 것입니다.

Image explanation what I need

+1

https://stackoverflow.com/editing-help –

+0

정렬 문제 제대로 – iamsankalp89

+0

사용자 이름과 암호가 아닙니다 프레임과 같은 요소의 적용 여부를 기다려야 당신 있도록해야 없음 프레임으로 전환해야합니다. 그리고 당신의 xpath가 맞는지 확인했습니다. 가능한 요소는 요소를 조작하기 전에 로그인 페이지로드가 완료 될 때까지 기다려야한다는 것입니다. 오른쪽 상단 모서리에있는 "Вход"을 클릭 한 후 잠을 자보세요. – yong

답변

0

당신이

new WebDriverWait(driver, TimeSpan.FromSeconds(timeOut)).Until(ExpectedConditions.ElementExists((Locator Value)));