Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 6

ĐẠI HỌC QUỐC GIA

HÀ NỘI -TRƯỜNG
ĐẠI HỌC CÔNG
NGHỆ

BÁO CÁO
BÀI TẬP KIỂM THỬ CHỨC NĂNG

Môn học: Kiểm thử và đảm bảo chất lượng phần mềm
Giảng viên: ThS.Nguyễn Thu Trang
Sinh viên: Nguyễn Viết Mạnh-21020351
Đặt vấn đề:
Một khu vui chơi bán vé vào cửa cho khách hàng sẽ có mức giá khác nhau đối với
mỗi người. Người sở hữu vé vip sẽ được tự do thỏa thích mua bất kỳ thứ gì mà
không mất phí.
Vé vip:
Người lớn: 1.000.000 VND
Trẻ em: 700.000VND
Vé thường:
Người lớn: 500.000 VND
Trẻ em: 300.000VND
Quy định về tuổi:
Trẻ em: Dưới 6 tuổi
Người lớn: 6 tuổi trở lên
Trường hợp nhập tuổi dưới 0, hệ thống sẽ báo lỗi.

Yêu cầu bài toán: Nhập vào thông tin của khách hàng gồm: tuổi và hạng vé của
khách hàng, đưa ra số tiền khách hàng phải trả

Phân tích bài toán


1. Xác định yêu cầu:
- Xác định loại vé của khách hàng
- Xác định tuổi của khách hàng (người lớn hoặc trẻ em).
2. Thu thập dữ liệu đầu vào:
- Cung cấp thông tin về hạng vé và tuổi của khách hàng.
3. Xây dựng logic tính toán:
- Sử dụng thông tin về hạng vé và tuổi để áp dụng giá vé tương ứng.
- Sử dụng các quy định về giá vé đã cung cấp để tính số
tiền phải trả.
4. Hiển thị kết quả:
- In ra màn hình số tiền phải trả cho khách hàng.
Kiểm thử dòng dữ liệu
Đồ thị CFG
Xác định def, p-uses, c-uses của các biến
Variable Def p-uses c-uses
cost 1, 6, 7, 9, 10 11
person.type 0 5,8
person.age 0 2,4

Xác định All-uses coverage của các biến


Variable Du-pair Path Complete path All-uses
cost (1,11) 0 – 1 – 2(F) – 4(T) – 5(T) – 6 – 11 0 – 1 – 2(F) – 4(T) – 5(T) – 6 – 11 X
(6,11) 6 – 11 0 – 1 – 2(F) – 4(T) – 5(T) – 6 – 11 X
(7,11) 7 – 11 0 – 1 – 2(F) – 4(T) – 5(F) – 7 – 11 X
(9,11) 9 – 11 0 – 1 – 2(F) – 4(F) – 8(T) – 9 – 11 X
(10,11) 10 – 11 0 – 1 – 2(F) – 4(F) – 8(F) – 10 – 11 X
type (0,5(T)) 0 – 1 – 2(F) – 4 (T) – 5(T) 0 – 1 – 2(F) – 4(T) – 5(T) – 6 – 11 X
(0,5(F)) 0 – 1 – 2(F) – 4 (T) – 5(F) 0 – 1 – 2(F) – 4(T) – 5(F) – 7 – 11 X
(0,8(T)) 0 – 1 – 2(F) – 4 (F) – 8(T) 0 – 1 – 2(F) – 4(F) – 8(T) – 9 – 11 X
(0,8(F)) 0 – 1 – 2(F) – 4 (F) – 8(F) 0 – 1 – 2(F) – 4(F) – 8(F) – 10 – 11 X
age (0,2(T)) 0 – 1 – 2(T) 0 – 1 – 2(T) – 3 X
(0,2(F)) 0 – 1 – 2(F) 0 – 1 – 2(F) – 4(T) – 5(T) – 6 – 11 X
(0,4(T)) 0 – 1 – 2(F) – 4(T) 0 – 1 – 2(F) – 4(T) – 5(T) – 6 – 11 X
(0,4(F)) 0 – 1 – 2(F) – 4(F) 0 – 1 – 2(F) – 4(F) – 8(T) – 9 – 11 X

