ừ
ế
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