2011-04-21 5 views
0

자동화 된 테스트를 작성하려는 응용 프로그램이 있습니다. 자동화 된 테스트는 운영자의 응용 프로그램 사용을 모방합니다. 검토를 위해 "고정"되어 있으므로 응용 프로그램의 소스 코드를 변경할 수 없습니다.다른 응용 프로그램에서 버튼 감지 활성화

측정이 끝나면 버튼을 클릭하라는 팝업 메시지가 응용 프로그램에 표시됩니다. 메시지 창이 닫히면 버튼이 활성화됩니다.

응용 프로그램에서이 단추를 사용할 수있는시기를 감지하는 방법을 알아야합니다. 지금까지의 내 연구는 응용 프로그램이 자동화 된 테스트를 돕기 위해 사용자 지정 메시지를 브로드 캐스트해야 함을 나타냅니다. 하지만 소스 코드를 수정할 수는 없습니다.

또한 "측정 완료"버튼을 클릭 한 후 라디오 버튼을 활성화하여 측정이 유효한지 묻습니다. 나는 이것을 또한 발견 할 필요가있다.

요약 :

  1. 버튼 (제어) 다른 응용 프로그램에서 사용할 때 어떻게 감지 하는가?
  2. 다른 응용 프로그램의 핸들을 얻으려면 어떻게해야합니까? 당신이 도구를 제안하는 경우 나 Windows NT에서 MS 비주얼 익스프레스 2010 C#을 사용하고

, 비스타 & 7. 나는 회사가 아주 꽉 예산이로 무료로 할 필요가있다.

+1

많은 도구가 있습니다. 비용은 들지 않고도 자신의 것보다 더 저렴할 것입니다. –

+0

@David 그들은 토마스를 함몰 비용으로 볼 수 있다는 것을 제외하고는 –

+2

@David : 비용을 정당화하고, 힘을 제출하고 응답을 기다리는 것은 응용 프로그램을 작성하는 것보다 오래 걸릴 수 있습니다. :-( –

답변

2

FindWindow API를 사용하여 작업을 수행하고 제목을 전달하고 핸들을 수신 할 수 있다고 생각합니다.
그런 다음 하위 구성 요소를 열거하면 버튼을 찾을 수 있습니다 (이름을 찾으면 다음 번에 더 빨리 사용할 수 있음). 그러면 활성화 된 상태가됩니다.
AutoIT 소프트웨어 (스크립트) 또는 그 논리를 사용할 수 있다고 생각합니다.

[DllImport("user32.dll", CharSet=CharSet.Auto)] 
public static extern IntPtr FindWindow(string strClassName, int nptWindowName); 

편집 됨 :
확인이 link는 당신이 필요로 할 수있는 간단한 방법을 찾을 수 있습니다.
도움이 되었기를 바랍니다.

+0

'AutoIT 도구를 사용하여 테스트 응용 프로그램을 작성하는 중입니다. 지금까지이 도구는 정말 멋지고 무료입니다! 제안 해 주셔서 감사합니다. –

관련 문제