2.3.1 .d Use-case testing
13 Use-case tính năng Xuất lịch biểu
Sử dụng giải thuật McCabe Basic Path để tạo testcase. Số đường cần test: V(G) =e−n+ 2 = 11−10 + 2 = 3 Các đường cần test: (a) 1−2−3−4−5−10−11 (b) 1−2−3−6−8−9−4−5−10−11 (c) 1−2−3−6−7−9−4−5−10−11 2.4 Thành viên 4
Name: Nguyễn Kim Phương Trang. Mssv: 1910620.
2.4.1 Functional Requirement2.4.1.a Boundary value analysis 2.4.1.a Boundary value analysis Chức năng: Create Mashup Contest
Mô tả: Mashup là một loại cuộc thi luyện thi đặc biệt, bao gồm các bài tốn cơng khai từ các vịng Codeforces đã có. Một biểu mẫu tạo một Mashup Contest bao gồm 4 trường: Name (tên của contest), Duration (độ dài cuộc thi, đơn vị phút), Clone contest (chọn clone từ một contest cụ thể), Clone from (tên contest chọn clone). Nội dung kiểm thử: Trường Duration
Trường Duration yêu cầu một số nguyên có giá trị trong đoạn [10,527040]: 10 ≤ d ≤
527040.
Ta có các giá trị biên là: • d(min) = 10
• d(max) = 52740
Xây dựng testcase cho Robust Boundary Value Testing: 1. d(min-) = 9 2. d(min) = 10 3. d(min+) = 11 4. d(nominal) = 120 5. d(max-) = 527039 6. d(max) = 527040 7. d(max+) = 527041
2.4.1.b Equivalent class partitioningChức năng: Create Mashup Contest Chức năng: Create Mashup Contest
Nội dung kiểm thử: Form submit tạo một Mashup Contest gồm trường:Name(tên của contest),Duration(độ dài cuộc thi, đơn vị phút),Clone contest?(1 checkbox cho phép chọn clone từ một contest cụ thể, hoặc tùy chỉnh chọn các bài toán riêng lẻ từ các contest khác nhau), Clone from (tên contest chọn clone).
Miền giá trị hợp lệ của các trường: • Name: Chuỗi khác rỗng (N1).
• Duration: Số ngun hợp lệ có giá trị từ 10 đến 527040(D1). • Clone contest?: Checkbox (C1), Khơng checkbox (C1.1)
• Clone from: Tên một contest được nhận dạng not found(CF1), Rỗng (CF1.1) Miền giá trị khơng hợp lệ của các trường:
• Name: Chuỗi rỗng (N2).
• Duration: Số nguyên bé hơn 10(D2), số nguyên lớn hơn 527040 (D3). • Clone contest?: Khơng có.
• Clone from: Tên contest khơng nhận dạng được (CF2). Output có thể có đối với các input điền vào là:
• A1: Tạo Mashup Contest thành công từ một contest cụ thể (chọn trong trường Clone from khi checkboxClone contest?).
• A2: Tạo Mashup Contest thành cơng từ các bài toán riêng lẻ trên các contest khác nhau (nếu khơng checkbox Clone contest?).
• A3: Form submit khơng thành cơng vì các input điền vào chưa hợp lệ. Xây dựng testcase cho Weak Robust Equivalence Class:
Testcase Input Doman Equiv. Class Expected Output
WR1 N1, D1, C1, CF1 A1 WR2 N1, D3, C1, CF2 A3 WR3 N2, D2, C1.1, CF1 Impossible WR4 N1, D1, C1.1, CF1.1 A2 WR5 N2, D1, C1, CF1 A3 2.4.1.c Decision table
Chức năng: Create Mashup Contest
Nội dung kiểm thử: Form submit tạo một Mashup Contest gồm trường:Name(tên của contest),Duration(độ dài cuộc thi, đơn vị phút),Clone contest?(1 checkbox cho phép chọn clone từ một contest cụ thể, hoặc tùy chỉnh chọn các bài toán riêng lẻ từ các contest khác nhau), Clone from (tên contest chọn clone).
Các điều kiện cho Decision Table (cho trướcName đã là một input hợp lệ): • D1: Duration là một số nguyên hợp lệ có giá trị từ 10đến 527040 (D1). • D2: Duration là một số ngun có giá trị ngồi khoảng hợp lệ trên. • C1: Checkbox Clone contest?
• C1.1: Khơng checkbox Clone contest?
• CF1: Tên contest trong Clone from được nhận dạng (found) • CF1.1: Ơ Clone from rỗng.
• CF2: Tên contest Clone from khơng nhận dạng được (not found). Các hành động có thể xảy ra:
• A1: Tạo Mashup Contest thành cơng từ một contest cụ thể (chọn trong trường Clone from khi checkboxClone contest?).
• A2: Tạo Mashup Contest thành cơng từ các bài tốn riêng lẻ trên các contest khác nhau (nếu khơng checkbox Clone contest?).
• A3: Form submit khơng thành cơng vì các input điền vào chưa hợp lệ. Bảng quyết định: 1 2 3 4 5 6 7 8 9 10 11 12 C1: Dura- tion D1 D1 D1 D1 D1 D1 D2 D2 D2 D2 D2 D2 C2: Clone contest? C1 C1 C1 C1.1 C1.1 C1.1 C1 C1 C1 C1.1 C1.1 C1.1 C3: Clone from CF1 CF1.1 CF2 CF1 CF1.1 CF2 CF1 CF1.1 CF2 CF1 CF1.1 CF2 a1: A1 X a2: A2 X a3: A3 X X X X X X Impossible X X X X
Loại trừ các trường hợp Impossible ta thu được 8 trường hợp kiểm thử tương ứng với 8 testcase.
2.4.1.d Use-case testing
1. Chức năng 1: Xem chi tiết bài toán - View problem detail
Mô tả: Trang web tổ chức các contest, mỗi contest chứa một số problem. Trang Contest cho phép người dùng xem các contest đã, đang, sắp diễn ra. Trang Problem là kho tổng hợp tất cả các problem từ tất cả các contest. Để xem chi tiết đề bài của một problem, người dùng có thể vào trang Problemđể tìm và xem trực tiếp đề bài, hoặc người dùng có thể truy từ Contest để xem các problem của contest tương ứng.