how perform automation testing java j2ee applications
일반적으로 J2EE 응용 프로그램은 매우 크고 프런트 엔드 화면에서 백 엔드 데이터베이스까지 여러 구성 요소를 포함합니다. 자동 테스트는 시간과 노력이 절약되기 때문에 이러한 대규모 애플리케이션의 수동 테스트보다 선호됩니다. 자동화 된 테스트는 일반적으로 도구와 프레임 워크의 도움으로 수행됩니다.
J2EE 응용 프로그램에는 여러 구성 요소가 포함되어 있습니다. 이 Java 애플리케이션 테스트 시리즈의 파트 1, 즉 ' Java 애플리케이션 개요 ' 상세 사항은.
개요 : JSP 보기 구성 요소 또는 화면입니다. JSF 뷰 컴포넌트 프레임 워크입니다. JavaScript는 화면 유효성 검사에 사용됩니다. Servlet, Framework, EJB, Bean 및 기타 Java 클래스는 비즈니스 로직 작성에 사용됩니다.
자동화 된 테스트는 각 Java 구성 요소에 대해 하나의 도구 또는 도구 조합으로 수행 할 수 있습니다. 응용 프로그램 테스트는 완전히 자동화되지 않을 수 있습니다. 자동화 결정은 애플리케이션의 크기와 복잡성, 개발자, 테스터 및 설계자의 선호도에 따라 달라집니다. 응용 프로그램을 작성할 때 테스트를 염두에두면 팀의 프로세스가 더 원활 해지고 고객의 높은 기대치를 충족하는 품질의 최종 제품이 생성됩니다.
API 테스트 인터뷰 질문 및 답변
학습 내용 :
자동화 된 테스트 프로세스의 단계 :
에 대한 효과적인 자동 테스트 , 응용 프로그램을 개발하기 전에 테스트 접근 방식을 자세히 고려해야합니다. 두 가지 별도의 프로세스가 있습니다.
- 자동화 된 테스트 도구를 염두에두고 애플리케이션 개발
- 자체 테스트 단계.
아래 순서도는 자동화 테스트를 통한 개발 프로세스를 보여줍니다.
아래 단계는 자동화 테스트 프로세스를 설명합니다. :
#1) 분석을 수행하십시오. 수동 또는 자동화 테스트를 수행해야하는지 결정 . 또한 응용 프로그램에서 테스트의 어떤 부분을 자동화해야하는지 수동으로해야하는지 분석합니다.
#두) 자동화 테스트에 대한 범위 또는 요구 사항이 있으면 타당성 분석을 수행하십시오.
#삼) 적절한 도구를 결정하고 선택하십시오. J2EE 응용 프로그램에 관련된 구성 요소를 알고 응용 프로그램의 복잡성을 이해하면 테스트를 위해 필요한 도구를 하나 이상 선택할 수 있습니다.
예, 완전히 JSP 기반 애플리케이션 화면 탐색 도구의 경우 셀레늄 웹 드라이버 충분할 수 있습니다. JSF 기반 UI 애플리케이션의 경우 JUnit 및 화면 탐색 테스트 도구 외에도 테스트를 위해 JSF 특정 도구가 필요할 수 있습니다.
# 4) 테스트에서 수행해야하는 단계 수를 분석하고 결정합니다. 단위, 통합, 기능 / 시스템 및 회귀를 수행 할 경우 각 단계에 적합한 도구를 선택합니다.
# 5) 애플리케이션 설계에 대한 테스트 도구의 영향을 분석합니다. 테스트를 자동화하려면 도구를 염두에두고 애플리케이션을 개발하는 것이 중요합니다.
최고의 컴퓨터 속도 향상 소프트웨어 무료
# 6) 파일럿 또는 모델 애플리케이션을 개발하고, 도구를 실행하고, 도구가 분석 단계에서 추정 된 값을 추가하는지 확인합니다. 이 단계가 계획대로 진행되면 응용 프로그램에 대해 도구를 마무리 할 수 있습니다.
# 7) 애플리케이션을 테스트 할 준비가되면 테스트 스크립트를 작성하고 도구를 실행합니다.
도구 선택
적절한 자동화 테스트 도구 선택 J2EE 응용 프로그램의 경우 응용 프로그램 유형과 사용되는 기술에 따라 크게 달라집니다. 이 외에도 몇 가지 다른 도구 선택에 영향을 미치는 요인 :
1) 신청 유형 – J2EE 응용 프로그램에는 다양한 변형이있을 수 있습니다. 일부는 Struts, Spring, Hibernate와 같은 프레임 워크로 개발되고 일부는 Server Side 기술 (JSP, Servlet) 만 사용하는 반면 다른 애플리케이션은 뷰 구성 요소, 컨트롤러, 비즈니스 로직 및 데이터베이스와 같은 종단 간 빌드됩니다.
사용되는 기술에 따라 하나 이상의 도구를 선택할 수 있습니다. 사용 가능한 J2EE 구성 요소 별 도구에 대해서는이 시리즈의 다음 기사를 참조하십시오.
2) 응용 프로그램의 복잡성 – 응용 프로그램이 많은 사용자에게 재정적 영향으로 복잡하다면 적절한 도구를 사용하여 세부 수준에서 테스트를 수행해야합니다.
사용자 수가 적은 보고서 및 데이터 표시와 같이 애플리케이션이 간단한 경우 간단한 오픈 소스 도구로 테스트를 수행 할 수 있습니다.
3) 테스트 유형 – 단위 테스트 도구는 통합 테스트에 적합하지 않을 수 있으며 그 반대의 경우도 마찬가지입니다.예를 들면, JUnit은 단위 테스트에 널리 사용되는 도구이지만 TestNG는 통합 테스트에 사용됩니다.
4) 테스트 예산 – 많이 사용되는 도구는 오픈 소스이므로 대부분의 프로젝트에 적합합니다. 기술 별 도구의 경우 팀은 도구 비용이 허용 가능한지 확인해야 할 수 있습니다.
5) 테스트 기간 – 대부분의 응용 프로그램 개발과 마찬가지로 마감일이 촉박합니다. 일부 도구는 학습, 환경 설정 및 테스트 케이스 작성에 다른 도구보다 더 많은 시간이 필요할 수 있습니다.
6) 환경 지원 – 애플리케이션이 실행될 환경에 따라 J2EE 테스트 도구를 선택하는 것이 중요합니다. 예를 들어 일부는 Windows에서만 실행되고 일부는 언어 기반입니다.
7) 테스터에 대한 지식 – 테스터는 특정 도구에 익숙하고 경험이있을 수 있습니다. 프로젝트 요구 사항과 테스터의 지식이 일치하면 해당 도구를 선택하여 교육 시간을 절약 할 수 있습니다.
8) 다른 테스트 프레임 워크와의 호환성 – 대규모 J2EE 응용 프로그램에서 JSP, Servlet, JavaScript, JSP, EJB 및 데이터베이스와 같은 여러 구성 요소를 사용하는 경우 하나의 도구가 모두 작동하지 않습니다.
따라서 선택한 테스트 프레임 워크는 다른 프레임 워크를 수용 할 수 있어야합니다.
9) 테스트 결과 및 통계 표시 – 대부분의 프로젝트에서 테스트 가독성은 중요한 기준이 될 수 있습니다. 따라서 테스트 실행 결과가 결함 목록, 원인 등을 포함한 적절한 화면 형식으로 표시되는 것이 중요해질 수 있습니다.
J2EE 애플리케이션 자동 테스트의 장점
- J2EE 응용 프로그램은 일반적으로 큽니다. 전체 애플리케이션을 수동으로 테스트하면 시간이 많이 걸리고 오류가 발생하기 쉽습니다.
- 여러 J2EE 자동 테스트 도구에는 기본 기능 테스트 기능이 함께 제공됩니다. 구성 요소를 염두에두고 개발 및 설계되었습니다. 이것은 테스터의 삶을 훨씬 쉽게 만듭니다. 예를 들어 JSF 테스트 도구 JSFUnit에는 프레임 워크의 클래스를 테스트하는 기능이 있습니다.
- 자동화 된 테스트의 효율성이 높습니다. 수동 테스트에서 정확성은 테스터의 기술에 따라 다릅니다.
- 반복적 인 변경이 발생하고 동일한 코드에 대한 테스트를 여러 번 수행해야하는 프로젝트에서는 자동화 된 테스트가 유용합니다.
- 자동화 된 테스트는 더 큰 테스트 케이스 실행 세트를 다룹니다. 이러한 유형의 테스트는 사람에 의존하지 않기 때문에 실행 속도가 빠르며 짧은 시간에 더 큰 집합을 다룰 수 있습니다.
- 테스터의 개입이 필요하지 않기 때문에 대부분의 경우 테스트 결과가 수동 테스트보다 더 정확합니다. 테스트 프로세스도 일관성이 있습니다.
결론:
대형 J2EE 애플리케이션에는 자동화 된 테스트가 선호됩니다. 응용 프로그램 테스트는 완전히 자동화되지 않을 수 있습니다. 수동 및 자동 테스트가 함께 진행됩니다. 처음에는 도구를 배우고 설정하는 데 시간이 많이 걸릴 수 있지만 프로세스가 설정되면 테스트가 더 효율적입니다.
에서 다음 기사 에서는 인기있는 J2EE 구성 요소 별 테스트 도구 및 프레임 워크의 포괄적 인 목록을 볼 수 있습니다.
자동화 테스트 경험과 쿼리를 알려주십시오.
추천 도서
- Android 애플리케이션 테스트를위한 11 가지 최고의 자동화 도구 (Android 앱 테스트 도구)
- 최고의 소프트웨어 테스트 도구 2021 (QA 테스트 자동화 도구)
- 자동화 테스트를위한 25 가지 최고의 Java 테스트 프레임 워크 및 도구 (3 부)
- 수동 성능 테스트를 수행하는 방법?
- 시험 입문서 eBook 다운로드
- JMeter를 사용한 데이터베이스 테스트
- 응용 프로그램 설치 및 Appium 테스트를위한 준비
- 자동화로 인해 테스터가 테스트에 대한 이해를 잃고 있습니까?