ế

T Use Cases đ n Test Cases

M t yêu c u là gì?

c đ nh nghĩa nh “1 đi u ki n

ượ

ư

ị hay kh năng mà h th ng ph i tuân theo”. ệ ố • M t kh năng đ đ khách hàng hay user gi

• M t yêu c u đ ả ả

ủ ể

i ả

ế

c 1 m c đích. ụ c hay đ

ượ

ả ể ỏ

• S h n ch bu c ph i ch p nh n b i bên th 3

quy t 1 v n đ hay đ t đ ề ạ ượ • M t kh năng ph i đáp ng đ c x lý ộ ượ ử ứ b i h th ng đ th a mãn 1 giao kèo, tiêu chu n, ở ệ ố ẩ , quy t c hay tài li u chính th c khác đ c đ c t ượ ệ ặ ả ch p nh n. ấ ế ự ạ

Use Cases and Actors

• Use Case: mô t ả ổ

ệ ố ộ

hành vi c a h th ng, i d ng chu i hành đ ng. M t usc s ộ ẽ i 1 k t qu có th quan sát c a ể

ế

t c

ấ ả alternate

d ướ ạ mang l ủ ạ giá tr đ n 1 actor. M t use case ch a ị ế basic flow of events và t flows of events liên quan

• Actor: M i actor miêu t

ả ệ ố

1 ai đó hay th ứ ng tác v i ớ

ươ

nào đó bên ngoài h th ng t h th ng.

ệ ố

M c đích c a Use case là gì?

• Đ ch p nh n v i khách hàng và user

ớ ẽ

ậ ấ trong h th ng s làm gì. ệ ố ể ử ụ

• Có th s d ng đ làm đ u vào cho ể

nh ng test case

Use Cases Description

ệ ố

ắ ầ ầ

ệ ố

c cung c p t

Course Catalog System và hi n th danh sách Student

ượ

ệ ố

ấ ừ

danh sách s n có

c cung c p và 2 cua luân phiên t

ượ

• • • • • • • • • • • • •

t b ng bi u đã hoàn thành. M i cua đ

c ch n trên b ng bi u, h th ng ki m tra ể

c cung c p đã đ ấ

ệ ố

ượ

ượ

t.

ế ầ

c ch n và xác th c s l

ệ ố

ể Alternate Flows

ng cho l ch bi u ị

ố ượ

ượ

ị ị

• • • •

, 1

ệ ố

ợ ệ

ế

c 1 c a Basic Flow, Logon, n u h th ng xác đ nh r ng student ID and/hay password là không h p l ủ i đ ỗ ượ

c hi n th ể

• •

ể c đánh d u “ch n” vào l ch

c đánh d u cũng xem nh đ

ể ư ị

ư ượ

ệ ố

ầ ể

• •

ượ

ướ

ế

ế

ữ ế ạ

ệ ố

c hi n th student có th ch n cua khác. Use case ti p t c b

c 4, Select Courses, trong Basic Flow.

ượ

ướ

ỏ ị

• •

c 3 c a Basic Flow, Obtain Course Information, n u h th ng không thành công, 1 thông báo đ

c hi n th ị ể

ệ ố

ượ

ướ

ế

• •

c hi n th , và use case k t

ắ ầ

ượ

ế

