2012-11-16 2 views
1

항상 열려있는 Eclipse 창을 인식 할 수 있기를 원하므로 SilkTest로 열 필요가 없습니다. 기본 상태를 항상 열려있는 창으로 설정할 수있는 방법이 있습니까? 그것은 기본 상태를 설정하는 방법이 열려 실행 파일을 지정하는 것 같습니다. 실행 파일이 항상 같은 위치에있을 필요는 없으며이를 구성하는 것이 어려울 것입니다.항상 열려있는 Eclipse에서 SilkTest 액션을 수행 하시겠습니까?

이것이 가능합니까?

이미 작동하지 않는 desktop.<Window>find("//Window[@caption='Java EE*']");을 사용해 보았습니다.

답변

2

실크 테스트의 기본 상태가하는 여러 것들 :

  • 이 그렇지 않으면 응용 프로그램
  • 을 시작합니다
  • 를 실행하는 경우
  • 응용 프로그램을 찾기 테스트 할 응용 프로그램 실크 테스트에게

분명히 세 번째 단계가 필요하지 않지만 다른 두 단계는 여전히 필요합니다. 실행 패턴으로 *eclipse.exe을 사용하고 이미 가지고있는 로케이터 "//Window[@caption='Java EE*']"을 사용하는 것이 좋습니다. 그러면 기본 상태를 실행하면 이클립스의 기본 창을 돌려 주어야합니다.

+0

내 초기 문제가 해결되었습니다. 그러나 필자가 테스트를 시작할 때 Eclipse와 관련하여 뭔가 바뀌어 이후의 테스트에서 동일한 BaseState를 참조 할 수 없다. 테스트는 서로 완전히 독립적입니다. 활성 상태로 남아있는 유일한 것은 SilkTest Open Agent입니다. 본질적으로 내가 설명한 기본 상태를 사용하여 테스트를 처음 실행하면 정상적으로 작동합니다. 그러나 이후의 시도는 Eclipse를 찾지 못한다. 비록 내가 염려하는 한, 아무것도 변하지 않는다. 어떤 아이디어? – Tom

+0

나는 첫 번째 테스트에서 Eclipse 창을 닫는 것이 Silk Test가 깨닫는 것보다 오래 걸린다는 것을 알 것입니다. 두 번째 테스트의 기본 상태가 사라질 예정인 이전 인스턴스를 찾을 수 있습니다. 그 이론을 확인하기 위해서 당신은'closeSynchron()'을 사용할 수 있으며, 닫힌 후에 충분한 시간 간격을 가진 수면을 추가 할 수도 있습니다. 그래서 이전 창은 없어 졌을 것입니다. – tehlexx

+0

실제로 창을 닫지는 않습니다. SilkTest 객체와 다른 것들을 사용하여 테스트를 실행하는 쓰레드입니다. Eclipse 내에서 실행됩니다. JBoss 서버가 실행 중이기 때문에 Eclipse에 액세스하려고합니다. 테스트가 내 애플리케이션에서 수행하는 작업에 따라 서버를 가끔 재설정해야합니다. 실크를 통해 프로그래밍 방식으로이 작업을 수행하려고합니다. 마치 첫 번째 테스트를 실행 한 후 실행 파일이 변경되는 것과 같습니다. 현재 Eclipse 창에 대한 참조를 재설정하는 유일한 방법은 Eclipse 및 Open Agent를 다시 시작하는 것입니다. 내가 피하고 싶은 추가 단계. – Tom

관련 문제