Visual Studio 2012를 통한 Windows 8 앱 테스트

Windows 8 앱 개발자 블로그

Windows 8 엔지니어링 팀에서 제공하는 Windows 8용 Metro 스타일 앱 개발의 이해

Visual Studio 2012를 통한 Windows 8 앱 테스트

  • Comments 0

Microsoft는 Windows 8의 운영 체제 플랫폼을 혁신하기 위한 노력을 가속화하는 한편 개발자들이 Windows 8 앱을 보다 효과적으로 테스트할 수 있도록 Visual Studio의 도구 세트를 개선했습니다. 개발자들이 이 새로운 현대식 OS 환경에서 세심한 디자인을 통해 최고 수준의 앱을 개발하고 철저하게 테스트한다면 큰 성공을 거둘 수 있을 것입니다. 이전에 작성한 Windows 8에서 Metro 스타일 앱을 테스트하는 방법이라는 글에서는 뛰어난 Windows 8 앱을 개발하기 위해 개발자들이 고려해야 할 핵심 영역을 집중적으로 설명했습니다. 이 글에서는 앱에 대한 테스트 및 검증을 보다 간편하게 수행할 수 있는 Visual Studio 2012의 몇 가지 기능에 대해 살펴보겠습니다.

Windows 8 장치에서 내 앱이 어떻게 표시되나요?

앱의 성공 여부는 사용자에게 제공하는 가치에 달려 있습니다. Windows 8 디자인 지침에 따라 멋진 스타일과 감성 경험을 제공한다면 최종 사용자의 마음을 사로잡을 수 있습니다. 개발자가 실제 장치에 대한 의존도를 낮추고 앱의 사용자 경험을 검증할 수 있도록 Visual Studio 2012에서는 시뮬레이터를 제공합니다. 따라서 개발자는 개발 과정 내내 태블릿 장치에 연결할 필요가 없습니다. 또한 이 시뮬레이터를 사용하면 테스트에 필요한 모든 폼 팩터의 실제 장치를 준비하지 않아도 됩니다. 이 시뮬레이터는 마우스 클릭 몇 번으로 앱의 외관과 느낌을 신속하고 간편하게 검증할 수 있으므로 다음과 같은 영역을 테스트할 때 편리합니다.

Windows 8 시작 화면을 표시하는 Visual Studio 시뮬레이터그림 1. Windows 8 시작 화면을 표시하는 Visual Studio 시뮬레이터입니다.

Windows 8 앱은 다양한 폼 팩터의 장치에서 실행됩니다. 다양한 화면 크기와 해상도에서 앱 동작을 테스트할 수 있도록 Visual Studio 시뮬레이터는 최소 지원 해상도부터 27인치 데스크톱 모니터까지 지원하는 가장 일반적인 2팩터 조합 7개를 제공합니다. 그림 1은 해상도 1366x768(기본), 화면 크기 10.6인치에서 Windows 8 시작 화면을 표시한 시뮬레이터입니다. 가장 먼저 더 낮은 해상도에서 앱 레이아웃이 잘리거나 가로 또는 세로 방향으로 잘못 배치되어 있는지를 확인해야 합니다. 또한 더 높은 해상도에서 공백이 지나치게 많은지도 확인해야 합니다. 앱 레이아웃이 화면 너머까지 확장되는 경우에는 사용자가 마우스를 사용하여 앱을 조작하면 스크롤 막대가 적절하게 나타납니다. 이러한 작업은 시뮬레이터에서 시뮬레이션 해상도를 즉각적으로 변경하여 앱 동작을 시각적으로 확인할 수 있는 간편한 앱 검증 작업의 예입니다.

고정 레이아웃을 사용하는 앱의 경우 대형 화면의 크기에 맞게 앱이 올바르게 확장/축소되는지 테스트하고, 모든 시각적 요소가 적절하게 확장/축소되는지 확인해야 합니다. 자동 조정 레이아웃을 사용하는 앱의 경우 이 시뮬레이터를 사용하여 화면 크기 또는 해상도가 변경되면 개발자의 의도대로 앱의 시각적 요소가 동적으로 재배열되는지 신속하게 확인할 수 있습니다.

