# Quality Assurance

QA
1. QA란? QA는 텍스트품질보증을 뜻하는 Quality Assurance의 약어입니다. 서비스의 품질보증 관련 업무를 하는 것으로, 서비스의 기능을 검증하고 관리하기 위한 일련의 활동을 합니다. 조직,프로젝트의 규모가 작은 경우 개발자가 직접 기능 검증을 진행하기도 하지만, 규모가 큰 경우엔 QA를 전담으로 하는 팀을 구성해서 운영하기도 합니다. QA = Tester라고 생각하는 분들이 많지만, QA는 단순히 서비스의 기능 테스트만 하는 것이 아닙니다. QA는 소프트웨어나 제품의 설계 단계 부터 릴리즈 단계까지 전 단계를 참여하여 각 단계별로 품질을 저하시키거나 리소스가 낭비될 수 있는 요소를 발견한 뒤, 해당 소프트웨어 혹은 제품의 품질을 향상시키고 리소스 낭비를 방지하는 것을 목적으로 합니다. 
ISTQB 시험 후기
1. ISTQB를 보게 된 이유 > 게임QA 분야에 개념적인 지식을 어느정도 배우고 확인할 수 있는 방법이 자격증 취득이라 생각했고 ISTQB,CSTS 중 우선 ISTQB를 취득해보기로 결정했다. 내가 준비한 자격증은 ISTQB중에서도 기본인 CTFL Foundation 레벨이다. 2. 시험 준비 >시험 준비는 인터넷에서 찾아볼 수 있는 여타 방법과 다르지 않게 하였다. 내가 사용한 공부 자료는 KSTQB에서 제공한 syallbus와 sample exam A,B,C를 사용해서 공부하였다. 그리고 ISTQB를 준비하는 사람들이 정리해 놓은 블로그들도 유용하였다. 준비기간 > 공부기간은 생각보다 길었지만 하루 공부 시간은 많지 않았다. 하루에 syllabus 한 단원을 훑거나, 외우거나 하는데 1시간 정도 사용하였고, 문제도 A,B,C를 두 번 풀고 시험에 임했다. 총 기간은 한달하고 한달반 정도 하였고, 공부 시간은 아마 60시간채 안될거다. 준비방
Software Errors
Common categories of errors 1. Functionality Errors Software has a functionality error if something that you expect it to do is hard, awkward, confusing, or impossible. e.g. if the Cancel button is not clickable 2. Communication Errors Anything that the end user needs to know in order to use the software should be made available on screen e.g. No Help instructions/menu provided, features that are part of the release but are not documented in the help menu, a button named ‘
Stub, Driver 차이
소프트웨어는 여러개의 클래스와 함수, 패키지들이 맞물려서 돌아감. 근데 이 모두를 전부 개발하지 않고, 일부만 개발된 상태로 기능 테스트를 해보고 싶을 수 있음. 이 때, 아직 미개발된 항목들에 대해 가장 기본적인 뼈대 기능만 만들어서 단순한 기능 테스트를 할 수 있음. 이 때 사용되는 개념이 스텁과 드라이버임. Stub 서버-클라이언트 구조에서 서버만 개발 된 상태로 테스트를 하고싶을 때 뼈대만 있는 가상의 클라이언트를 만들어 테스트 해볼 수 있음. 이 가상의 클라이언트 = Stub Driver 마찬가지로 서버-클라이언트 구조에서 클라이언트만 개발 된 상태로 테스트를 진행하고 싶을 때 접속 인증등의 간단한 기능만 있는 가상의 서버를 만들어서 테스트 할 수 있음 이 가상의 서버 = Driver

