본문 바로가기

전체 글35

구조 기반 테스트 기법 - 조건, 결정, 다중 조건, 변경 조건/결정 커버리지와 테스팅 구조 기반 테스트 기법이란 소프트웨어나 시스템의 구조를 중심으로 테스팅하는 기법이다. 소프트웨어의 코드를 참조하여 실행하는 테스트 기법으로 화이트박스 테스트 기법에 해당한다. 시스템 또는 소프트웨어의 구조가 테스트 스위트에 의해 테스트된 정도를 커버리지라고 한다 . 명세 기반 테스트 기법과는 달리 코드를 기반으로 한 테스트 기법과 커버리지와의 관계는 어느정도 명확하다.구문 커버리지는 테스트 스위트에 의해 실행된 구문이 몇퍼센트인지 측정하는 것으로 다른 커버리지에 비해 약하다. 결정 커버리지는 테스트 스위트에 의해 실행된 결정포인트 내의 전체조건식이 최소한 참, 거짓이 한번의 값을 갖는지 측정하여 퍼센트로 표현한다. 조건 커버리지는 전체조건식의 결과와 관계없이 각 개별 조건식이 참, 거짓 한번을 모두 갖도.. 2025. 6. 1.
Appium 기초 프로그램 실행 환경 구성 및 간단 예제 코드 실행 Appium으로 Android 에뮬레이터에서 로그인 버튼 클릭 같은 간단한 예제 테스트 코드를 실행해본다.1단계: 필수 프로그램 설치Node.js 설치(Appium 실행에 필요): Nodejs 설치 후 확인하는 코드 'node -v', 'npm -v'Appium 설치: 'npm install -g appium', 확인: 'appium -v'Appium Inspector 설치(GUI 도구, 선택): Appium Inspector GitHub에서 최신 버전 설치Anroid Studio 설치(Android SDK 포함): 설치 후 Android SDK, SDK Tools, Android Virtual Device(AVD) 꼭 설치2단계: Android 에뮬레이터 준비Anroid Studio에서AVD Manag.. 2025. 5. 28.
Appium 테스트 자동화 디바이스 드라이버 UIAutomator2, XCUITest 작동 원리 Appium의 테스트 자동화 과정은 [Test Script] -> [Appium Server] -> [Automation Engine] -> [Mobile Device] 이다. Test Script를 작성을 해서 Appium Server로 보낸 후 Appium은 디바이스/에뮬레이터에서 테스트 대상 앱을 설치하고 조작하는 디바이스 드라이버가 필요하다. Android의 경우에는 UIAutomator2, iOS는 XCUITest가 디바이스 드라이버 역할을 한다. 디바이스 드라이버는 Appium에서 자동으로 설치하고 있어서 별도로 설치할 필요는 없다. 개발자는 테스트 코드를 작성하여 실행시키면 Appium 서버에 테스트 코드를 전달하고 Appium은 디바이스 드라이버를 사용해서 테스트 기기를 조작한다. 간단하게.. 2025. 5. 23.
Appium이란? 모바일 자동화 테스트의 작동 과정 및 원리 모바일 자동화 테스트를 위한 환경을 조성하기 위해서 가장 기본적으로 고려해야할 것이 바로 Appium이다. Appium이란 모바일 애플리케이션의 자동화 테스트를 위한 오픈 소스 도구이다. iOS, Android, Windows 앱을 대상으로 테스트를 작성할 수 있으며 네이티브앱, 하이브리드앱, 모바일 웹 앱 모두 지원한다. Appium은 WebDriver 기반으로 Selenium WebDriver와 비슷한 구조를 사용해 다양한 언어(Java, Python, JavaScript 등)로 테스트 스크립트를 작성할 수 있다. 로그인, 회원가입 기능 테스트, 앱 내 네비게이션, 버튼 클릭 등 UI 동작, 반복적으로 수행되는 회귀 테스트에 사용할 수 있다. Appium을 사용하기 위해서는 Node.js 설치, Ap.. 2025. 5. 21.
playwright doc 정독하기 #2 - codgen을 사용하여 자동으로 테스트 코드 생성하기 playwright를 사용하다보면 VS Code에서 Run을 하면 테스트가 정상적으로 돌아갔다는 뜻으로 아무 반환값도 제공하지 않는다. 가장 기본적인 코드만을 예제로 수행하고 있어서 문제가 없는 것이 당연하지만 실제로 어떻게 코드가 돌아간 걸까 하는 의구심이 들기도 한다. 웹 테스트를 자동화하기 위해서 locator로 특정 위치를 찾은 다음에 click 하라는 명령을 내렸지만 실제로 그 위치에서 특정 role, element를 찾아서 클릭한 것이 맞을까? 시각적으로 확인해보고 싶다.그 반대로 특정 화면을 띄워서 element들간의 상호작용을 선택했을 때 어떤 코드로 동작시킬 수 있는지 확인해보고 싶은 마음이 든다. 그럴때 사용할 수 있는 것이 codegen이다. codegen은 브라우저에서 직접 테스트 .. 2025. 5. 19.
playwright doc 정독하기 #1 - 자동화 테스트 기본 기능 Action Assertion playwtight에서 제공하는 doc 문서를 정독하면서 playwright가 제공하는 기능과 함수, 작동 방식에 대해서 알아보도록 한다.이번 Writing tests에서는 playwright가 기본적으로 제공하고 있는 기능들을 사용하여 간단한 예제 코드를 작성해본다. 웹 자동화 테스트를 위해서 가장 기본적인 것은 element에서 값을 읽어와서 특정 버튼을 선택하거나 input box에 원하는 값을 입력 또는 어떤 개체가 있는지를 확인하는 것이 중요하다. 웹 기능 자동화 테스트 목적에 따라서 다르겠지만 일반적으로 자동화 테스트를 사용하는 목적은 복잡하지 않은 기본 기능의 테스트를 반복적으로 수행하면서 QA가 테스트를 하지 않는 시점에도 웹 기능의 정상 동작 여부를 확인하는 것이다.심화 적용을 위해서는 .. 2025. 5. 19.