2014-11-28 1 views
-2

C# 셀렌에서 작업 중입니다.두 번째 브라우저에 표시되는 경고를 처리하는 방법

경고가 표시되면 상위 브라우저에서 상위 브라우저에서 제대로 작동하는 IAlert 기능으로 처리 중입니다.

이제 IAlert 기능을 사용하지 않을 때 두 번째 브라우저에 팝업/경고가 표시되는 시나리오가 나타납니다. 왜 그런지 모르겠다.

이 상황이 발생 했습니까? 나에게 해결책을 제안 해주세요.

+0

@ Prasad : 스크립트의 헤더 제어를 두 번째 브라우저로 전환하고 있습니까? –

+0

실제로 일부 기능을 수행하려면 두 번째 브라우저로 전환하십시오. driver.SwitchTo(). Window (newwindow); (여기서 newwindow는 해당 윈도우의 id를 유지합니다). –

+0

괜찮아요.하지만 제 질문에는 아직 답변이 없습니다. 당신의 코드에서 스위칭 윈도우 라인을 구현 했습니까? –

답변

0

두 번째 창에서 IAlert 기능을 사용하는 대신. 코드 아래에서 시도하고 무슨 일이 일어나는 지 볼 수 있습니까?

// On Second page click on button which will 

this.driver.FindElement(By.Id("--As per you code")).Click(); 


boolean presentFlag = false; 

    try { 

    // Check the presence of alert 
    Alert alert = driver.switchTo().alert(); 
    // Alert present then set the flag 
    presentFlag = true; 
    // if present 
    alert.accept(); 

    } catch (NoAlertPresentException ex) { 
    // Alert not present 
    ex.printStackTrace(); 
    } 

    return presentFlag; 

} 
+0

Rupesh 코드를 사용해 주셔서 감사합니다.하지만이 코드를 실행할 때 Alert alert = driver.switchto(). alert(); 코드 행. –

+0

getWindowHandles()에 대한 호출이나 driver.switchTo(). window ("window1")에 대한 호출을 제거 할 수 있습니까? –

+0

내가 driver.switchTo()를 주석 처리한다면 Window ("Window1"); 코드는 새 창에서 기능을 수행 할 수 없습니다. –

관련 문제