2011-12-07 2 views
4

최근에 WatiN을 테스트하고 사용하기 시작했는데 실제로 해결할 수없는 몇 가지 문제/오류가 나타났습니다.링크/브라우저에 대한 WatiN을 얻으려고하십시오.

첫 번째 병이 내 테스트에서 무엇을하는지 설명합니다. 목록의 특정 div에있는 모든 링크를 가져올 것입니다 ... 링크 목록이있어서 ... 반복 할 것입니다. thru ... 루프에서 링크 (새로운 ie 탭에서 열립니다) .. 링크를 열려면 link.clicknowait() 함수를 사용하려면 다음 몇 초 동안 스레드 잠 및 그 브라우저를 닫는 의해 닫습니다 새 브라우저에 링크 (URL)를 보내면 브라우저는 항상 'using (..)'문을 사용하여 메신저로 닫힙니다.

첫 번째 문제는 브라우저가 모든 링크를 가져 와서 클릭하기 시작하면 링크 중 하나가 올바른 페이지가 아니기 때문에 더 이상 페이지가 존재하지 않는다고 말하는 페이지로 이어질 수 있다는 것입니다. 그 후에 나는 그 페이지를 더 이상 닫을 수 없다. 어떻게 이것을 해결하고 기존 페이지가 아닌 공격을 하는가? URL을 수정하지 못했습니다. 추천할만한 것이 있습니까?

"시도해주세요 ...."와 같은 방법이 있습니까? 브라우저가 존재하지 않는 링크를 공격하려고 시도하면 오류가 발생하기 때문입니다.

또한 링크 목록의 링크가 여전히 올바른지 확인하는 것이 좋습니다. 페이지에서 비어 있었기 때문에 그 링크를 클릭 할 수 없다는 몇 번이나 예외가있었습니다. 또는 나는 link.trytoclick()과 같은 것을 검사 할 수 있으며 에러가 발생하면 해당 링크를 무시하고 더 나아가는가 ???

링크를 클릭하고 브라우저를 열고 닫으면 마지막 질문에서 outofmemoryexception 오류가 발생했습니다. 어떻게 그럴 수 있습니까, 나는 그것을 사용하지 않고 항상 브라우저를 닫은 'using 문'을 사용했습니다.

도움을 미리 감사드립니다.

답변

1

원본 페이지로 돌아갈 수있는 링크를 확인한 후 href를 사용하여 watin 세션의 동일한 창에서 링크를 열 수 있습니다. 이 같은

어떤 일이 :

session.browser.Back(); 
: 링크를 사용 존재하는 경우

string href = browser.Link("link_id").GetAttributeValue("href"); //or your link from the collection 
browser.GoTo(href); 
//Perform you check 
browser.Back(); 

확인하려면

관련 문제