"소프트웨어 테스팅 마이크로소프트에선 이렇게 한다" 의 저자 BJ Rollison
 
Introduction to More Effective Test Automation:
Automated Test Design in C# for Beginning Programmers -by BJ Rollison
마이크로소프트 Top 테스트 아키텍트가 보는 MS의 실무적 테스트 자동화 (C#이용)
 
튜토리얼 요약  Summary of Tutorial
테스트 자동화는 테스트의 효율성과 신뢰성을 위해 꼭 필요한 방법 중 하나입니다. 하지만 많은
테스터들이 테스트 자동화를 위한 프로그래밍 배경 지식이 부족합니다. 이 과정에서는 프로그래밍
배경이 없는 테스터를 대상으로 C# 프로그래밍 언어를 사용하는 간단한 자동화의 GUI 테스트를
작성하는 것이 얼마나 쉬운 것인지 보여주게 됩니다. 손쉽게 윈도우 어플리케이션의 GUI 테스트를
자동화하기 위해 C# 언어를 사용하는 방법과 이에 관련된 다양한 기초를 배울 수 있습니다.
 
개요  Course of Overview
  • C# 프로그래밍 언어를 사용하는 간단한 자동화의 GUI 테스트 작성 방법 습득
  • C# 프로그래밍 언어의 기초, 프리웨어와 함께 자동화된 테스트를 작성하기 위한 C# 사용법 학습
  • 테스트 중인 윈도우 어플리케이션(AUT)을 실행하는 방법 학습
  • AUT 메뉴와 컨트롤을 조작, 확인하고 결과를 로그데이터로 적용하는 방법을 학습
  • 고급 토픽에는 AUT의 고급 제어를 위한 윈도우 API 마샬링이 포함되며 또한 자동화와
    자동화 프레임워크 개발을 위한 기본 전략을 학습
튜토리얼 대상  Suggested Attendees
프로그래밍 사용 배경 지식이 부족하거나 매뉴얼 테스트디자인 혹은 기록/재생 자동화는 경험이
있지만 프로그램 언어로 테스트 개발을 해본 적이 없는 테스터, 윈도우 애플리케이션을 테스트하기 위해
C#을 이용한 자동화 테스트가 익숙치 않은 테스터
 
※ C#실습은 해당 언어을 반드시 알고 있지 않아도 실습 참여 가능
   주로 시스템 테스트를 위주로 진행
 
커리큘럼  Curriculum
 
[Day 1] Programming concepts
Session
Contents
Instructional Method
Session 1
10:00 ~ 10:50
Overview of .NET and the Visual Studio integrated development environment (IDE)
This is a hands-on lab and requires a laptop computer with Visual Studio or Visual Studio Express
Session 2
11:00 ~ 11:50
Data types and operators
Session 3
12:00 ~ 12:50
Branching structures
Lunch
Session 4
14:00 ~ 14:50
Looping structures
This is a hands-on lab and requires a laptop computer with Visual Studio or Visual Studio Express
Session 5
15:00 ~ 15:50
Exception handling
Session 6
16:00 ~ 16:50
Creating and calling methods
Session 7
17:00 ~ 17:50
Writing to and reading from files
 
[Day 2] Designing Test Scripts
Session
Contents
Instructional Method
Session 1
10:00 ~ 10:50
Data driven testing
This is a hands-on lab and requires a laptop computer with Visual Studio or Visual Studio Express
Session 2
11:00 ~ 11:50
Data driven testing
Session 3
12:00 ~ 12:50
Launching and closing Win32 AUT
Lunch
Session 4
14:00 ~ 14:50
AUT manipulation using SendKeys
This is a hands-on lab and requires a laptop computer with Visual Studio or Visual Studio Express
Session 5
15:00 ~ 15:50
Random test data generation
Session 6
16:00 ~ 16:50
Invoke and Test Framework basics
Session 7
17:00 ~ 17:50
Design and develop a GUI automated test
 
 
Session 1 : How We Test At Microsoft
 
마이크로소프트는 전 세계에 매년 39개의 언어로 약 300개의 소프트웨어 제품을 출시합니다.
많은 사람들이 “마이크로소프트에서는 소프트웨어를 어떻게 어떤 과정을 거쳐 테스트 합니까?”
라고 물어봅니다. 이에 대한 대답이 간단하지 않고 어려운 것은 마이크로소프트에서는 단일 프로세스
또는 테스트 방법론이 없기 때문입니다. 이 발표에서는 우리의 도전 과제뿐만 아니라 마이크로소프트
내부에서 사용되는 몇 가지 우수사례 그리고 소프트웨어 테스트 직업의 미래에 대한 우리의 전망을
설명하게 됩니다.
 
Session 5 : Agile Testing: Pushing Quality Upstream
 
애자일 수명주기에는 팀 목표, 고객 참여, 지속적인 개선, 기술 우수성과 같은 몇 가지 주요 원칙이
있습니다. 대부분은 이미 이러한 많은 애자일 원칙들을 이해하고 있고 이것은 기술적인 우수함을
가리킵니다. Scott Ambler 는 명확한 목적을 반영하는 높은 품질의 소스코드, 낮은 의존성, 느슨한 결합
그리고 피트니스의 사용으로써 기술적 우수성을 설명합니다. 이들은 모두 개발자의 역할에 초점을 맞추고
있으니 테스터로서는 기술적 우수성을 어떻게 높일 수 있을까요? 많은 팀들이 테스터가 개발의 끝에만
참여하기 보다는 제품의 전체 개발주기에 걸쳐 참여하도록 변화하는 방법론을 적용하고 있습니다.
 
컨퍼런스 요약  Summary of Conference
테스터도 애자일 소프트웨어 개발 방법론의 9번째 원칙에 기여하면서 동시에 개발자가 결함을 예방하고
품질을 높일 수 있는 기술적 우수성을 달성할 수 있도록 지원하는 방법에 초점을 맞추고 있습니다.
 
 
  프로필  Biography
  BJ Rollison은 마이크로소프트(MS)의 Engineering Excellence 그룹의 테스트
아키텍트로 기술과정 커리큘럼을 개발하고 다양한 테스팅 테크닉과 방법론을
가르치고 있습니다. BJ는 1991년에 일본의 OEM 회사에서 중소기업을 위한
커스텀 솔루션(custom solutions)을 구축하는 업무로 커리어를 시작했습니다.

1994년에 그는 MS의 윈도우95 국제팀에 합류한 후, 1996년에 IE4.0과 다양한
웹 클라이언트 제품들을 책임지는 인터넷 부서의 테스트 매니저가 되었습니다.
그는 1999년에 6000명 이상의 마이크로소프트 테스터에 대한 훈련을 기획하고
진행하는 MS 테크니컬 트레이닝 그룹에 책임자로 부임하여 일하고 있습니다.
 
BJ는 워싱턴 대학에서 테스팅 과정을 가르치고 있고 워싱턴 대학, California Extension Santa Cruz 대학,
Lake Washington 기술대학에서 테스팅 인증 프로그램의 자문위원을 맡고 있으며, 여러 국제 소프트웨어
테스팅 컨퍼런스에 자주 초대되는 인기 강연자이기도 합니다.