2013-08-21 36 views
2

웹 사이트에 C#을 사용하여 테스트를 작성하고 있습니다. 레코드가 온라인에서 삭제되면 기본적으로 사용자에게 확인을 요청하는 팝업 대화 상자가 나타납니다. 대개 마우스 오른쪽 버튼을 클릭하여 요소를 검사 할 수 있지만이 대화 상자가 열리면 아무 것도 대화 상자 안이나 밖으로 선택할 수 없습니다. 그래서 나는 또한 시도Selenium Webdriver 팝업 창 닫기 C#

Assert.IsTrue(Regex.IsMatch(CloseAlertAndGetItsText(), "^Are you sure you want to delete this batch[\\s\\S](\n|\r\n)All claims in this batch will be permanently deleted\\.(\n|\r\n)This action cannot be undone\\.$")); 

작동하지 않았다 :

CloseAlertAndGetItsText(); 

그러나 didn를 '내가 대화 팝업을 처리 할 방법을 볼 수있는 IDE를 사용하려 할 때,이 명령을 준 어느 쪽이든 일하십시오.
상자는 두 개의 버튼, 확인을 취소하고이 단지 같은 것을 할 수있는 방법입니다 그래서 만약 확인 버튼을 이미 강조 표시되어 있습니다

driver.sendKeys(return); 

을하지만 드라이버에 SendKeys 매크로 명령을하지 않습니다 독자적으로 전화하십시오.

+0

표준 자바 스크립트 팝업입니까? 그것은 새로운 창문입니까? 어떻게 만들어 졌습니까? – Arran

답변

1
driver.SwitchTo().Alert().Accept(); 

설명하는 대화 상자의 유형을 처리 할 수 ​​있어야합니다. 내가 만났던 모든 대화에 사용할 수 있었기 때문에 잘 작동합니다. 나는 IAlert를 사용하는 것에 대해서도 읽었지만 사용법이 전혀 없기 때문에 그것이 얼마나 잘 작동하는지 전혀 모르지만, 내 솔루션이 당신을 위해 작동하지 않는다면, 아마도 그것에 대해 조사해보십시오.