Use Case Name: Register For Courses Basic Flow 1. Logon Use case b t đ u khi 1 Student truy xu t vào Wylie University Web site H th ng yêu c u và Student nh p student ID và password 2. Select 'Create a Schedule' H th ng hi n th nh ng ch c năng có th có. Student ch n "Create a Schedule”. ể ứ 3. Obtain Course Information H th ng l y danh sách cua s n có đ 4. Select Courses Student ch n 4 cua chính đ 5. Submit Schedule Student cho bi ỗ ế ả student đã ch n nh ng môn tiên quy t c n thi ế ữ ọ 6. Display Completed Schedule H th ng hi n th l ch bi u ch a nh ng cua cung c p đ ứ ể 1. Unidentified Student Trong b ướ thông báo l 2. Quit Course Registration System cho phép student thoát kh i b t c lúc nào trong use case. Student có th ch n đ l u 1 ỏ ấ ứ c khi thoát. T t c cua không đ ph n c a l ch bi u tr ấ ả ể ủ ị ượ ướ c l u vào h th ng. K t thúc use case. bi u. L ch bi u đ ế ượ ư ị 3. Unfulfilled Prerequisites, Course Full, or Schedule Conflicts Trong b c ch n c 5 c a Basic Flow, Submit Schedule, N u h th ng xác đ nh mà nh ng môn tiên quy t cho cua đ ệ ố mà không th a mãn, nhi u cua, hay l ch bi u có xung đ t, h th ng s không k t n p student vào cua. M t thông báo ộ đ ế ụ 4. Course Catalog System Unavailable Trong b và use case k t thúc. ế 5. Course Registration Closed N u, khi use case b t đ u, nó xác đ nh r ng vi c đăng ký đã thành công, 1 thông báo đ ế thúc

Đ ra tiêu chu n s n sàng đ phát tri n Test cases

• Steps trong use case t

ng đ

ng steps

ươ

ươ

c ướ

• Đánh s duy nh t liên quan đ t ng b • Ph i h p đ u vào c a user và h i đáp

trong Test case ố ố ợ

ế ừ ồ

ệ ố

c ướ

ủ c a h th ng trong t ng b ừ • Activity diagram là n n t ng cho phát sinh ề ả

k ch b n

K ch b n là gì? ả

• K ch b n mô t ả

i đi c th thông c mô t

trong User

ụ ể ả

m t l ả ộ ố qua flow of events đ ượ case ị

• K ch b n là 1 th hi n c a 1 user case ể ệ

Làm sao đ tìm t

t c nh ng k ch b n

ấ ả

Mô t

ả ủ

c a k ch b n ị

Scenario 1

Basic Flow

Scenario 2

Basic Flow

Alternate Flow 1

Scenario 3

Basic Flow

Alternate Flow 1

2

Scenario 4

Basic Flow

Alternate Flow 3

Scenario 5

Basic Flow

Alternate Flow 3

Alternate Flow 1

Scenario 6

Basic Flow

Alternate Flow 3

Alternate Flow 1

2

Scenario 7

Basic Flow

Alternate Flow 4

Scenario 8

Basic Flow

Alternate Flow 3

Alternate Flow 4

Mô t

c a k ch b n (TT)

ả ủ

End use case level 1 End use case level 2 End use case level 3

Start Basic Flow

Basic Flow Alternate Flow 1

Alternate Flow 3 

Alternate Flow 3  Alternate Flow 1

Alternate Flow 1 Alternate Flow 2

Basic Flow Alternate Flow 3

Alternate Flow 1  Alternate Flow 2

Basic Flow Alternate Flow 4

Alternate Flow 3  Alternate Flow 4

• Nh ng k ch b n này s s d ng nh c s ư ơ ở

ẽ ử ụ

ả đ t o ra nh ng test case ữ

ữ ể ạ

Phát sinh Test Cases

M c tiêu c a test case là đ nh n bi

ế

ể ẽ ự

ề ấ ế ậ

t y u đ th m tra s thành công và có ự ủ

ể ứ

c quá trình phát tri n test

3 b

case t

t và truy n ụ đ t nh ng đi u ki n s th c thi trên test. Test ệ ữ case là t ể ẩ th ch p nh n s th c thi c a nh ng yêu c u ự ự ấ ch c năng (Use case) ướ ủ ủ 1. Cho m i use case, phát sinh 1 t p đ y đ c a

ả t đ y đ c a use case: ế ầ ầ

ủ ủ

Chúng ta s mô t ẽ chi ti ừ ỗ ị

nh ng k ch b n use case ả

ữ ỗ ị ữ

ậ nh ng đi u ki n mà s th c thi nó ữ

t nh ng giá tr d ị ữ

ế

2. M i k ch b n, nh n d ng ít nh t 1 test case và ạ ẽ ự 3. Cho m i test case, nh n bi ậ li u kèm v i nó đ test. ớ ệ

