Automation Anywhere Enterprise (v11)의 Keystrokes 명령 동작을 확인해 보았습니다.

소개



Keystrokes 명령의 거동을 조금 검증해 보았습니다.
이 명령, 공식 문서에서는 Delay에 대해서는 "기본값은 0입니다."라고 밖에 작성되지 않았습니다.
실제로 마지막 한 글자 뒤에 지연은 들어가는지 등 수수께끼가 많았기 때문에 거동을 가시화해 보기로 했습니다.

시도한 환경



Automation Anywhere Community Edition ver 11
LabVIEW 2019 Base Package

실험해보기



확인하고 싶었던 것은, 커멘드내에서 설정할 수 있는 Delay가 어떻게 작동하는지와, 어느 정도의 정밀도로 타이밍 좋게 칠 수 있을까.
또한 명령간에 지연이 발생합니까? 등.
이러한 봇을 만들어 검증 도구의 사용자 인터페이스에 문자를 입력합니다.


테스트를 위한 도구는 이런 것을 준비했습니다.
LabVIEW라는 계측 제어용 개발 툴로 만들었습니다. (2020년 이후에 Community Edition이 나오는 것 같습니다.)
위의 흰색 입력 양식에 문자가 한 문자 추가되면 차트에 파형으로 나오게 됩니다.
가장 빠르게 1ms의 주기로 업데이트되도록 만들고 있습니다. 정밀도는 그 나름입니다・・・.



결과



실제 문자를 치게 해 본 결과가 다음과 같습니다.
차트 왼쪽에서 다음과 같이 문자를 친 결과가 파형으로 표시됩니다.
4 Keystrokes: ai in "test.vi"with delay: 1000 ms
5 Keystrokes: aiueo in "test.vi"with delay: 1000 ms
6 Keystrokes: aiue in "test.vi"with delay: 1000 ms
7 Keystrokes: aiueo in "test.vi"with delay: 1000 ms
차트를 보면 알겠지만 다음과 같은 결과를 얻었습니다.
・설정한 Delay의 값은 문자수로 나눈다. (문자열 전체를 몇 ms에 걸쳐 입력할까)
· 명령 사이에 약간의 지연이 발생합니다.
・문자 입력 사이의 Delay도 약간 흔들림이 있다. (10ms정도? 하지만 실사용상은 문제가 되지 않을 것 같다.)
・Insert Keystrokes에 기입한 각 문자의 사이뿐만 아니라, 마지막 문자의 뒤에도 Delay가 들어간다.



확인 할 수있는 일



이런 일로 무슨 의미가 있습니까? 라고 생각할지도 모르지만,
원격 데스크톱을 넘는 어플리케이션 조작이나, 오브젝트를 취할 수 없는 어플리케이션의 제어시에, 어쩔 수 없이 Insert Keystrokes를 사용하는 경우가 있습니다만,
그 때 이런 거동을 알아두면 보다 정확하게 Bot을 짜는 것이 가능합니다.
Insert Keystrokes내에서 길게 Delay를 설정해 두면, 직후에 일부러 Delay 커멘드를 넣지 않아도 된다. 라든지,
긴 문자를 칠 때는 문자수 x 문자 사이에서 기다리고 싶은 ms분의 Delay를 설정하지 않으면 안된다. 라든지.
그 근처를 확인할 수 있었습니다.

이번에 알게 된 Insert Keystrokes의 Delay에 대한 콩 지식


  • Delay = 입력하는 전체 문자열을 몇 ms로 입력합니까?
  • 문자 사이의 지연 시간 = Delay/입력할 문자 수.
  • 마지막 문자의 뒤에도 지연 시간이 들어간다.
  • 좋은 웹페이지 즐겨찾기