39 top automation testing interview questions
초보자 및 고급 레벨 지원자를위한 가장 자주 묻는 자동화 테스트 인터뷰 질문 :
테스트 자동화는 전체 소프트웨어 라이프 사이클에서 매우 중요한 역할을합니다. 자동화 테스트 인터뷰를 준비 할 때 대부분의 경우 도구 별 질문에만 집중합니다.
그러나 도구를 배우고 아는 것은 단지 평균 일 뿐이며 궁극적 인 목표가 아니라는 사실도 고려해야합니다.
따라서 자동화 테스터 인터뷰를 준비 할 때마다 '자동화'를 전체적으로 고려하고 관련 프레임 워크와 단계에 집중해야합니다.
우리 모두는 소프트웨어 테스트가 소프트웨어 개발의 매우 중요한 부분이라는 것을 알고 있습니다. 그러나 빠르게 성장하는 소프트웨어 개발 방법과 환경으로 인해 제한된 시간 내에 비용 제약과 함께 애플리케이션에 대한 모든 것을 수동으로 테스트하기가 어려워집니다.
따라서 자동화 테스트는 개발 속도를 높이기 위해 시장에서 빠르게 성장하고 있습니다. 이 자습서에는 자동화 테스트에 대한 주요 인터뷰 질문이 포함되어 있습니다. 나는 전체적으로 자동화에 매우 구체적이고 어떤 '도구'에 국한되지 않는 짧고 빠른 질문을 인용하려고했습니다.
Top 39 자동화 테스트 인터뷰 질문
우리는 최대 2 ~ 5 년 경력의 중급에서 전문가 수준의 후보자를위한 기본 테스트 자동화 질문과 몇 가지 고급 질문을 다루었습니다.
Q # 1) 자동화 란 무엇입니까?
대답: 자동화는 인간의 노력을 줄일 수있는 모든 행동입니다.
Q # 2) 자동화 테스트 란 무엇입니까?
대답: 데이터 입력, 테스트 단계 실행 및 결과 비교 등과 같은 테스트 작업을 수행하기 위해 특수 소프트웨어 도구 또는 스크립트를 사용하는 프로세스를 자동화 테스트라고합니다.
Q # 3) 무엇을 자동화 할 수 있습니까?
대답:
- 회귀 테스트 스위트
- 연기 / 정신 테스트 스위트
- 배포 빌드
- 테스트 데이터 생성
- API 및 메소드 테스트와 같은 GUI 뒤에서 자동화.
Q # 4) 자동화 테스트는 언제 유용합니까?
대답: 자동화 테스트는 다음 시나리오에서 유용합니다.
a) 회귀 테스트 : 버그 수정 또는 새 모듈 구현의 경우 이미 구현되었거나 변경되지 않은 기능이 영향을받지 않도록해야합니다. 이 경우 회귀 테스트 케이스를 여러 번 실행하게됩니다.
예를 들면 : 각 변경 요청 또는 버그 수정 후, 점진적 개발 접근 방식의 경우 각 반복 후 등
b) 비 기능 테스트 : 응용 프로그램의 비 기능적 측면을 테스트합니다.
예를 들어 부하 테스트 또는 성능 테스트 등은 사람이 추적하고 분석하기가 매우 어렵습니다.
c) 복잡한 계산 인적 오류가 발생하기 쉬운 검사 또는 테스트 시나리오.
d) 동일한 테스트의 반복 실행 : 때로는 다른 데이터 세트에 대해 또는 각 빌드 릴리스 후에 또는 여러 하드웨어, 소프트웨어 또는 둘의 조합에서 동일한 테스트 케이스 세트를 실행해야합니다.
위 시나리오에서 테스트 사례를 자동화하면 테스트 속도를 달성하고 인적 오류를 최소화하는 데 도움이됩니다.
Q # 5) 자동화에 적합한 테스트 케이스를 어떻게 식별합니까?
대답: 자동화에 적합한 테스트 케이스를 식별하는 것은 자동화를 향한 가장 중요한 단계입니다.
Q # 6) 100 % 자동화를 달성 할 수 있습니까?
대답: 100 % 자동화는 엣지 테스트 케이스가 많고 거의 실행되지 않는 케이스가 있기 때문에 달성하기 어려울 것입니다. 자주 실행되지 않는 이러한 사례를 자동화하면 자동화 제품군에 가치를 더하지 않습니다.
Q # 7) 프로젝트에서 자동화 테스트에 사용해야하는 도구를 결정하는 방법은 무엇입니까?
답변 : 프로젝트에서 자동화 테스트를위한 도구를 식별하려면 :
에) 프로젝트 요구 사항을 철저히 이해하고 자동화 할 테스트 시나리오를 식별합니다.
비) 프로젝트 요구 사항을 지원하는 도구 목록을 검색합니다.
씨) 자동화 도구에 대한 예산을 확인하십시오. 예산 내에서 도구를 선택하십시오.
디) 도구에 대한 숙련 된 리소스가 이미 있는지 확인하십시오. 필요한 숙련 된 리소스가없는 경우 기존 리소스를 교육하거나 새 리소스를 고용하는 데 드는 비용을 파악합니다.
이다) 이제 다음과 같은 주요 기준에 대해 각 도구를 비교하십시오.
- 도구의 스크립트를 개발하고 유지하는 것이 얼마나 쉬운가요?
- 비전문가도 약간의 교육으로 테스트 케이스를 실행할 수 있습니까?
- 이 도구는 프로젝트 요구 사항에 따라 웹, 모바일, 데스크톱 등과 같은 다양한 유형의 플랫폼을 지원합니까?
- 도구에 테스트보고 기능이 있습니까? 그렇지 않은 경우 도구에 대해 쉽게 구성 할 수 있습니까?
- 웹 기반 애플리케이션에 대한 브라우저 간 지원 도구는 어떻게됩니까?
- 이 도구는 얼마나 많은 테스트 유형을 지원할 수 있습니까?
- 이 도구는 몇 개의 언어를 지원합니까?
에프) 도구를 비교 한 후에는 예산에 맞는 도구를 선택하고 프로젝트 요구 사항을 지원하며 위에서 언급 한 주요 기준에 따라 더 많은 이점을 제공합니다.
Q # 8) 현재 프로젝트에 자동화가 없지만 이제 자동화를 구현하고 싶습니다. 내 단계는 무엇입니까?
대답:
- 먼저 자동화 할 테스트 / 테스트 사례 유형을 식별합니다.
- 도구 식별
- 프레임 워크 디자인
- 유틸리티 파일 및 환경 파일을 만듭니다.
- 스크립팅 시작
- 보고를 확인하고 작업합니다.
- 스크립트 향상 및 유지 관리를위한 시간 할당.
프로젝트에 자동화 테스트를 적용하는 데 필요한 단계는 다음과 같습니다.
- 자동화 테스트의 장단점을 이해하고 자동화에 적합한 테스트 시나리오를 식별합니다.
- 식별 된 시나리오를 자동화하는 데 가장 적합한 자동화 도구를 선택하십시오.
- 도구를 사용하여 테스트 케이스를 실행하기위한 도구 및 필수 환경 설정에 도움이되는 도구 전문가를 찾으십시오.
- 도구가 지원하는 프로그래밍 언어로 스크립트를 작성할 수 있도록 팀을 교육하십시오.
- 테스트 프레임 워크를 만들거나 요구 사항을 충족하는 기존 프레임 워크를 식별합니다.
- OS, 브라우저, 모바일 장치 등에 대한 실행 계획을 작성합니다.
- 수동 테스트 케이스에 대한 프로그래밍 스크립트를 작성하여 자동화 된 테스트 케이스로 변환하십시오.
- 도구의보고 기능을 사용하여 테스트 케이스 상태를보고하십시오.
- 지속적인 변경이나 새로운 기능에 대한 스크립트를 유지합니다.
Q # 9) 어떤 도구를 사용해야하는지 어떻게 결정합니까?
대답: 결론 가장 적합한 도구 프로젝트를 위해 많은 브레인 스토밍과 토론이 필요합니다.
Q # 10) 도구를 확인한 후 다음 단계는 무엇입니까?
대답: 도구를 완성하고 나면 다음 단계는 프레임 워크를 설계하는 것입니다.
Q # 11) 프레임 워크 란 무엇입니까?
대답: 프레임 워크는 전체 자동화 제품군의 구조 집합입니다. 또한 지침을 따르기 때문에 유지 관리 및 개선이 용이 한 구조를 만들 수 있습니다.
이러한 지침에는 다음이 포함됩니다.
- 코딩 표준
- 테스트 데이터 처리
- 요소 유지 및 처리 (QTP의 개체 저장소)
- 환경 파일 및 속성 파일 처리
- 데이터보고
- 로그 처리
Q # 12) 좋은 프레임 워크의 속성은 무엇입니까?
답변 : 특징은 다음과 같습니다.
- 모듈 식 : 프레임 워크는 변화에 적응할 수 있어야합니다. 테스터는 환경 또는 로그인 정보 변경에 따라 스크립트를 수정할 수 있어야합니다.
- 재사용 가능 : 일반적으로 사용되는 방법 또는 유틸리티는 모든 스크립트에 액세스 할 수있는 공통 파일에 작성되어야합니다.
- 일관된: 이 제품군은 허용되는 모든 코딩 관행을 따라 일관된 형식으로 작성되어야합니다.
- 독립적 인: 스크립트는 서로 독립적 인 방식으로 작성되어야합니다. 하나의 테스트가 실패하는 경우 나머지 테스트 케이스를 보류해서는 안됩니다 (로그인 페이지가 아닌 경우).
- 로그 : 프레임 워크에서 로깅 기능을 구현 한 것이 좋습니다. 이는 스크립트가 더 오랜 시간 동안 실행되는 경우 (예 : 야간 모드) 도움이 될 것입니다. 스크립트가 어느 시점에서든 실패 할 경우 로그 파일이 있으면 오류 유형과 함께 위치를 감지하는 데 도움이됩니다.
- 보고 : 보고 기능이 프레임 워크에 자동으로 포함되도록하는 것이 좋습니다. 스크립팅이 완료되면 이메일을 통해 결과와 보고서를받을 수 있습니다.
- 완성: 자동화 프레임 워크는 지속적 통합 또는 빌드가 배포되는 즉시 자동화 된 스크립트를 트리거하는 것과 같은 다른 애플리케이션과 쉽게 통합 할 수 있어야합니다.
Q # 13) 프레임 워크없이 할 수 있습니까?
대답: 프레임 워크는 필수 규칙이 아니라 가이드 라인이므로 프레임 워크 없이도 할 수 있지만 프레임 워크를 만들고 따르면 강화 및 유지 관리가 쉽게 구현 될 것입니다.
Q # 14) 알고있는 자동화 도구의 다른 유형은 무엇입니까?
대답: Selenium, JMeter 등과 같은 오픈 소스 도구
QTP, Load Runner, Ranorex, RFT 및 Rational Robot과 같은 유료 도구.
Q # 15) 일반적으로 프레임 워크의 구조는 무엇입니까?
대답: 일반적으로 구조는 – (프로젝트마다 다를 수 있음)
- 실제 테스트 스크립트가있는 'src'(소스) 폴더.
- 모든 라이브러리와 공통 메소드가있는 'lib'(라이브러리) 폴더.
- 모든 클래스 파일이있는 'class'폴더 (Java를 사용하는 경우).
- 로그 파일이있는 'log'폴더.
- 모든 웹 요소 ID가있는 파일 / 폴더입니다.
- URL, 환경 및 로그인 정보가 포함 된 파일입니다.
문 # 16) URL, 로그인, 비밀번호와 같은 정보를 어디에 보관 하시겠습니까?
대답: 이 정보는 항상 별도의 파일에 보관해야합니다.
Q # 17) 왜 이런 종류의 정보를 코드가 아닌 별도의 파일에 보관하고 싶습니까?
대답: URL, 로그인 및 암호는 매우 자주 사용되는 필드의 종류이며 환경 및 권한에 따라 변경됩니다. 코드에 하드 코딩 한 경우 해당 참조가있는 모든 파일에서 변경해야합니다.
100 개 이상의 파일이있는 경우 100 개 파일을 모두 변경하는 것이 매우 어려워 져서 오류가 발생할 수 있습니다. 따라서 이러한 종류의 정보는 별도의 파일에 보관되므로 업데이트가 쉬워집니다.
Q # 18) 다른 유형의 프레임 워크는 무엇입니까?
대답: 다양한 유형의 프레임 워크에는 다음이 포함됩니다.
- 키워드 기반 프레임 워크
- 데이터 기반 프레임 워크
- 하이브리드 프레임 워크
- 선형 스크립팅
문 # 19) 자동화하는 동안 몇 가지 좋은 코딩 사례를 말할 수 있습니까?
대답: 몇 가지 좋은 코딩 방법은 다음과 같습니다.
- 적절한 설명을 추가하십시오.
- 재사용 가능한 메소드를 식별하고 별도의 파일에 작성하십시오.
- 언어 별 코딩 규칙을 따르십시오.
- 별도의 파일에 테스트 데이터를 유지하십시오.
- 스크립트를 정기적으로 실행하십시오.
Q # 20) 자동화해서는 안된다고 생각하는 테스트가 있습니까?
대답:
- 거의 실행되지 않는 테스트.
- 탐색 적 테스트
- 사용성 테스트
- 수동으로 수행하면 빠르게 실행되는 테스트.
질문 # 21) 테스트는 UI 수준에서만 수행 할 수 있다고 생각하십니까?
YouTube와 호환되는 mp4 비디오 다운로더
대답: 오늘 우리가 Agile 모드로 이동함에 따라 테스트는 UI 레이어에만 국한되지 않습니다. 애자일 프로젝트에서는 초기 피드백이 매우 중요합니다. UI 레이어에만 집중하면 실제로 UI가 개발되어 테스트 할 수있을 때까지 기다리고 있습니다.
오히려 UI가 실제로 개발되기 전에도 테스트 할 수 있습니다. Cucumber와 같은 도구를 사용하여 API 또는 메서드를 직접 테스트 할 수 있습니다. FitNesse .
이런 식으로 우리는 훨씬 일찍 피드백을 제공하고 있으며 UI가 개발되기 전에도 테스트 중입니다. 이 접근 방식을 따르면 작은 외관 변경 또는 UI의 일부 유효성 검사의 GUI 측면 만 테스트하는 데 도움이되며 버그 수정에 더 많은 시간을 할애하여 개발자에게 도움이됩니다.
Q # 22) 자신에게 가장 적합한 자동화 도구를 어떻게 선택합니까?
대답: 자동화 도구 선택은 다음과 같은 다양한 요인에 따라 달라집니다.
- 자동화하려는 애플리케이션의 범위입니다.
- 비용 및 예산과 같은 관리 오버 헤드.
- 도구를 배우고 구현할 시간입니다.
- 도구에 사용할 수있는 지원 유형입니다.
- 도구의 한계
질문 # 23) 테스터가 자동화를 수행하는 것을 막는 것은 무엇이라고 생각하십니까? 그것을 극복 할 방법이 있습니까?
대답: 테스터의 주요 장애물은 자동화를 원할 때 프로그래밍 / 코딩을 배우는 것입니다. 테스터는 코딩을하지 않기 때문에 코딩에 적응하는 것은 테스터에게 약간의 도전입니다.
다음과 같은 방법으로 극복 할 수 있습니다.
- 자동화 할 때 개발자와 협력합니다.
- 자동화는 테스터뿐만 아니라 전체 팀의 책임이라는 점을 고려하십시오.
- 전용 시간을 제공하고 자동화에 집중합니다.
- 적절한 관리 지원 받기.
이러한 자동화 테스트 인터뷰 질문을 pdf로 저장하고 추가 읽기를 위해 인쇄 할 수 있습니다.
Q # 24) 자동화 테스트 프레임 워크 란 무엇입니까?
대답: 일반적으로 프레임 워크는 일련의 지침입니다. 테스트가 자동화되는 실행 환경을 만들기위한 일련의 지침, 가정, 개념 및 코딩 사례를 자동화 테스트 프레임 워크라고합니다.
자동화 테스트 프레임 워크는 테스트중인 애플리케이션과 연결하고, 파일에서 입력을 받고, 테스트 케이스를 실행하고, 테스트 실행을위한 보고서를 생성하는 메커니즘이있는 테스트 하네스를 생성합니다. 자동화 테스트 프레임 워크는 애플리케이션과 독립적이어야하며 사용, 수정 또는 확장이 쉬워야합니다.
Q # 25) 자동화 테스트 프레임 워크의 중요한 모듈은 무엇입니까?
대답: 자동화 테스트 프레임 워크의 중요한 모듈은 다음과 같습니다.
- 테스트 어설 션 도구 : 이 도구는 테스트중인 애플리케이션에서 예상 값을 테스트하기위한 assert 문을 제공합니다. 예를 들어. TestNG, Junit 등
- 데이터 설정 : 각 테스트 케이스는 데이터베이스 나 파일 또는 테스트 스크립트에 포함 된 사용자 데이터를 가져와야합니다. 프레임 워크 데이터 모듈은 테스트 스크립트 및 전역 변수에 대한 데이터 수신을 처리해야합니다.
- 빌드 관리 도구 : 테스트 스크립트 생성을 위해 프레임 워크를 구축하고 배포해야합니다.
- 지속적인 통합 도구 : CICD (지속적 통합 및 지속적 개발)를 사용하면 각 반복에서 프레임 워크에서 수행 된 변경 사항을 통합하고 배포하기 위해 지속적 통합 도구가 필요합니다.
- 보고 도구 : 단계, 결과 및 실패를 더 잘보기 위해 테스트 케이스가 실행 된 후 읽을 수있는 보고서를 생성하려면보고 도구가 필요합니다.
- 로깅 도구 : 프레임 워크의 로깅 도구는 오류 및 버그를 더 잘 디버깅하는 데 도움이됩니다.
Q # 26) 일부 자동화 테스트 도구를 설명하십시오.
대답: 유명한 자동화 테스트 도구 중 일부가 아래에 설명되어 있습니다.
(i) 셀레늄 : Selenium은 웹 애플리케이션 자동화 테스트를위한 테스트 프레임 워크입니다. 여러 브라우저를 지원하며 OS에 독립적입니다. Selenium은 또한 Java, C #, PHP, Ruby 및 Perl 등과 같은 다양한 프로그래밍 언어를 지원합니다.
셀렌 웹 기반 애플리케이션을 테스트하기위한 추가 테스트 프레임 워크 또는 테스트 스크립트를 개발하는 데 사용할 수있는 오픈 소스 라이브러리 세트입니다.
(ii) UFT : 통합 기능 테스트는 기능 테스트를위한 라이센스 도구입니다. API, 웹 서비스 등과 같은 다양한 기능을 제공하며 데스크톱, 웹 및 모바일과 같은 여러 플랫폼도 지원합니다. UFT 스크립트는 시각적 기본 스크립팅 언어로 작성됩니다.
(II) 시대 : Appium은 오픈 소스 모바일 애플리케이션 테스트 도구입니다. 크로스 플랫폼, 네이티브, 하이브리드 및 웹 기반 모바일 애플리케이션에서 테스트를 자동화하는 데 사용됩니다. Appium은 테스트 코드에서 API 및 DB에 대한 전체 액세스 권한을 통해 모든 언어의 모든 모바일 애플리케이션을 자동화합니다.
Appium은 클라이언트-서버 아키텍처를 기반으로하며 셀레늄에서 진화했습니다.
(iv) 오이 : Cucumber는 오픈 소스 행동 중심 개발 도구입니다. 웹 기반 애플리케이션 자동화 테스트에 사용되며 ruby, java, scala, groovy 등과 같은 언어를 지원합니다. Cucumber는 일반 텍스트로 작성된 실행 가능 사양을 읽고 해당 사양에 대해 테스트중인 애플리케이션을 테스트합니다.
오이가 일반 텍스트로 시나리오를 이해하려면 Gherkin으로 알려진 몇 가지 기본 구문 규칙을 따라야합니다.
(v) 테스트 완료 : TestComplete는 데스크톱, 웹, 모바일 등과 같은 다양한 플랫폼에서 애플리케이션을 테스트 할 수있는 라이센스가 부여 된 자동화 된 UI 테스트 도구입니다. 하나의 브라우저에서 테스트 케이스를 기록하고 여러 브라우저에서 실행할 수있는 유연성을 제공하므로 크로스 브라우저 테스트를 지원합니다.
TestComplete에는 개체를 고유하게 식별하고 저장소에 저장하는 개체 인식 알고리즘이 내장되어 있습니다.
Q # 27) 테스트 프레임 워크 기술에는 어떤 유형이 있습니까?
대답: 네 가지 유형의 자동화 테스트 프레임 워크 기술이 있습니다.
그들은:
(i) 모듈 식 테스트 프레임 워크 :
이 프레임 워크는 추상화 개념을 기반으로합니다. 이 프레임 워크에서 테스터는 테스트중인 애플리케이션의 각 모듈에 대한 스크립트를 개별적으로 생성 한 다음 이러한 스크립트를 계층 적 순서로 결합하여 대규모 테스트 케이스를 생성합니다.
모듈 사이에 추상화 계층을 생성하므로 한 모듈에 대한 테스트 스크립트의 수정 사항은 다른 모듈에 영향을주지 않습니다.
이 프레임 워크의 장점 :
- 테스트 케이스의 더 쉬운 유지 관리 및 확장 성.
- 이미 스크립팅 된 모듈을 사용하여 테스트 케이스를 만드는 것이 더 쉽고 빠릅니다.
단점 :
- 테스트 케이스에는 데이터가 포함되어 있습니다. 따라서 다른 데이터로 동일한 테스트 스크립트를 실행하는 것은 스크립트 수준에서 큰 변화입니다.
(ii) 데이터 기반 테스트 프레임 워크 :
데이터 기반 테스트 프레임 워크에서 입력 데이터 및 입력 데이터에 해당하는 예상 출력 데이터는 파일 또는 데이터베이스에 저장되고 자동화 된 스크립트는 여러 데이터 세트에 대해 동일한 테스트 단계 세트를 실행합니다. 이 프레임 워크를 사용하면 입력 데이터 만 다르고 실행 단계가 동일한 여러 테스트 케이스를 실행할 수 있습니다.
장점 :
- 실행에 필요한 테스트 스크립트의 수를 줄입니다. 다른 데이터로 동일한 스크립트를 여러 번 실행합니다.
- 자동화 테스트를위한 코딩 감소.
- 버그 유지 및 수정 또는 기능 향상을위한 유연성 향상
- 테스트 용 자동화 시스템이 준비되기 전에도 테스트 데이터를 생성 할 수 있습니다.
단점 :
- 동일한 실행 단계 세트가있는 유사한 테스트 케이스 만 여러 데이터 세트에 대해 결합 될 수 있습니다. 다른 실행 단계 세트에는 다른 테스트 케이스가 필요합니다.
(iii) 키워드 기반 테스트 프레임 워크 :
데이터 테이블과 자명 한 키워드를 사용하는 애플리케이션 독립적 인 테스트 프레임 워크입니다. 키워드는 테스트중인 애플리케이션에서 수행 할 조치를 설명하고 데이터 테이블은 입력 및 예상 출력 데이터를 제공합니다.
키워드 기반 테스트는 데이터 기반 테스트의 증분입니다.
장점 :
- 적은 코딩과 동일한 스크립트를 여러 데이터 세트에 사용할 수 있습니다.
- 조치에 대해 이미 존재하는 키워드를 사용하여 테스트 케이스를 작성하는 데 자동화 전문 지식이 필요하지 않습니다.
- 여러 테스트 케이스에서 동일한 키워드를 사용할 수 있습니다.
단점 :
- 이 프레임 워크는 키워드 작업과 데이터 입력을 처리해야하므로 더 복잡합니다.
- 테스트 케이스는 길어지고 복잡 해져서 동일한 유지 보수 가능성에 영향을 미칩니다.
(iv) 하이브리드 테스트 프레임 워크 :
이 프레임 워크는 위에서 언급 한 모든 테스트 프레임 워크 (모듈 식, 데이터 기반 및 키워드 기반)의 조합입니다.
이 프레임 워크에서 테스트 케이스는 모듈 식 테스트 프레임 워크에서 결합하여 모듈 식 스크립트에서 개발됩니다. 각 테스트 사례는 데이터 기반 프레임 워크 및 키워드 기반 작업 파일에서와 같이 데이터 파일을 사용하는 드라이버 스크립트를 사용합니다.
장점 :
- 모듈 식이며 유지 관리가 쉽습니다.
- 적은 코딩으로 더 많은 테스트 케이스를 처리 할 수 있습니다.
- 여러 데이터 세트로 하나의 테스트 케이스를 실행할 수 있습니다.
단점 :
- 읽기, 유지 관리 및 향상이 복잡합니다.
Q # 28) 언제 자동화 테스트보다 수동 테스트를 선호합니까?
대답: 다음과 같은 경우 자동화 테스트보다 수동 테스트를 선호합니다.
- 이 프로젝트는 단기적이며 스크립트 작성은 수동 테스트와 비교할 때 시간과 비용이 많이 듭니다.
- 유연성이 필요합니다. 자동화 된 테스트 케이스는 특정 구성 방식으로 프로그래밍되고 실행됩니다.
- 사용성 테스트를 수행해야합니다.
- 애플리케이션 / 모듈이 새로 개발되었으며 이전 테스트 사례가 없습니다.
- 임시 또는 탐색 적 테스트를 수행해야합니다.
Q # 29) 애자일 방법론의 자동화 테스트가 유용합니까?
대답: 자동화 테스트는 회귀, 연기 또는 온 전성 테스트에 유용합니다. 전통적인 폭포수 모델에서 이러한 모든 유형의 테스트는주기가 끝날 때 발생하며 때로는 애플리케이션에 대한 개선 사항이 많지 않은 경우 수행 할 필요조차 없을 수도 있습니다. 회귀 테스트 .
반면에 애자일 방법론 , 모든 반복은 몇 가지 새로운 기능이 추가됨에 따라 회귀 테스트 케이스를 실행해야합니다.
또한 현재 스프린트 모듈의 기능 테스트 케이스가 다음 스프린트를 위해 회귀 스위트에 추가되어야하므로 회귀 스위트 자체는 각 스프린트 후에 계속 증가합니다.
따라서 애자일 방법론의 자동화 테스트는 매우 유용하며 스프린트의 짧은 시간에 최대 테스트 범위를 달성하는 데 도움이됩니다.
Q # 30) 자동화 테스트의 장점과 단점을 나열하십시오.
대답:
장점 :
- 인적 자원 감소
- 재사용 성
- 짧은 시간에 더 많은 테스트 커버리지
- 신뢰할 수 있음
- 테스트 케이스의 병렬 실행
- 빠른
단점 :
우선 순위 큐 구현 C ++
- 개발 및 유지 보수 시간이 더 많습니다.
- 도구 비용
- 숙련 된 자원이 필요합니다.
- 환경 설정
- 테스트 스크립트 디버깅이 문제입니다.
Q # 31) 수동 테스트의 장점과 단점을 나열하십시오.
대답:
장점 :
- 환경 설정이 필요하지 않습니다.
- 프로그래밍 지식이 필요하지 않습니다.
- 동적으로 변화하는 요구 사항에 권장됩니다.
- 인간의 관찰력이 더 많은 버그를 감지하도록 허용합니다.
- 단기 프로젝트의 경우 비용이 적습니다.
- 적응성
단점 :
- 복잡한 계산을 수행하기가 어렵습니다.
- 재사용 성
- 시간이 걸리는
- 인적 오류 또는 실수의 위험이 높습니다.
- 더 많은 인적 자원이 필요합니다.
Q # 32) 프레임 워크없이 자동화 테스트를 할 수 있습니까? 그렇다면 왜 프레임 워크가 필요합니까?
대답: 예, 프레임 워크를 사용하지 않고도 자동화 테스트를 수행 할 수 있습니다. 자동화에 사용하는 도구를 이해하고 도구가 지원하는 프로그래밍 언어의 단계를 프로그래밍 할 수 있습니다.
프레임 워크없이 테스트 케이스를 자동화하면 테스트 케이스의 프로그래밍 스크립트에 일관성이 없을 것입니다.
테스트 스크립트에서 가독성, 재사용 성 및 일관성을 유지하기 위해 모든 사람이 따라야하는 일련의 지침을 제공하려면 프레임 워크가 필요합니다. 프레임 워크는 또한보고 및 로깅 기능에 대한 하나의 공통 기반을 제공합니다.
Q # 33) 애플리케이션에 대한 기본 '로그인'기능 테스트 사례를 어떻게 자동화합니까?
대답: 자동화 도구 및 프레임 워크가 이미 테스트 환경을 대신한다고 가정합니다.
기본 '로그인'기능을 테스트하려면 :
- 프로젝트 요구 사항 이해 : 로그인 기능에는 사용자 이름 텍스트 상자, 비밀번호 텍스트 상자 및 로그인 버튼이 있습니다.
- 테스트 시나리오 식별 : 로그인 기능의 경우 가능한 테스트 시나리오는 다음과 같습니다.
- 사용자 이름과 비밀번호가 비어 있습니다.
- 잘못된 사용자 이름 및 비밀번호
- 유효한 사용자 이름과 잘못된 암호
- 유효한 사용자 이름 및 비밀번호
- 준비 데이터 입력 파일 각 시나리오에 해당하는 데이터로.
- 도구 시작 프로그램에서.
- 사용자 이름 필드, 암호 필드 및 로그인 버튼을 식별합니다.
- 각 테스트 시나리오에 대해 데이터 파일에서 데이터를 가져와 해당 필드에 입력합니다. 프로그램은 데이터 입력 후 로그인 버튼을 클릭합니다.
- 확인 어설 션의 도움으로 테스트 스크립트에서 부정적인 시나리오에 대한 오류 메시지 및 긍정적 인 시나리오에 대한 성공 메시지.
- 운영 테스트 스위트를 작성하고 보고서를 생성하십시오.
Q # 34) 자동화 테스트는 블랙 박스 테스트인가요 아니면 화이트 박스 테스트인가요?
대답: 자동화 테스트는 대부분 블랙 박스 테스트 애플리케이션의 저수준 디자인이나 코드를 알지 못해도 수동 테스터가 테스트중인 애플리케이션에 대해 수행하는 단계를 프로그래밍하기 때문입니다.
경우에 따라 자동화 된 테스트 스크립트는 테스트중인 애플리케이션에서 사용되는 데이터베이스 세부 정보 또는 더 많은 코딩 세부 정보에 액세스해야하므로 화이트 박스 테스트 유형이 될 수 있습니다.
따라서 자동화 테스트는 자동화가 수행되는 시나리오에 따라 블랙 박스 또는 화이트 박스 유형의 테스트가 될 수 있습니다.
Q # 35) 하루에 몇 개의 테스트 케이스를 자동화 했습니까?
대답: 음, 숫자는 테스트 케이스의 복잡성에 따라 다릅니다. 복잡성이 제한되었을 때 하루에 5 ~ 6 개의 테스트 사례를 자동화 할 수있었습니다. 때로는 복잡한 시나리오에 대해 하나의 테스트 케이스 만 자동화 할 수있었습니다.
또한 매우 복잡한 시나리오의 경우 테스트 케이스를 입력, 계산, 출력 확인 등과 같은 여러 구성 요소로 분류했으며 2 일 이상이 걸렸습니다.
Q # 36) 자동화 테스트의 효과를 결정하는 요소는 무엇입니까?
답변 : 자동화 테스트의 효과를 결정하는 몇 가지 요소는 다음과 같습니다.
- 테스트 케이스를 수동으로 실행하는 동안 스크립트를 실행하여 시간을 절약했습니다.
- 발견 된 결함
- 테스트 커버리지 또는 코드 커버리지
- 유지 보수 시간 또는 개발 시간
- 스크립트의 안정성
- 재사용 성 테스트
- 테스트중인 소프트웨어의 품질
Q # 37) 어떤 테스트 케이스를 자동화 할 수 있습니까?
대답: 자동화 할 수있는 테스트 케이스 유형은 다음과 같습니다.
(i) 연기 테스트 사례 : 연기 테스트는 빌드 검증 테스트라고도합니다. Smoke 테스트 케이스는 새 빌드가 출시 될 때마다 실행되어 테스트를 수행 할 수 있도록 빌드 상태를 확인합니다.
(ii) 회귀 테스트 케이스 : 회귀 테스트는 새 모듈이 추가되거나 버그가 수정 된 후 이전에 개발 된 모듈이 예상대로 작동하는지 확인하는 테스트입니다.
회귀 테스트 사례는 각 증분 단계에서 새로운 기능이 추가되는 증분 소프트웨어 접근 방식에서 매우 중요합니다. 이 경우 회귀 테스트는 각 증분 단계에서 수행됩니다.
(iii) 복잡한 계산 테스트 사례 : 애플리케이션의 필드를 검증하기 위해 복잡한 계산이 포함 된 테스트 케이스가이 범주에 속합니다. 복잡한 계산 결과는 인적 오류가 발생하기 쉬우므로 자동화되면 정확한 결과를 제공합니다.
(iv) 데이터 기반 테스트 사례 : 동일한 단계 세트가 있고 데이터 변경과 함께 여러 번 실행되는 테스트 케이스를 데이터 기반 테스트 케이스라고합니다. 이러한 종류의 테스트 사례에 대한 자동 테스트는 빠르고 비용 효율적입니다.
(v) 비 기능적 테스트 케이스 : 부하 테스트 및 성능 테스트와 같은 테스트 사례에는 여러 사용자와 여러 하드웨어 또는 소프트웨어 조합이있는 시뮬레이션 환경이 필요합니다.
각 조합 또는 사용자 수에 대해 여러 환경을 수동으로 설정하는 것은 불가능합니다. 자동화 된 도구는이 환경을 쉽게 생성하여 비 기능적 테스트를 쉽게 수행 할 수 있습니다.
Q # 38) 자동화 테스트 라이프 사이클의 단계는 무엇입니까?
답변 : 자동화 테스트 수명주기의 단계는 다음과 같습니다.
- 자동화 테스트 수행 결정.
- 자동화 도구를 식별하고 학습합니다.
- 자동화 테스트의 범위를 결정하십시오.
- 테스트 스위트를 설계하고 개발하십시오.
- 테스트 실행
- 테스트 스크립트의 유지 관리.
Q # 39) 자동 테스트 스크립트 란 무엇입니까?
대답: 자동화 된 테스트 스크립트는 응용 프로그램이 요구 사항에 맞는지 확인하기 위해 테스트중인 응용 프로그램에서 일련의 지침을 수행하기 위해 프로그래밍 언어로 작성된 짧은 프로그램입니다.
이 프로그램을 실행하면 테스트 결과가 응용 프로그램이 예상대로인지 여부에 따라 통과 또는 실패로 표시됩니다.
결론
이는 자동화 도구 또는 프로그래밍 언어와 무관 한 주요 질문입니다. 자동화 테스트 인터뷰에는 작업 한 도구에 따라 도구 및 프로그래밍 언어 별 질문도 포함됩니다.
대부분의 테스트 자동화 인터뷰 질문은 개발 한 프레임 워크에 중점을 두므로 테스트 프레임 워크를 철저히 만들고 이해하는 것이 좋습니다. 인터뷰를 할 때 후보자가 프레임 워크에 대한 내 질문에 답할 때 언어 별 질문 (제 경우 핵심 자바)을 선호합니다.
질문은 다음과 같은 몇 가지 기본 시나리오의 논리를 작성하기 위해 Java의 기본에서 시작됩니다.
- 주어진 줄에서 텍스트 세트를 어떻게 추출합니까?
- URL을 어떻게 추출합니까?
- 어떤 웹 페이지, 어떤 프레임에서든 링크 수와 그 내용이 동적으로 변경됩니다. 어떻게 처리 하시겠습니까?
- 이미지와 플래시 개체를 어떻게 처리합니까?
- 한 줄에서 단어를 어떻게 찾습니까?
이 모든 것에 대한 답변 테스트 자동화 인터뷰 질문 자동화에 사용하는 도구 / 언어에 따라 매우 다릅니다. 따라서 인터뷰를 가기 전에 프로그래밍 기술을 연마하십시오.
프레임 워크를 만들 기회를 얻지 못했고 다른 사람이 프레임 워크를 만든 경우 인터뷰에 참석하기 전에 시간을내어 완전히 이해하십시오.
자동화 테스트 인터뷰를위한 몇 가지 팁은 다음과 같습니다.
- 도구를 철저히 숙지하십시오.
- 도구에서 사용하는 로케이터 기술을 배웁니다.
- 자동화 테스트에 사용하는 언어를 사용하여 프로그래밍을 연습하십시오.
- 프레임 워크와 해당 구성 요소를 알아보십시오.
- 프레임 워크 개발에 참여했다면 항상 유리합니다. 따라서 작업 한 프레임 워크의 모듈을 철저히 관리하십시오.
이 질문이 테스트 자동화 인터뷰를 준비하는 데 유용하기를 바랍니다.