B c 1: Phát tri n k ch b n

ướ

• Nh n bi ậ

ế

t m i k t h p c a main và alternate ị ữ

ỗ ế ợ ả

ủ flows - nh ng k ch b n – và t o ra ma tr n k ch b n ả

Scenario Name

Starting Flow

Alternate

Scenario 1 - Successful registration

Basic Flow

Scenario 2 - Unidentified student

Basic Flow

A1

Scenario 3 - User quits

Basic Flow

A2

Scenario 4 - Course catalog system

Basic Flow

A4

unavailable

Scenario 5 - Registration closed

Basic Flow

A5

Basic Flow

A3

Scenario 6 – Cannot enroll

B c 2: Nh n bi

ướ

ế

t (Nh n d ng) Test ạ

Cases

ắ ấ

ư

• Phân tích nh ng k ch b n và cân nh c mô t nguyên văn use case. S có ít nh t 1 ả test case cho m i kích b n, nh ng ch c ch n s có nhi u h n ơ

ỗ ề

• Đ c l

ẽ i mô t ề

ắ ọ ạ ữ ượ

nguyên văn use case và tìm d li u ế ố ữ ệ ệ c yêu c u đ th c thi nh ng k ch b n ả ị

ể ự

nh ng đi u ki n hay nh ng y u t đ khác nhau.

Test Case Matrix

Scenario/ Condition Password Student ID Courses selected Prerequisite s fulfilled Course Open Schedule Open Expected Result Test Case ID

RC 1 V V V V V V

Scenario 1- successful registration Schedule and confirmation number displayed

RC 2 I N/A N/A N/A N/A N/A Scenario 2- unidentified student

Error message; back to login screen

RC 3 V V N/A N/A N/A N/A Scenario 3- valid user quits Login screen appears

RC 4 V V N/A N/A N/A N/A

Scenario 4- course registration system unavailable Error message; back to step 2

RC 5 V V N/A N/A N/A N/A Scenario 5- registration closed Error message; back to step 2

RC 6 V V V V I V Scenario 6- cannot enroll -- course full Error message; back to step 3

RC 7 V V I V V V

Scenario 6- cannot enroll -- prerequisite not fulfilled Error message; back to step 4

RC 8 V V V V V I

Scenario 6- cannot enroll -- schedule conflict Error message; back to step 4

B c 3: Nh n bi

ướ

ị ữ ệ

t (Nh n d ng) giá tr d li u đ ể ế test (Data test)

Student ID Password Scenario/ Condition Courses selected Prerequisites fulfilled Course Open Schedule Open Expected Result Test Case ID

Jheumann abc123 M101> Yes Yes Yes RC 1

Scenario 1- successful registration Schedule and confirmation number displayed

Jheuman1 N/A N/A N/A N/A N/A RC 2 Error message; back to login screen Scenario 2- unidentified student

RC 3 jheumann abc123 N/A N/A N/A N/A Scenario 3- valid user quits Login screen appears

RC 4 jheumann abc123 N/A N/A N/A N/A Error message; back to step 2

Scenario 4- course registration system unavailable

N/A jheumann abc123 N/A N/A N/A RC 5 Scenario 5- registration closed Error message; back to step 2

Yes jheumann abc123 M101 full Yes RC 6 Error message; back to step 3 M101 E201 S101 Scenario 6- cannot enroll -- course full

jheumann abc123 No for E201 Yes Yes RC 7 Error message; back to step 4 M101 E201 S101 Scenario 6- cannot enroll -- prerequisite not fulfilled

jheumann abc123 Yes Yes RC 8 Error message; back to step 4 M101 E201 S101 E202 and S101 conflict Scenario 6- cannot enroll -- schedule conflict

T ng k t ế

Use Cases and Test Cases Relation in Testing Process

USE CASE ID

TEST CASE ID

QC PROCESS

USE CASE

TEST CASE

MANAGE CHANGE REQUIREMENT

USE CASE CHANGE

TEST CASE CHANGE

END SUCCESSFULL USE CASE AND TESTCASE COVER