2009-12-24 4 views
0

응용 프로그램을 실행하고 Main Menu (기본 메뉴) -> File (파일) -> Exit (종료) 메뉴 항목을 클릭하면 Java 응용 프로그램을 실행한다고 가정하고 Java에서 NetBeans 플랫폼 응용 프로그램의 첫 번째 종단 간 자동화 응용 프로그램 (단지 & 재생 캡처가 아님) 그것?NetBeans 플랫폼 애플리케이션 : GUI를 통한 첫 번째 자동화 된 엔드 투 엔드 테스트를위한 테스트 환경을 만드는 방법은 무엇입니까?

는 가 주어

:

mvn archetype:generate -DarchetypeGroupId=org.codehaus.mojo.archetypes -DarchetypeArtifactId=netbeans-platform-app-archetype -DarchetypeVersion=1.1 -DgroupId=stackoverflow.com -DartifactId=netbeans-app -Dversion=1.0-SNAPSHOT 

다음 : jdk1.6.0_17와 아파치 받는다는-2.2.1 다음

설치

mvn install 
cd netbeans-app\application\target\foo\bin\ 
foo.exe 

그리고 볼을 그 기본 GUI 응용 프로그램은 성공적이다 달리는.

이 작업을 완료하기 위해 어떤 오픈 소스 GUI 테스트 프레임 워크를 권하고 싶습니까? Abbot/Costello, Jelly/Jemmy, UISpec4J, Marathon, FEST-Swing 또는 WindowLicker? .

답변

2

내가 말할 것이다 : 당신은 사용자 정의 구성 요소가있는 경우

후 원장/코스텔로가 발생한 경우이의 이클립스 플러그인으로 가장 잘 작동하기 때문에

조립식 쇠 지렛대 밖으로 아마 (젤리에 대해 확실하지), 내가 발견 그것들은 예기치 않게 반응합니다. 사용자 지정 구성 요소를 사용하면 매력처럼 작동합니다.

Netbeans IDE 내에서 테스트를 실행하는 것이 매우 중요하다면 명령 줄 (또는 독립 실행 형 응용 프로그램)에서 테스트해야하기 때문에 Marathon도 부족합니다. IMO는 맞춤 구성 요소를 가장 잘 지원합니다.

정말 FEST를 남깁니다. FEST는 JUnit과 같은 방식으로 실행될 수 있기 때문에 Netbeans에서 실제로 실행될 수 있습니다. 테스트 결과는 Netbean의 IDE "테스트 결과"패널에 바로 표시됩니다. 그리고 그것은 FEST 테스트를 설정하는 것을별로 신경 쓰지 않는 간단한 플러그인과 함께 제공됩니다 : Geertjan의 NetBeans plug-in for FEST-Swing. FEST의 가장 큰 단점은 재생 만하고 기록이 없으며 테스트 케이스를 수동으로 작성해야한다는 것입니다.

몇 달 전에 자동 테스트 프레임 워크 용 테스트 도구를 선택하는 것과 관련하여 개인적으로 비슷한 결정을 내 렸습니다. 대상 응용 프로그램의 사용자 지정 구성 요소 테스트가 가장 중요하기 때문에 Marathon과 함께했습니다. 결정에 영향을 미치는 다른 요소들 : 크루즈 컨트롤과 같은 지속적인 통합 시스템에 테스트를 통합 할 수있는 능력. 제한된 프로그래밍 능력을 가진 테스터는 테스트 스크립트를 작성/기록했다. 우리의 경우에도 중요했습니다.

귀하의 목적에 따라, 귀하의 특정 질문에 대해 FEST는 현재 알려진 정보로 가장 논리적 인 선택이라고 생각합니다.

그러나 각 테스트 도구를 사용하여 각 도구를 연결하고 장단점에 대한 메모를 작성하는 것이 좋습니다. 그것의 끝에, 당신은 당신이 당신 자신보다 더 많은 요구 사항을 발견 할 가능성이 높기 때문에 자신이 가지고있는 것보다 자신의 질문에 더 잘 대답했다는 것을 알게 될 것입니다.

HTH


면책 조항 : 나는 UISpec4J, 젤리와 WindowLicker과 경험이 없기 때문에 내 대답은 inomplete 수 있습니다.


편집 : 그냥,에 추가하는 종료 할 때 FEST 응용 프로그램을 테스트 할 수 있습니다. 최근에 수정되었습니다. 마라톤에서도 똑같이 할 수는 없으며, 이는 애플리케이션 마감 테스트와 관련된 테스트 케이스 테스트에 영향을 미칩니다.
은 내가 아는 한, 원장/코스텔로도 같은 문제에 의해 영향을 받는다 (그러나 나는이에 대한 최신 정보를 유지하지 않은 경우), 다른 테스트 도구, 나는 응용 프로그램의 종료 테스트를 시도하지 않았습니다.