소프트웨어 버그를 찾기 위한 18가지 공격
버그를 우연히 찾는 것은 바보라도 할 수 있는 일이다. 테스터가 된다는 것은 버그를 효율적으로 찾는 것을 의미한다. 그러기 위해서는 1) 모든 테스트 케이스에 대한 명확한 목표를 설정해야 하고, 2) 버그가 어디에 숨어 있을지에 대한 이해가 …
버그를 우연히 찾는 것은 바보라도 할 수 있는 일이다. 테스터가 된다는 것은 버그를 효율적으로 찾는 것을 의미한다. 그러기 위해서는 1) 모든 테스트 케이스에 대한 명확한 목표를 설정해야 하고, 2) 버그가 어디에 숨어 있을지에 대한 이해가 …
뮤테이션 테스팅(Mutation Testing) 뮤테이션 테스팅 절차 1) 원본 프로그램을 일정한 변경 규칙에 따라 변경하여 여러 변형된 프로그램 버전을 생성한다. 원본 프로그램의 구문(syntax)을 변경하는 사전 정의된 변경 규칙은 ‘뮤테이션 오퍼레이터(Mutation operator)’라고 하며, 뮤테이션 오퍼레이터를 적용하여 …
좋은 테스트 데이터의 중요성 좋은 테스트 데이터의 성질 테스트 데이터 요구사항 개발 앞에서 왜 좋은 테스트 데이터가 테스트 노력의 중요한 한 부분인가가 설명되었고, 이제는 특정 테스트 노력을 위한 좋은(고품질) 데이터를 어떻게 정할지에 …
테스트 데이터 관리의 필요성 테스트 데이터 관리 테스트 데이터 관리 프로젝트의 목적 1. 데이터 프라이버시 향상 2. 테스팅 최적화(테스팅을 더 효율적으로 만듬) 적절한 테스트 실행, 반복가능한 테스트, 효율적인 테스트 데이터 공급을 보장하는 것이 테스트 …
테스트 데이터 관리 왜 테스트 데이터를 관리할 필요가 있는가? ① 테스터가 애플리케이션을 테스팅하는 것보다 테스트 데이터를 준비하는데 더 많은 시간을 빼앗김 ② 요구되는 테스트 데이터를 제공하는데 있어 테스터가 비즈니스 분석가(Business Analysts)에게 크게 …
유스케이스의 본질 유스케이스와 테스팅 유스케이스 예 유스케이스명: 제품 선택하기 유스케이스 기술: 이 유스케이스가 신규 품목(a line item)을 추가하고 주문할 제품을 선택함으로써 발주서(a purchase order: PO)를 작성함. PO가 여러 품목을 포함할 수 있으며, …
관계형 데이터베이스에 저장된 데이터에 접근하는 데 쓰이는 SQL 쿼리를 테스트하기 위한 가이드라인을 제안한 자료(MC/DC 커버리지나 카테고리 분할 같은 기존의 잘 알려진 테스팅 기법을 SQL에 적용함). 제안하는 가이드라인을 설명하기 위해 간단한 데이터 모델과 SQL 쿼리(버그가 포함된 쿼리)를 …
High Integrity C++ (HIC++ 또는 HICPP) HIC++ 준수를 체킹하는 자동 도구 HIC++ 버전 4.0 아래에 주요 규칙의 헤딩만 한글로 나열함. 각각의 상세한 설명과 코드 예는 출처에 나온 웹 사이트 참조 1 일반(General) 1.1 구현 준수(Implementation compliance) 1.1.1 코드가 2011 ISO …
Jenkins는 CI/CD, 즉 지속적인 통합 및 지속적인 배포를 위한 강력한 도구입니다. Mac에서 Jenkins 서버를 구축하는 것이 일반적이지만 이 기사에서는 Jenkins가 Windows 환경에서 실행되도록 하는 단계를 설명하겠습니다. Jenkins를 위해 Windows를 선택하는 …
0. 소프트웨어 개발 단계 별 산출물들 1. 요구사항 분석(Requirement Analysis) 요구사항 분석 기법 요구사항 분석 기법은 개발 대상에 대한 사용자의 요구사항 중 명확하지 않거나 모호한 부분을 걸러내기 위한 방법 2. …