ISTQB sample A,B,C 오답 모음
오답 노트 1. Sample A 2. Sample B 3. 다음 중 자동차의 자동 주행속도 유지 시스템의 장애로 볼 수 있는 것은? A. 시스템 개발자가 잘라 붙이기(cut-and-paste) 후 변경된 부분에 대한 이름 수정을 잊어버렸다. B. 후진 시 경고음을 울리는 불필요한 코드가 시스템에 들어갔다. C. 라디옴 볼륨을 키우거나 줄일 때 시스템이 설정 속도를 유지하지 못한다. D. 시스템의 설계 명세에 km/h 속도 단위가 잘못 표기되었다. > 오답 노트 오류 : 부정확한 결과를 초래하는 인간의 활동 결함 : 필요한 기능을 수행하지 못하도록 하는 컴포넌트나 시스템 상의 결점. 결함의 예는 부정확한 구문이나 부정확한 데이터의 정의 등이다. 장애 : 컴포넌트나 시스템이 예상된 인도나 서비스 또는 예상 결과와 실제적인 편차를 보이는 것 4. 다음 중 피트니스 추적기(fitness tra

Charles 로 iOS, Android 디바이스 테스트 하기 - 환경설정
안녕하세요, QA 엔지니어 Hardin 입니다. Charles Proxy ? Charles Proxy는 앱과 인터넷 사이에 있습니다. 모든 네트워킹 요청과 응답은 Charles Proxy 를 통해 지나가기 때문에 네트워크 응답과 요청을 살펴보는 것이 가능하고 심지어 앱의 응답 방식을 테스트하기 위해 데이터 변경도 가능합니다. (출처 : https://blog.logrocket.com/test-debug-android-apps-with-charles-web-proxy/) HTTP 프록시로 Charles 를 사용하기 위해 iOS, Android 모바일 기기를 설정하는 방법은 다음과 같습니다. > 그 전에 PC 에서 Charles 설치 및 환경설정이 필요합니다. 간단한 Charles 설정

Testmap 으로 테스트하기 (feat. FigJam)
안녕하세요, QA 엔지니어 Hardin 입니다. 더 효율적으로 QA 할 수 없을까? 저는 얼마 전부터 짧은 주기로 진행되는 스프린트에서 QA 엔지니어가 어떻게 하면, 빠르고 효과적으로 QA 활동을 할 수 있을까? 에 대한 고민에 빠졌습니다. Agile 개발 환경에서 QA 활동을 하면서 서로 다른 산출물을 만들어내고 거쳐야 할 단계가 많아서, 스프린트 기간이 다소 촉박하게만 느껴졌기 때문입니다. 더군다나 완벽한 QA 활동을 하기 위해 스프린트에서 해낼 수 있는 생산성을 저하시키고 싶지 않았습니다. 참고로, 스프린트 내 진행하고 있는 주요 QA 활동은 다음과 같습니다. 기획서, 디자인 리뷰 > Notion QA & 배포 일정 확인 > Notion 테스트 환경 확인 > Xmind Mind-mapping 으로 테스트 커버리지 파악 > Xmind Testcase 작성 & 리뷰 *> Zephyr Scale

QA == Tester?
시작에 앞서 > 이 글은 저의 주관적인 입장이고 기록입니다. 다른 or 틀린 내용들의 피드백은 언제나 감사합니다! QA가 뭐야? QA 란 'Quality Assurance' : '품질보증' 이라고 이야기 한다. 솔직히 주변에서 "넌 무슨일 해?" 라고 물을때가 나는 굉장히 난처하다. "QA 라고 제품을 개발 할 때 문제없이 제품이 출시 될 수 있도록 도움을 주는 업무야"* 라며 나름대로 상대방이 이해 할 수 있게 풀어서 대답하지만 10명중 5명 이상은 "아~ 테스트 하는 업무구나!"* 라는 답이 돌아온다. 솔직히 말하자면 나는 아직 이제 갓 시작한 주니어 QA, 아니 TE라고 정의하는게 맞다. 하지만 스스로 QA라는 직무를 알아가고 공부하며 느낀 바로는 QA 는 테스터가 아니라고 생각한다. QA라는 직군 안에 테스트 업무가 있고 중요시 하지만