서버단에 비해 상대적으로 UI는 분석 및 테스트 수행 여부를 파악하기 쉽지 않습니다. 웹 UI의 HTML 또는 XML 형태의 엘리멘트와
다양한 이벤트들을 정적으로 분석하고 이를
1) 테스트 대상으로 활용
2) 개발완료 여부, 표준 준수 여부 등을 검사
3) 개발 완료 이후 변경 부분 히스토리 관리
등으로 활용한 사례를 공유합니다
서버단에 비해 상대적으로 UI는 분석 및 테스트 수행 여부를 파악하기 쉽지 않습니다. 웹 UI의 HTML 또는 XML 형태의 엘리멘트와
다양한 이벤트들을 정적으로 분석하고 이를
1) 테스트 대상으로 활용
2) 개발완료 여부, 표준 준수 여부 등을 검사
3) 개발 완료 이후 변경 부분 히스토리 관리
등으로 활용한 사례를 공유합니다
회사 내부 교육(소개)용으로 만든
현재 팀이 일하고 있는 프로세스를 정리한 자료 - 의료 소프트웨어 제품
- Dev & Test Process(V-Model)
1) Review / Planning
2) Test Execution
3) Other types of Testing
4) Release / Operation
상업적 이용 및 출처없는 무단전재를 금합니다.
애자일과 애자일 테스트 소개 (테스트기본교육 3장 2절)
애자일의 스크럼, XP에 대한 기본적인 소개와 스크럼 팀 안에서 테스트 역할자로써 사용자 스토리 리뷰, 테스트 설계, 짝 테스트, 테스트 자동화 등에 대한 내용을 사례 기반으로 소개하고 있습니다.
jacoco를 이용한 매뉴얼 테스트의 서버사이드 코드 커버리지 측정하기SangIn Choung
종종 관제적인 접근에서 매뉴얼 테스트에 대한 코드 테스트 커버리지를 측정하려는 시도가 있습니다. 이 접근이 맞는지 틀리는지에 대해서 할 말은 많지만 뒤로 미뤄두고, 무료 커버리지 도구인 Jacoco를 이용하여 서버 배포 후 매뉴얼 테스트에 코드 테스트 커버리지 측정 사례를 공유합니다.
서버측만 측정이 됩니다.
UI 테스트는 코드 영역(화이트박스스러운)보다는 명세(블랙박스) 기반의 테스트 목적을 갖는 테스트 유형입니다.
다양한 테스트 접근과 유형을 가져가지 않기 때문에
테스트의 목적과 그 과정, 결과를 제대로 매핑하지 못합니다.
이 테스트 커버리지 측정에 앞서 적절한 테스트 전략과 계획을 세워야 합니다.
회사 내부 교육(소개)용으로 만든
현재 팀이 일하고 있는 프로세스를 정리한 자료 - 의료 소프트웨어 제품
- Dev & Test Process(V-Model)
1) Review / Planning
2) Test Execution
3) Other types of Testing
4) Release / Operation
상업적 이용 및 출처없는 무단전재를 금합니다.
애자일과 애자일 테스트 소개 (테스트기본교육 3장 2절)
애자일의 스크럼, XP에 대한 기본적인 소개와 스크럼 팀 안에서 테스트 역할자로써 사용자 스토리 리뷰, 테스트 설계, 짝 테스트, 테스트 자동화 등에 대한 내용을 사례 기반으로 소개하고 있습니다.
jacoco를 이용한 매뉴얼 테스트의 서버사이드 코드 커버리지 측정하기SangIn Choung
종종 관제적인 접근에서 매뉴얼 테스트에 대한 코드 테스트 커버리지를 측정하려는 시도가 있습니다. 이 접근이 맞는지 틀리는지에 대해서 할 말은 많지만 뒤로 미뤄두고, 무료 커버리지 도구인 Jacoco를 이용하여 서버 배포 후 매뉴얼 테스트에 코드 테스트 커버리지 측정 사례를 공유합니다.
서버측만 측정이 됩니다.
UI 테스트는 코드 영역(화이트박스스러운)보다는 명세(블랙박스) 기반의 테스트 목적을 갖는 테스트 유형입니다.
다양한 테스트 접근과 유형을 가져가지 않기 때문에
테스트의 목적과 그 과정, 결과를 제대로 매핑하지 못합니다.
이 테스트 커버리지 측정에 앞서 적절한 테스트 전략과 계획을 세워야 합니다.
AgitarOne은 Java로 개발중인 Eclipse 프로젝트에 자동화된 단위 테스트의 환경을 제공하여 테스트 시간을 대폭 단축 시켜 개발 비용을 절감하게 하며, 작성된 소스 코드들이 실질적으로 수행되는지 명확히 파악할 수 있도록 하여 소스 코드의 품질을 향상시켜 줄 수 있는 Java 개발자의 단위 테스트 자동화 솔루션 입니다.
개념 위주인 Basic 내용에 이어 '애완동물(spring-petclinic)' 어플리케이션 코드 대상으로 실제 테스트 코드를 작성하고 커버리지를 측정하는 교육입니다. 명세로부터 테스트를 도출하는 블랙박스 테스트 접근 이후, 코드 커버리지 정보로부터 추가 테스트를 작성하는 화이트박스 기법을 차례로 적용하고 있습니다
When develpment met test(shift left testing)SangIn Choung
Sharing my thoughts and cases about co-work with test and developemnt. Two big approaches.
One is Engineering approach (
1. Early testing education
2. Test design
3. Test code guide
4. Pair-testing, programming
5. Test-Automation),
Second is Strategic activities (
1. Test Strategy/Plan
2. Test analysis/report)
Also, I wanted to mention tester's various career paths.
Thank you.
3. 제 총알들? - https://www.slideshare.net/genycho
. W프로젝트 수행사례
. 1인 QA로 현장에서 일하는 6가지 접근법
. 개발과 테스트가 같이 했을 때 이점
. REST API 테스트의 모든 것
. GUI 정적 분석 툴(UITCGen) 소개와 활용사례
. 단위테스트(Junit) 및 테스트 케이스 작성 팁
. 크로스(멀티)브라우저 테스트 수행 가이드
. 테스트엔지니어를 위한 기본교육(테스트 설계, 개발지식, 자동화 편)
. 오픈 스펙을 대상으로 한 테스트 설계 사례
. 테스트 개선 지원 사례
. Mockito, PowerMock을 이용한 IoT 단위테스트 접근 사례
. 애자일에서의 테스트 수행 사례
4. 일반적인 소프트웨어 XX 개선 접근
(1) 조직과 프로세스에 대한 개선 (2) 엔지니어링 관점 개선
의외로 개선하기 쉽고, 효과가 크다
추가 공수가 크지 않다
생각과 달리 잘 안 바뀐다.
추가 공수가 많이 들어가는 편이다
“개발” 관점의 (짂단 및)개선
: 소프트웨어 공학,CMMi
“테스트” 관점의 (짂단 및)개선
: 소프트웨어 공학,CMMi
비즈니스(업무)적, 아키텍처적
테스트 엔지니어링 개선 접근
5. “예를 들면, STA 컨설팅이라는…”
“테스트” 관점의 (짂단 및)개선
: 소프트웨어 공학,CMMi
http://www.sten.or.kr
6. “예젂에 약식으로 했던 사례도…”
https://www.slideshare.net/genycho/ss-63831702 1/6
12. 고민하고 계시는 부분?
“저희 회사에서는 XX 분야의 해석을 하기 위핚 (1)모델 생성, (2)모델링 된 시
스템 해석, (3)해석 결과의 분석 등의 세 가지 프로그램으로 구성되며 각각의
프로그램은 파일을 이용하여 서로 데이터를 젂달합니다.
(1)모델 생성을 위핚 젂처리기 프로그램과
(3)해석 결과 분석을 위핚 후처리기 프로그램은 일반적인 Windows 응용 프로
그램이며 (2)시스템 해석용 프로그램은 입력 모델을 파일로 입력받으면 모델
데이터 안에 정의되어 있는 해석을 실행하여 결과 파일을 생성하는 프로그램
입니다.
테스트 프로세스를 도입하고자 하는 프로그램은 젂처리기와 후처리기, 특히 젂
처리기 프로그램의 안정성 확보와 기능 테스트를 위핚 프로세스를 구축하고자
합니다.
젂처리기와 후처리기 두 프로그램은 일반적은 모델-뷰-컨트롤 구조를 가지는
프로그램입니다.”
13. 개선 접근 젂략 2가지
테스트의 실행
(자동화 구축)
자동수행
환경 구축
무언가에 대한
테스트 코드를
작성하는 것
작성한 테스트 코드를
쉽게(자동으로) 실행하고
모니터링 하고 보고받는 것
14. 제품명 : <>
제품의 목적 : XX 분야의 해석
모델 생성 모델 해석 결과 분석
GUI
::윈도우프로그래밍(MFC?,
WPF?)
코어모듈
입력모델
GUI
::윈도우프로그래밍(MFC?,
WPF?)
해석
결과파일
코어모듈::해석모듈 코어모듈::결과 분석모듈
제품 아키텍처의 이해
16. MVC에서의 레벨별 테스트 접근
View
Controller
Model
사용자 인터페이스 데이터 모델,
비즈니스 로직(?)
사용자 인터페이스와
비즈니스 로직갂의 연동
Model
Controller
View
단위테스트 목적 : 비즈니스 로직과 모델이 의도핚 대로
동작하는지 검증
단위테스트 목적 : 뷰의 요청을 적젃히 모델에 잘
젂달하는지, 모델의 변경 사항을 뷰에 잘 젂달하는지
단위테스트 목적 : 사용자의 입력을 받아 콘트롤러에
잘 젂달하는지, 콘트롤러의 응답을 잘 보여주는지
통합 테스트
: 젂체가 통합되어
잘 동작하는지 검증
M
V
C
17. 테스트 방법
단위테스트
API 테스트?
GUI 테스트
각 개발 언어별 xUnit 지원 도구들이 존재
(예)
Java – Junit, TestNG,
C,C++ - Cunit, CPPUnit, GoogleTest, VisualStudio Test,
……
각 단위기능들을 의미있는 단위로 묶어 제공하는 기능 API에 대핚
테스트
(예)
HTTP/RestAPI : RestAssured, SOAP UI,
개발언어별 API : 각 개발언어별로 단위테스트와 동일핚 방식 사용
사용자 인터페이스 레벨에서의 테스트를 자동화
(예)
웹 : Selenium, UFT(HP)
윈도우 프로그래밍 : UFT(HP), AutoIT, CodedUI(MS),
모바일 : Appium, ……
18. 상세한 테스트 방법 - 단위테스트
Java에서의 단위테스트 방식,
일반적으로 발생하는 이슈에 대핚 해결 사례
C,C++,C#에서의 코드레벨 테스트 방법
(Visual Studio인 경우 – 내장기능 사용,
아닌 경우 - GoogleTest )
별도자료
웹 검색 자료
상세한 테스트 방법 - GUI테스트
웹 검색 자료선정핚 툴에 따라 차이가 큼