이 시뮬레이터를 회전하거나 밀어서 사용자가 화면 방향을 변경할 때 앱이 어떻게 작동하는지도 확인할 수 있습니다. 이는 앱이 세로 모드 및 가로 모드에 올바르게 최적화되는지 테스트할 때 매우 편리한 기능입니다. 이 시뮬레이터는 기울기 같은 가속도계 감지 기능을 하나도 빠짐 없이 시뮬레이션할 수는 없기 때문에 실제 장치에서 앱을 전체적으로 확인해야 합니다. 하지만 디스플레이 장치의 방향을 변경할 때 앱에서 발생 가능한 잠재적 문제를 확인할 수 있으므로 많은 시간이 절약됩니다.

Windows 8 장치에서 내 앱이 터치에 어떻게 응답하나요?

마우스를 사용하거나 개발용 컴퓨터에서 시뮬레이션된 터치를 사용하여 시뮬레이터로 앱을 조작할 수 있습니다. 후자의 경우 테스트용 터치 지원 장치가 없을 때 특히 유용합니다. 이 시뮬레이터는 살짝 밀기, 손가락을 모으고 벌려 확대/축소 및 회전 동작을 모두 지원합니다.

일반적으로 개발자들은 Visual Studio 내에서 디버깅 작업을 통해 바로 시뮬레이터에서 앱을 시작합니다. 앱이 시작된 후에도 시뮬레이터가 계속 실행되므로 개발자는 디버깅 컨텍스트 밖에서도 앱을 테스트할 수 있습니다. 예를 들어 사용자가 앱의 타일을 탭할 때 활성화 동작을 보거나 화면을 위에서 아래로 살짝 밀 때 동작을 종료할 수 있습니다. 개발자는 시뮬레이터에서 제공하는 터치 제스처를 활용하여 이러한 작업과 모든 터치 관련 테스트 및 검증 작업을 수행할 수 있습니다. Windows 8의 Metro 스타일 앱 테스트에는 터치 관련 테스트 고려 사항이 자세하게 나와 있습니다. 해당 글의 터치 단원을 참조하시기 바랍니다. 터치 에뮬레이션과 같은 Visual Studio 시뮬레이터의 기능에 대한 자세한 내용은 시뮬레이터에서 Windows Metro 스타일 앱 실행을 참조하세요.

Windows 8 앱 단위 테스트

코드를 단위 테스트하는 기능은 모든 개발 과정에서 매우 중요한 부분입니다. Visual Studio는 여러 버전에 걸쳐 단위 테스트를 지원하고 있습니다. Visual Studio 2012에서는 새로운 단위 테스트 탐색기를 통해 사용자 경험을 간소화했으며, 기본 단위 테스트 프레임워크와 관계없이 확장 가능한 Test Runner가 개발되었습니다. 이제 개발자는 NUnit, XUnit, MbUnit 등의 자주 사용하는 단위 테스트 프레임워크를 연결할 수도 있고 MSTest를 계속 사용할 수도 있습니다.

Visual Studio 2012의 새로운 프로젝트 대화 상자  그림 2. C#으로 작성한 앱의 단위 테스트 라이브러리 프로젝트를 위한 템플릿이 표시된 Visual Studio 2012의 새로운 프로젝트 대화 상자
입니다.

C#, VB.net 또는 C++로 작성된 Windows 8 앱의 경우 이제 Visual Studio에서는 데스크톱 앱 개발과 동일한 작업 흐름을 따르는 단위 테스트 라이브러리 프로젝트를 제공합니다(그림 2 참조). 개발자는 개선된 기능과 익숙한 기존 기능을 사용할 수 있습니다. 좀 더 자세히 알아보자면, 단위 테스트 지원은 앱 컨테이너 모델에서 테스트 실행을 처리하고 모든 복잡성을 무시합니다. 단위 테스트 프로젝트에는 고유의 appxmanifest 파일이 있습니다. 이는 위치 서비스 또는 인터넷 액세스를 처리하는 코드를 테스트하는 등의 경우에 유용합니다. 테스트를 실행하려면 개발자는 그림 3과 같이 매니페스트 파일을 편집하여 앱 요구 사항과 일치하는 기능을 지정해야 합니다. 또는 테스트 중인 코드 경로의 일부에 기능이 필요하지 않을 경우 그러한 테스트 사례를 별도의 단위 테스트 프로젝트에 그룹화하여 코드 경로에서 기능을 제외하면 코드 모듈화 작업이 개선됩니다.

