naver / guitar

75 stars 18 forks source link

페이지 이동 시 태그를 찾지 못합니다. #404

Open TigMonkey opened 6 years ago

TigMonkey commented 6 years ago

기타를 이용하고 있는데, A페이지에서 B페이지로 이동한 후 B페이지의 태그를 찾아야 합니다. 하지만 테스트를 진행하면 A페이지에 있는 태그를 찾습니다. 예를 들어)

  1. 브라우저 IE를 생성한다.
  2. www.naver.com으로 접속한다.
  3. "[input:name=query]"를 클릭한다.
  4. "정자동 맛집"을 입력하고, "{ENTER}"키를 누른다.
  5. "[a:title=토다이 분당점]"을 클릭한다. 위의 테스트를 진행하면 5번의 토다이 분당점을 찾지 못하고 테스트를 실패합니다. 이럴 경우에는 어떻게 해결하면 되나요?
ssmmhh commented 6 years ago

설명과 아래 예제 내용이 약간 다른데요.

A페이지에서 B로 이동하면 A는 화면에서 없어지는데, "A페이지에 있는 태그를 찾는다"는게 어떤의미인지요?

그리고 사용하고계신 환경을 자세히 설명 부탁드립니다.

OS버전과 브라우저 버전을 알려 주시고,

에러가 발생된 브라우저 화면과, GUITAR에서 발생된 에러 상세 내용도 같이 올려주시면 확인해 보겠습니다.

TigMonkey commented 6 years ago

개발 환경은 OS: window 10, IE: 11입니다.

환경설정은 pdf를 참고하여 아래 사진과 같이 진행하였습니다.

1 2

테스트를 조금 다르게 진행하여 이번에는 검색창에 "정자동 맛집"을 입력하여 검색을 한 후 우측 상단의 "원본반영"이라는 글자를 클릭하도록 진행을 하였습니다.

"원본반영"은 개발자 도구를 열어서 확인해 본 결과 '<'span class="spnew ico_origin"'>'였습니다. 그래서 ' "[span:class=spnew ico_origin]"을 클릭한다. ' 라는 명령을 입력해 봤는데 실패하였습니다.

아래는 그 에러가 발생된 브라우저 화면, 테스트 로그(전체), 테스트 코드의 사진입니다.

default default default

아무래도 이동된 페이지에서 제가 지정한 태그를 찾지 못하는 것 같습니다.

ssmmhh commented 6 years ago

확인해 보니 win10 + ie11 환경에서 문의하신 문제 상황이 재현됩니다. 좀더 확인이 필요할것 같습니다. 확인후 다시 답변 드리겠습니다.

ssmmhh commented 6 years ago

WIN10 + IE11 조합의 경우 TabProcGrowth의 값이 다르게 지정되어야 합니다. 아래와 같이 IE를 초기화 하신뒤 TabProcGrowth을 확인해 보신뒤 사용해 보시기 바랍니다.

  1. IE -> 도구 - 옵션- 고급 -> "원래대로" 를 실행하여 IE를 초기상태로 복구

  2. 윈도우 시작 > regedit 입력후 실행 HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\Main 으로 이동 "TabProcGrowth"이 REG_SZ 형태로 Medium 값으로 지정되어 있는지 확인 (없을 경우 "Medium" 으로 설정)

image

TigMonkey commented 6 years ago

피드백 감사합니다. 말씀하신대로 설정 수정후 작업하니 잘 동작합니다. 잘 사용하겠습니다.

TigMonkey commented 6 years ago

피드백 받은 날에는 잘 됐는데 지금은 다시 안되거든요? 혹시 한번만 확인해 주실 수 있나요?

ssmmhh commented 6 years ago

좀비 IE프로세스가 남아 있어 그럴수 있습니다. 작업관리자에서 실행중인 모든 IE프로세스를 종료한뒤 해보시거나, 재부팅한뒤 다시 시도해 보시기 바랍니다.

TigMonkey commented 6 years ago

말씀하신대로 해봤더니 되긴 되는데요. 이게 진짜 10번에 한번 될까말까인데 재부팅이나 좀비 IE 프로세스 잡는거 말고는 방법이 없는건가요?

ssmmhh commented 6 years ago

좀비 IE프로세스가 남아 있는 경우 작업관리자를 통해 수동으로 삭제해도 되지만,

스크립트 초기에 아래와 같이 강제로 모든 IE를 종료한뒤 새롭게 IE를 실행하도록 스크립트를 작성해 두시면 좀더 편리하실겁니다.


; 기존에 열려진 IE프로세스를 모두 종료 "$IE종료=processclose('iexplore.exe')" 계산한다. 5초 대기한다. IE 생성한다.

TigMonkey commented 6 years ago

좀비 프로세스 때문에 그런 것은 아닌거 같아요. 제 컴퓨터에서만 유독안되는 것 같은데 윈도우 10 + IE 11 환경이 잘 안되는 것 같아요.