Mã nguồn:
https://github.com/vietmanh21/testing
Kế hoạch kiểm thử
Mã Variable Du-pair Path Complete path Testcase Output
TC1 cost (1,11) 0 – 1 – 2(F) 0 – 1 – 2(F) – Account(person(4, 300000
– 4(T) – 4(T) – 5(T) – NORMAL))
5(T) – 6 – 6 – 11
11
TC2 (6,11) 6 – 11 0 – 1 – 2(F) – Account(person(3, 300000
4(T) – 5(T) – NORMAL))
6 – 11
TC3 (7,11) 7 – 11 0 – 1 – 2(F) – Account(person(4, 700000
4(T) – 5(F) – VIP))
7 – 11
TC4 (9,11) 9 – 11 0 – 1 – 2(F) – Account(person(30, 1000000
4(F) – 8(T) – VIP))
9 – 11
TC5 (10,11) 10 – 11 0 – 1 – 2(F) – Account(person(25, 500000
4(F) – 8(F) – NORMAL))
10 – 11
TC6 type (0,5(T)) 0 – 1 – 2(F) 0 – 1 – 2(F) – Account(person(1, 300000
– 4 (T) – 4(T) – 5(T) – NORMAL))
5(T) 6 – 11
TC7 (0,5(F)) 0 – 1 – 2(F) 0 – 1 – 2(F) – Account(person(4, 700000
– 4 (T) – 4(T) – 5(F) – VIP))
5(F) 7 – 11
TC8 (0,8(T)) 0 – 1 – 2(F) 0 – 1 – 2(F) – Account(person(16, 1000000
– 4 (F) – 4(F) – 8(T) – VIP))
8(T) 9 – 11
TC9 (0,8(F)) 0 – 1 – 2(F) 0 – 1 – 2(F) – Account(person(19, 500000
– 4 (F) – 4(F) – 8(F) – NORMAL))
8(F) 10 – 11
TC10 age (0,2(T)) 0 – 1 – 2(T) 0 – 1 – 2(T) – Account(person(-4, Invalid input
3 NORMAL))
TC11 (0,2(F)) 0 – 1 – 2(F) 0 – 1 – 2(F) – Account(person(2, 300000
4(T) – 5(T) – NORMAL))
6 – 11
TC12 (0,4(T)) 0 – 1 – 2(F) 0 – 1 – 2(F) – Account(person(1, 300000
– 4(T) 4(T) – 5(T) – NORMAL))
6 – 11
TC13 (0,4(F)) 0 – 1 – 2(F) 0 – 1 – 2(F) – Account(person(40, 1000000
– 4(F) 4(F) – 8(T) – VIP))
9 – 11
Báo cáo kiểm thử
Code Variable Du-pair Input Output Expected Result
output
TC1 cost (1,11) Account(person(4, 300000 300000 Pass
NORMAL))
TC2 (6,11) Account(person(3, 300000 300000 Pass
NORMAL))
TC3 (7,11) Account(person(4, VIP)) 700000 700000 Pass
TC4 (9,11) Account(person(30, VIP)) 1000000 1000000 Pass
TC5 (10,11) Account(person(25, 500000 500000 Pass
NORMAL))
TC6 type (0,5(T)) Account(person(1, 300000 300000 Pass
NORMAL))
TC7 (0,5(F)) Account(person(4, VIP)) 700000 700000 Pass
TC8 (0,8(T)) Account(person(16, VIP)) 1000000 1000000 Pass
TC9 (0,8(F)) Account(person(19, 500000 500000 Pass
NORMAL))
TC10 age (0,2(T)) Account(person(-4, Invalid Invalid Pass
NORMAL)) input input
TC11 (0,2(F)) Account(person(2, 300000 300000 Pass
NORMAL))
TC12 (0,4(T)) Account(person(1, 300000 300000 Pass
NORMAL))
TC12 (0,4(F)) Account(person(40, VIP)) 1000000 1000000 Pass

You might also like