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ì.. Unidentified Student • Trong bước 1 của Basic Flow, Logon, nếu hệ thống xác định rằng studen
Trang 1Từ Use Cases đến
Test Cases
Trang 2Một yêu cầu là gì?
• Một yêu cầu đượ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ải quyết 1 vấn đề hay đạt được 1 mục đích.
• Một khả năng phải đáp ứng được hay được xử
lý bởi hệ thống để thỏa mãn 1 giao kèo, tiêu
chuẩn, đặc tả, quy tắc hay tài liệu chính thức khác được chấp nhận.
• Sự hạn chế buộc phải chấp nhận bởi bên thứ 3
Trang 3Use Cases and Actors
• Use Case: mô tả hành vi của hệ thống,
dưới dạng chuổi hành động Một usc sẽ
mang lại 1 kết quả có thể quan sát của giá
trị đến 1 actor Một use case chứa basic
flow of events và tất cả alternate flows
of events liên quan
• Actor: Mỗi actor miêu tả 1 ai đó hay thứ
nào đó bên ngoài hệ thống tương tác với
hệ thống
Trang 4Mụ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
Trang 5Use Cases Description
• 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ó được cung cấp từ Course Catalog System và hiển thị danh sách Student
• 4 Select Courses
• Student chọn 4 cua chính được cung cấp và 2 cua luân phiên từ danh sách sẵn có
• 5 Submit Schedule
• Student cho biết bảng biểu đã hoàn thành Mỗi cua được cung cấp đã được chọn trên bảng biểu, hệ thống kiểm tra student đã chọn những môn tiên quyết cần thiết
• 6 Display Completed Schedule
• Hệ thống hiển thị lịch biểu chứa những cua cung cấp được chọn và xác thực số lượng cho lịch biểu Alternate Flows
• 1 Unidentified Student
• Trong bướ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ệ, 1 thông báo lỗi được hiển thị
• 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 phần của lịch biểu trước khi thoát Tất cả cua không được đánh dấu cũng xem như được đánh dấu “chọn” vào lịch biểu Lịch biểu được lưu vào hệ thống Kết thúc use case
• 3 Unfulfilled Prerequisites, Course Full, or Schedule Conflicts
• Trong bướ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 được chọn
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 đượ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
• 4 Course Catalog System Unavailable
• Trong bướ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ị 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 được hiển thị, và use case kết thúc
Trang 6Đề ra tiêu chuẩn sẵn sàng để phát triển
Test cases
• Steps trong use case tương đương steps
trong Test case
• Đánh số duy nhất liên quan đế từng bước
• Phối hợp đầu vào của user và hồi đáp của
hệ thống trong từng bước
• Activity diagram là nền tảng cho phát sinh
kịch bản
Trang 7Kịch bản là gì?
• Kịch bản mô tả một lối đi cụ thể thông qua flow of events được mô tả trong User case
• Kịch bản là 1 thể hiện của 1 user case
Trang 8Làm sao để tìm tất cả những kịch bản
Trang 9Mô 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
Trang 10Mô tả của kịch bản (TT)
Start Basic
Alternate Flow 1
Alternate Flow 3 Alternate Flow 1 Alternate Flow 2
Alternate Flow 2
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
Trang 11Phát sinh Test Cases
Mục tiêu của test case là để nhận biết và truyền đạt những điều kiện sẽ thực thi trên test Test case là tất yếu để thẩm tra sự thành công và có thể chấp nhận sự thực thi của những yêu cầu chức năng (Use case)
Chúng ta sẽ mô tả 3 bước quá trình phát triển test case từ chi tiết đầy đủ của use case:
1 Cho mỗi use case, phát sinh 1 tập đầy đủ của
những kịch bản use case
2 Mỗi kịch bản, nhận dạng ít nhất 1 test case và
những điều kiện mà sẽ thực thi nó
3 Cho mỗi test case, nhận biết những giá trị dữ
liệu kèm với nó để test.
Trang 12Bướ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
unavailable
Basic Flow A4
Trang 13Bướ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 những điều kiện hay những yếu tố dữ liệu được yêu cầu để thực thi những kịch bản khác nhau.
Trang 14Test Case Matrix
Test
Case
ID Scenario/ Condition
Student
ID Password Courses selected Prerequisite s fulfilled Course Open Schedule Open Expected Result
RC 1 Scenario 1- successful
registration
Schedule and confirmation number displayed
RC 2 Scenario 2- unidentified student I N/A N/A N/A N/A N/A
Error message; back to login screen
RC 3 Scenario 3- valid user quits V V N/A N/A N/A N/A Login screen appears
RC 4
Scenario 4- course
registration system
unavailable V V N/A N/A N/A N/A
Error message; back to step 2
RC 5 Scenario 5- registration closed V V N/A N/A N/A N/A Error message;
back to step 2
RC 6 Scenario 6- cannot
enroll course full V V V V I V
Error message; back to step 3
RC 7
Scenario 6- cannot
enroll prerequisite
not fulfilled V V V I V V
Error message; back to step 4
Trang 15Bước 3: Nhận biết (Nhận dạng) giá trị dữ liệu để test
(Data test)
Test
Case
ID
Scenario/
Condition Student ID Password Courses selected Prerequisites fulfilled Course Open Schedule Open Expected Result
RC 1
Scenario 1-
successful
registration Jheumann abc123 M101> Yes Yes Yes
Schedule and confirmation number displayed
RC 2 Scenario 2- unidentified
student Jheuman1 N/A N/A N/A N/A N/A
Error message; back to login screen
RC 3 Scenario 3- valid user quits jheumann abc123 N/A N/A N/A N/A Login screen appears
RC 4
Scenario 4-
course registration
system
unavailable
jheumann abc123 N/A N/A N/A N/A Error message; back to step 2
RC 5 Scenario 5-
registration closed jheumann abc123 N/A N/A N/A N/A
Error message; back to step 2
RC 6 Scenario 6- cannot enroll
course full jheumann abc123
M101 E201 S101 Yes M101 full Yes
Error message; back to step 3
RC 7
Scenario 6-
cannot enroll
prerequisite not
fulfilled
jheumann abc123 M101 E201
S101
No for E201 Yes Yes Error message; back to step 4
RC 8 Scenario 6- cannot enroll
schedule conflict
jheumann abc123 M101 E201
S101
Yes Yes E202 and S101
conflict
Error message; back to step 4
Trang 16Tổng kết
Trang 17Use Cases and Test Cases Relation in
Testing Process
END SUCCESSFULL USE CASE AND TESTCASE COVER
USE CASE ID
QC PROCESS
MANAGE CHANGE REQUIREMENT USE CASE
TEST CASE ID
TEST CASE