티스토리 뷰
<참조> https://azuredevopslabs.com/labs/azuredevops/testmanagement/
이번 글에서는 Azure Test Plans를 사용하여 테스트를 계획하고 관리하는 방법에 대해 살펴 보고자 한다. 이 랩은 전체 2개의 실습으로 이루어져 있는데, 본문의 내용이 2018년 9월 6일 마지막 업데이트가 이루어 져서 현재와는 그 내용이 다소 상이하다. 특히 UI 부분이 상이하여 내용을 검토 및 작성하는데 평상시 대비 많은 시간이 소요되었기에 먼저 실습1을 정리한다. |
개요
이번 랩에서는, Azure DevOps를 사용하여 프로젝트의 테스트 생명주기를 관리하는 방법에 대해 배울 것이다. 이 프로젝트는 소프트웨어 마일즈스톤을 효율적으로 검증하도록 설계된 테스트 계획의 작성 과정을 안내할 것이다. 또한 각 릴리즈 과정 동안 일관적으로 재현될 수 있는 수동 테스트를 만들고 실행할 것이다.
선행 조건
- 이 랩을 진행하기 위해서는 전제조건 지침에서 과제1과 2를 완료해야 한다.
실습 1: 테스트 계획(plans), 세트(suits) 및 케이스(cases) 이해하기
이번 실습에서는, 테스트 계획, 테스트 세트 및 테스트 케이스를 만들고 관리하는 방법을 배울 것이다.
과제 1: 테스트 계획, 세트 및 케이스 이해하기
1, Azure DevOps에서 팀 프로젝트로 이동한다.
2. Test Plans을 선택하여 Test Hub로 이동한다. 테스트 허브는 모든 테스트 계획, 실행 및 분석을 위한 중앙 위치를 제공한다.
3. 일반적으로, 프로젝트 내 모든 주요한 마일즈스톤에는 자체의 test plan(테스트 계획)이 있어야 한다. 각 테스트 계획에는 기능 구현 또는 버그 수정과 같은 작업 항목을 검증하도록 설계된 test cases(테스트 케이스) (그리고 선택적으로 다른 테스트 세트)의 집합인 test suites(테스트 세트)이 있다. 각 테스트 케이스는 특정 동작을 확인하도록 설계되었으며 하나 이상의 테스트 세트에 속할 수 있다. Parts Unlimited 프로젝트는 하나의 테스트 계획을 가지며, Parts Unlimited Team에 위치하며 Parts Unlimited_TestPlan1.이라고 부른다. Parts Unlimited_TestPlan1 테스트 계획을 선택한다.
4. 스토리 As a customer, I would like to store my credit card details securely를 위한 테스트 집합을 선택한다. 이 테스트 집합은 기능이 되는 해당 작업 항목에 초점을 맞춘다. 랩에 대한 데모 데이터를 생성 할 때마다 작업 항목 번호가 달라짐에 주의한다.
5. 오른쪽에서 이 테스트 집합이 기능 구현에 대한 예상 동작을 확인하도록 설계된 세 가지 테스트 케이스를 가지고 있음을 알 수 있다. Verify that user is allowed to save his credit card detail 테스트 케이스를 더블 클릭한다.
6. 이 대화 상자는이 테스트 케이스에 필요한 모든 정보를 제공한다. 관련 작업 패널을 찾아 이 테스트 케이스가 속한 세트에 연결되어 있는지 확인한다. 작업 항목을 클릭하여 탐색한다.
7. 테스트 세트에서, 테스트 케이스가 되는 연결된 모든 작업 항목을 확인할 수 있다.
8. 그러나, 아직 테스트하도록 설계된 기능과 연결되어 있지 않으며, 이제 연결할 수 있다. Add link | Existing item를 클릭한다.
9. Link type을 Parent로 설정하고 “credit card”룰 검색한다.
10. Credit Card Purchase에 대한 Feature을 선택한다.
11. OK를 클릭한다.
12. 부모(Parent) 기능은 이제 기능을 테스트하는 세트와 연결되며 누구나 연결된 다른 작업 항목에 대한 그것들의 관계를 보기 위해 기능 간을 탐색 할 수 있다.
13. Save & Close를 클릭한다.
14. 원래 테스트 케이스 대화 상자를 닫는다.
과제 2 : 테스트 관리하기
1. 때로는 효율성을 극대화하기 위해 일련의 테스트 케이스를 특정 순서로 실행해야 한다. Order tests를 클릭하여 이러한 테스트 케이스가 실행되어져야 할 순서를 지정한다. (UI가 업데이트 되어 해당 화면이 없는 듯 하다.)
2. 이러한 테스트 케이스는 동작을 확인하기 위해 별도로 실행될 수 있지만, 유효하지 않은 카드를 먼저 거부하는 테스트 케이스를 실행하는 것이 더 합리적이다. 그런 다음 테스터는 유효한 카드를 저장할 수 있는지 확인한 다음 저장된 카드를 편집하기 위한 테스트 케이스를 확인할 수 있다. 두 번째 테스트 케이스를 첫 번째 테스트 케이스 위로 끌어서 놓고 Done을 클릭한다. ((Define 탭에서 작업을 수행하여야 하며, UI가 업데이트 되어 Done을 클릭은 불필요 한 듯 하다.)
3. 이제 Order가 업데이트 되었고 목록이 정렬되어 있음을 알 수 있다. (Execute 탭에서 결과를 확인한다.)
4. 테스트의 또 다른 중요한 측면은 각 테스트가 실행되는 환경과 관련이 있다. 이 웹 앱의 경우 브라우저와 운영 체제가 주요 고려 사항이다. 현재 모든 테스트는 Windows 10이라는 하나의 구성만 사용한다.
5. Configurations 탭을 선택한다.
6. Windows 10에는 기존 구성이 하나 있다. 각 테스트 구성에는 사용자 정의 가능한 Configuration variables(구성 변수) 세트뿐만 아니라 이름과 설명이 포함된다. 이 프로젝트에는 Operating System에 대해 설정된 하나의 구성 변수가 있습니다. 각각에 대해 더 많은 항목을 쉽게 추가하거나 사용 가능한 항목을 편집 할 수 있다. Add configuration variable를 클릭한다.
7. Browser 변수를 선택하고 그것을 Microsoft Edge로 설정한다.
8. Save를 클릭하여 구성을 저장한다.
9. 테스트팀이 iPhone X를 구입하여 테스트 매트릭스에 추가하려고 한다고 가정 해보자. 테스트 환경에서 지정할 수 있도록 이 환경을 새로운 구성으로 등록하는 것은 정말 쉽다. 그러나 추가하기 전에 iOS 10 용 Operating System이 필요하다. Operating System 구성 변수를 클릭한다.
10. Add new value 를 클릭하고 iOS 12에 대한 항목을추가한다.
11. Save를 클릭한다.
12. 이제 iPhone X를 추가하는 데 필요한 모든 것을 갖추었다. Add 드롭 다운을 클릭하고 New test configuration을 선택한다.
13. Name을 “iPhone X”로 설정한다.
14. Add configuration variable를 두 번 클릭하고 Browser를 Safari 그리고 Operating System를 iOS 12.로 설정한다.
15. Save를 클릭하여 새로운 구성을 저장한다.
16. Test Plans 탭으로 돌아 간다.
17. 지금까지 작업한 테스트 세트 옆의 드롭 다운을 클릭하고 Assign configurations을 선택한다.
18. iPhone X 옵션을 확인하고 Save를 클릭한다.
19. 각 테스트 케이스는 iPhone X에 대한 추가 구성으로 복제되었다. 이제 각 환경을 개별적으로 테스트하고 추적 할 수 있다.
과제 3: 테스트 제작하기
1. Parts Unlimited_TestPlan1의 드롭 다운을 확장하여 New Suite > Static suite를 선택하다. 테스트 케이스의 static suite(정적 세트)은 케이스가 수동으로 할당된 세트이다. 공통 요구 사항 (requirement-based suite) 또는 테스트 케이스 및 / 또는 작업 항목 (query-based suite)에 대한 쿼리를 기반으로 세트를 생성할 수도 있다.
2. 새 세트의 이름을 "Shipping tests"로 설정한다. 이 테스트는 모두 배송 관련 기능에 중점을 둔다. 세트 간에 테스트 사례를 쉽게 공유 할 수 있으므로 중복되는 세트가 많을 때 중복성이 최소화 된다.
3. 새로 작성된 세트 옆의 드롭 다운을 펼치고 New Suite | Requirement-based suite를 선택한다.
4. 검색 할 요구 사항을 지정하는데 사용되는 쿼리를 사용자 정의 할 수 있지만 기본값을 그대로두고 Run query를 클릭한다. 운송과 관련된 세 가지 제품 백 로그 항목을 찾아서 선택한다. Create suites을 클릭하여 각각에 대한 테스트 세트를 작성한다.
5. 패키지 상태 추적과 관련된 세트와 같이 새로 작성된 세트 중 하나를 선택한다.
6. 테스트 케이스를 한 번에 하나씩 만들 수 있지만 그리드 레이아웃을 사용하여 여러 테스트 케이스를 빠르게 추가하는 것이 더 쉬운 경우가 있다. 테스트 케이스 패널에서 New Test Case | Add test case using grid를 선택한다.
7. 몇 가지 테스트 사례를 입력하고 모두 Save test case 버튼을 클릭한다. Title은 테스트 케이스의 최종 제목입니다. Step Action은 테스트의 첫 번째 단계 일 것이다. 해당 단계에 예상 결과가 있으면 Step Expected Result로 지정할 수 있다.
8. 선택적으로 그리드보기에서 작업 항목을 계속 추가하고 편집 할 수 있다. 결과에 만족하면 Close Grid를 클릭한다.
9. Execute 탭은 동일한 데이터를 표시하지만 다른보기로 표시된다.
10. 세트를 생성하는 또 다른 옵션은 작업 항목 쿼리를 통하는 것이다. Shipping tests 세트 옆의 드롭 다운을 펼치고 New Suite | Query-based suite를 선택한다.
11. 프로젝트 배송과 관련된 테스트 케이스를 제외하고 테스트 세트를 만들고 싶다고 가정 해 보겠다. Work Item Type을 Microsoft.TestCaseCategory로 변경하여 테스트 케이스를 검색하고 Run query을 클릭한다. 이제 원하는 경우 세트를 작성하도록 선택할 수 있는 테스트 케이스 목록이 있다.
12. 대화 상자를 닫으려면 Cancel 버튼을 누른다.
2편에 계속됨.
'Azure와 함께 하는 DevOps' 카테고리의 다른 글
37. Azure Test Plans로 탐색 테스트 하기 (0) | 2020.06.22 |
---|---|
36. Azure Test Plans로 테스트 계획 및 관리하기 2편 (2) | 2020.06.15 |
34. Azure DevOps 위키를 사용하여 협업하기 (0) | 2020.06.01 |
33. Azure 아티팩트로 패키지 관리 (0) | 2020.05.25 |
32. Azure DevOps를 사용하여 지속적인 전달 채택하기 2편 (0) | 2020.05.18 |