문제

Java Swing으로 작성된 GUI에 대한 자동화된 테스트를 구축하기 위한 옵션에는 어떤 것이 있습니까?

나는 다음을 사용하여 작성된 일부 GUI를 테스트하고 싶습니다. NetBeans 스윙 GUI 빌더, 테스트 중인 코드를 특별히 조작하지 않고도 작동하는 것이 이상적입니다.

도움이 되었습니까?

해결책

최근에 나는 개발자가 2012년에 개발이 계속되지 않을 것이라고 발표했습니다..

AssertJ 나에게 매우 잘 작동하는 FEST의 포크입니다.(작성 당시) 적극적으로 유지 관리되고 있으며 Java 8을 지원하고 Guava 및 Joda Time과 같은 몇 가지 인기 있는 라이브러리에 대한 어설션이 있으며 매우 잘 문서화되어 있습니다.또한 무료이며 개방적입니다.

다른 팁

나는 현재 사용하고 있습니다 페스트.JUnit과 함께 작동하며 실패한 테스트의 스크린샷도 찍습니다.

여기에는 테스트 중인 구성 요소의 이름(수동으로 설정해야 함)을 찾는 기본 구성 요소 헌팅 방법이 있지만 구성 요소를 전달하여 특정 구성 요소에 대한 테스터를 생성할 수도 있습니다.

당신은 사용해 볼 수 있습니다 오이 그리고 스윙어 Swing GUI 애플리케이션에 대한 기능 승인 테스트를 일반 영어로 작성합니다.Swinger는 내부적으로 Netbeans의 Jemmy 라이브러리를 사용하여 앱을 구동합니다.

Cucumber를 사용하면 다음과 같은 테스트를 작성할 수 있습니다.

 Scenario: Dialog manipulation
    Given the frame "SwingSet" is visible
      And the frame "SwingSet" is the container
    When I click the menu "File/About"
    Then I should see the dialog "About Swing!"
    Given the dialog "About Swing!" is the container
    When I click the button "OK"
    Then I should not see the dialog "About Swing!"

이것을보세요 스윙어 비디오 데모 실제로 작동하는 모습을 확인하세요.

우리는 고려 중입니다 조립식 쇠 지렛대 일부 GUI 테스트를 자동화합니다.유망해 보입니다.

나는 사용한다 java.awt.Robot.좋지도 않고 쉽지도 않지만 매번 작동합니다.

장점:

  • 당신은 통제할 수 있습니다
  • 매우 빠르다
  • 나만의 FWK 구축
  • 가지고 다닐 수 있는
  • 외부 종속성 없음

단점:

  • 테스트를 구축하기 위한 멋진 GUI가 없습니다.
  • 테스트하는 동안 GUI를 그대로 두어야 합니다.
  • 나만의 FWK 구축
  • 테스트 코드를 변경하고 첫 번째 하네스를 만드는 것이 어렵습니다.

이제 예산이 충분하다면 LoadRunner를 선택하겠습니다.동급 최고.

(폭로:LR을 소유한 회사와 관계가 있지만 관계 이전에는 LR과 함께 일했습니다)

개인적으로 사용해본 적은 없지만 스윙유닛 꽤 좋아 보인다.jUnit과 함께 사용할 수 있으며 "구성 요소 위치"(예:x 및 y 좌표).

NetBeans GUI Builder로 수행해야 할 유일한 작업은 구성 요소에 고유한 이름을 설정하는 것입니다.

우리는 사용하고 있습니다 QF-테스트 그리고 꽤 만족해요.

UISpec4J 매우 간단하고 부풀어 오르지 않으며 확장 가능합니다.FEST보다 내 목적에 더 잘 맞습니다.

시쿨리:스크린샷을 사용하는 GUI 테스터http://sikuli.org/

당신이 사용할 수있는 마라톤 :"Marathon 통합 테스트 환경인 MarathonITE는 저렴하고 사용하기 쉬운 크로스 플랫폼 Java/Swing™ GUI 테스트 자동화 프레임워크입니다.MarathonITE에 내장된 스크립트 레코더를 사용하여 Python 또는 Ruby에서 깔끔하고 읽기 쉬운 테스트 스크립트를 생성할 수 있습니다.추출 메서드 리팩토링, 데이터 기반 테스트 생성, 개체 맵 편집과 같은 고급 기능을 사용하면 유지 관리가 가능하고 탄력적인 테스트 모음을 만들 수 있습니다."

당신은 시도해 볼 수 있습니다 재테스트, 는 기능 회귀 테스트에 대한 혁신적인 접근 방식을 구현하고 이를 AI 기반 원숭이 테스트와 결합하는 새로운 도구입니다.오픈소스화도 되려나...

부인 성명:저는 ReTest를 만든 회사의 창립자 중 한 명입니다.

모험심이 있는 사람들에게는 끈적끈적한 것이 있습니다 https://github.com/robertoaflores/Gooey 스윙 애플리케이션을 위한 (매우 기본적이고 아직 개발되지 않은) 프로그래밍 방식 테스트 도구입니다.

당신은 사용할 수 있습니다 시쿨리 또는 오토마 GUI 부분을 테스트하기 위해 잘 문서화되고 테스트된 도구입니다.

방금 몇 가지 빠른 스캔을 수행했습니다. 스퀴시 가장 유망했습니다.무료는 아니지만

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top