패키지 매니페스트그림 3. Manifest Designer에서 열려 있는 단위 테스트 프로젝트의 Package.appxmanifest 파일입니다. 

우리는 지속적으로 우수한 서비스를 제공하기 위해 기존 기능을 개선하고 Visual Studio 2012 Express for Windows 8을 포함한 Visual Studio 2012의 모든 SKU에서 사용 가능한 새로운 기능을 단위 테스트에 추가했습니다. 자세한 내용 또는 Windows 8 앱을 효과적으로 단위 테스트하는 방법은 //Build 컨퍼런스의 Windows Metro 스타일 앱에 단위 테스트를 만들어서 실행하기단위 테스트 이야기를 참조하시기 바랍니다.

Windows 8 앱 사전 테스트

Windows 8 앱은 개인 고객과 기업 고객을 모두 만족시킬 수 있도록 설계되었습니다. 기업 환경에서 앱으로 작업을 수행하고 구조화된 개발 및 테스트 프로세스에 익숙한 개발자를 위해 Visual Studio 2012에서는 수동 테스트 도구인 Microsoft Test Manager를 제공합니다. Visual Studio용 원격 도구와 결합된 Microsoft Test Manager를 사용하면 모든 유형의 Windows 8 장치에서 앱 기능에 대한 사전 테스트 및 구조화된 수동 테스트를 수행할 수 있습니다. Microsoft Test Manager는 Visual Studio PremiumUltimate SKUTest Professional SKU에 포함되어 있습니다. Visual Studio 2012의 수동 테스트 도구는 TFS와 완벽하게 통합되어 버그 정리와 테스트 기록 관리가 간편할 뿐만 아니라 원격 장치로 간단하게 앱을 테스트할 수도 있습니다. 앱 테스트 중에 버그를 발견하면 도구를 사용하여 원격 장치에서 스크린샷, 작업 로그 그리고 이벤트 로그까지 캡처할 수 있습니다. 또한 메인 워크스테이션과 연결된 장치 간에 양방향 통신을 제공함으로써 앱 패키지의 개발 단계에서 대상 테스트 장치, 장치의 개발자 라이선스 획득 및 테스트 단계 실행까지 안내합니다.

TFS와 통합된 수동 테스트 도구를 사용하면 팀 환경에서 앱의 테스트와 개발 간의 유기적인 협업이 가능합니다. 예를 들어 탐색 과정에서 캡처한 정보는 버그를 줄이고 특성을 이해하는 데 도움이 됩니다. 버그가 수정되거나 기능이 향상된 새로운 앱 패키지가 개발되면 같은 Windows 8 테스트 장치에 간단하게 배포하여 수동 테스트 도구 내에서 보다 정밀하게 검증할 수 있습니다.

자세한 내용은 Visual Studio 11 Beta: Windows Metro 스타일 앱 수동 테스트를 참조하시기 바랍니다. Windows 8 Metro 스타일 앱 수동 테스트에 자세한 단계가 설명되어 있습니다.

결론

Windows 8은 개발자와 사용자 모두를 위한 놀라운 플랫폼입니다. 지금까지 Windows 8 앱을 테스트하는 데 바로 사용할 수 있는 Visual Studio 2012에 포함된 도구에 대해 소개했습니다. 이러한 정보가 여러분에게 많은 도움이 되기를 바랍니다. 피드백을 보내 주시면 보다 편리한 개발 환경을 제공하기 위해 적극 반영하겠습니다. 또한 앱 테스트와 관련된 커뮤니티 팁, 아이디어, 개인적 경험 등을 댓글로 올려 주시고 함께 공유할 수 있기를 바랍니다.

- Visual Studio 테스트 책임자, Rui Sun

- Visual Studio SDET, Andre Hamilton

이 블로그 글을 작성하는 데 도움을 준 Ashwin Needamangala, Mete Goktepe, Jake Sabulsky, Jason Olson, Art Becker, Raul Gonzalez Tovar, Peter Provost, Mathew Aniyan, Anutthara Bharadwaj에게 특히 감사드립니다.

  • Loading...
Leave a Comment
  • Please add 6 and 1 and type the answer here:
  • Post