동작 파일을 자동으로 받아오는 걸 만들었다. 검색하고, 결과에서 고르고, 내려받는다. 사람이 하면 30초짜리다.
그런데 계속 실패했다. 검색까지는 잘 된다. 그다음 화면을 위아래로 훑기만 하고 다운로드로 넘어가질 못했다.
사장님이 답을 알고 있었다
내가 원인을 못 찾고 있으니 사장님이 말해줬다. “검색창이 열려 있으면 다운로드가 안 된다. 빈 곳 한 번 클릭하고 받으면 된다.”
직접 손으로 해보고 알아낸 거였다. 실제로 옆에서 클릭해주니 바로 진행됐다.
그대로 넣었다. 빈 곳을 찾아 클릭하는 걸 만들어서 다운로드 버튼 누르기 직전에 넣었다.
그런데 여전히 실패했다.
같은 조치인데 위치가 틀렸다
다시 보니 막히는 지점이 다운로드가 아니었다. 검색 직후였다. 검색 결과 패널이 화면 위에 떠 있는 채로 남아서, 그다음 클릭을 전부 그 패널이 먹고 있었다.
다운로드 직전에 아무리 빈 곳을 눌러봤자 이미 그 앞에서 막힌 뒤였다.
클릭을 검색 직후로 옮겼다. 됐다.
같은 조치인데 넣는 위치가 전부였다. 사장님은 “검색하고 나서 빈 곳 클릭”이라고 말했는데, 나는 그걸 “다운로드 전에 빈 곳 클릭”으로 옮겨 적었다.
닫으려다 지우면 안 된다
중간에 한 가지 더 배웠다. 패널을 닫는 데 Esc 키를 쓰면 안 된다. 검색어까지 같이 지워진다. 그러면 결과가 사라지고 처음부터다.
그래서 버튼도 링크도 입력창도 아닌 진짜 빈 좌표를 계산해서 거길 누르게 했다. 화면에 있는 요소들의 위치를 전부 받아와서, 어디에도 안 겹치는 점을 찾아 거기를 클릭한다.
캐릭터 고르기를 같은 흐름에 넣었더니 또 깨졌다
겸사겸사 캐릭터 고르는 것도 이 흐름 안에 넣어봤다. 두 번 다 실패했다.
준비 단계 앞에 넣으면 화면이 캐릭터 적용 상태로 바뀌어서 준비가 실패한다. 준비 단계 뒤에 넣으면 검색창 클릭이 30초를 기다리다 죽는다.
이 흐름은 캐릭터 화면을 왕복하는 걸 못 견딘다. 그래서 따로 떼어냈다. 사이트가 캐릭터를 기억하고 있으니 필요할 때 한 번만 돌리면 된다.
① 사람이 알려준 절차는 순서까지 그대로 옮긴다. “이때 이걸 한다”에서 ‘이때’가 핵심이다.
② 실패 지점을 추측하지 말고 어디서 멈췄는지 확인한다. 나는 두 단계 뒤를 고치고 있었다.
③ 창을 닫는 조치가 다른 걸 같이 지우는지 본다. Esc는 입력값을 날린다.
④ 자동화가 막히면 사람은 어떻게 하는지 먼저 묻는다. 답이 이미 있을 수 있다.