Giai đoạn nào?
Tuy nhiên, kiểm thử cần được thực hiện xuyên suốt các giai đoạn nhằm tăng chất lượng phần mềm
Kiểm tra quá trình phân tích thiết kế
Xem xét lớp (Class)
Kiểm thử đơn vị (Unit Test)
Kiểm thử tích hợp (Integration Test)
Kiểm thử thẩm định (Validation Tests)
Cần lập kế hoạch kiểm thử
Thiết kế các trường hợp kiểm thử
7 trang |
Chia sẻ: lylyngoc | Lượt xem: 1637 | Lượt tải: 1
Bạn đang xem nội dung tài liệu Bài 12. Thiết kế trường hợp kiểm thử, để tải tài liệu về máy bạn click vào nút DOWNLOAD ở trên
* PHÂN TÍCH THIẾT KẾ HƯỚNG ĐỐI TƯỢNG VỚI UML 2.0 TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘIKHOA CÔNG NGHỆ THÔNG TIN Bé m«n C«ng nghÖ phÇn mÒm Bài 12. Thiết kế trường hợp kiểm thử * Kiểm thử phần mềm Giai đoạn nào? Tuy nhiên, kiểm thử cần được thực hiện xuyên suốt các giai đoạn nhằm tăng chất lượng phần mềm Kiểm tra quá trình phân tích thiết kế Xem xét lớp (Class) Kiểm thử đơn vị (Unit Test) Kiểm thử tích hợp (Integration Test) Kiểm thử thẩm định (Validation Tests) Cần lập kế hoạch kiểm thử Thiết kế các trường hợp kiểm thử analysis design code test ? * Use case Biểu đồ use case đưa ra tương tác giữa các tác nhân và hệ thống. Trong một biểu đồ use case, hệ thống được xem như: Đầu vào (Input) Đầu ra (Output) Các vấn đề về chức năng Mục đích của một UC: Tập trung vào giao tiếp Hiểu yêu cầu khách hàng Giúp xác định các biên để đóng gói dữ liệu Tập trung vào “What” chứ không phải là “How” Cung cấp các Prototype Test Cases * Tạo các Test case từ UC Xác định tất cả các kịch bản của một use case nào đó Các kịch bản phụ cũng cần được vẽ ra trong một biểu đồ cho mỗi hành động Tạo kịch bản cho: Luồng cơ bản, Luồng kịch bản bao gồm mỗi luồng phụ, Và một vài sự kết hợp của các luồng phụ Tạo ra các vòng lặp vô hạn * Tạo các kịch bản Xác định các dữ liệu đầu vào cho mỗi UC Xác định các tùy chọn quan trọng khác cho mối dữ liệu (VD: mật khẩu quá dài, quá ngắn, các ký tự đặc biệt…) Kết hợp các tùy chọn có thể kiểm thử đưa vào test cases Đưa các ví dụ về giá trị cho các đầu vào * USE CASE (4) Regular Illegal 51 chars Regular 11 chars 10 chars Regular 200 chars 201 chars Select first one Select last one Add to cart Email Search Selection Add Password * Ví dụ UC Register for course Luồng chính: Đăng ký khóa học thành công Tạo 1 test case cho luồng chính với các vài dữ liệu hợp lệ Luồng phụ 4a: Sinh viên không đủ điều kiện tiên quyết để đăng ký khóa học 5a: Thời gian hoặc môn học của khóa học đăng ký trùng với các khóa học đã đăng ký Xem xét nhiều kiểu trùng đủ tách ra thành các test case nhỏ hơn Đăng ký môn học đã đăng ký rồi, trong kỳ đó 6a: Đăng ký vào lớp học đã có đủ sinh viên đăng ký * Ví dụ UC Register for course Có thể xét thêm trường hợp hai người dùng đồng thời cùng đăng ký một khóa học gần đầy (chỉ thiếu 1 người là đầy) Có thể kết hợp 1 số luồng phụ với nhau (nếu cần) hoặc đưa thêm luồng phát sinh Vừa đăng ký vào lớp đầy, vừa trùng thời gian… Đã đóng đăng ký, liệu 1 sinh viên có đăng ký được nữa không (dù các điều kiện khác đều hợp lệ)