Tải bản đầy đủ (.docx) (14 trang)

BÀI TẬP LỚN KĨ THUẬT LẬP TRÌNH TẠO MỘT ADT CÓ TÊN LÀ ARRAY VÀ VIẾT MỘT CHƯƠNG TRÌNH ĐỂ KIỂM TRA ADT ARRAY BIÊN BẢNKIỂM THỬ PHẦN MỀM

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (232.94 KB, 14 trang )

1
1
Giảng viên hướng dẫn : TS. Vũ Thị Hương Giang
Nhóm 3
Ngô Quốc Cường
Phạm Huy Hiệu
Nguyễn Văn Đô
Hoàng Văn Tuyển
Trần Quốc Toản
TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI
VIỆN CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG
BÀI TẬP LỚN
KĨ THUẬT LẬP TRÌNH NĂM HỌC 2012-2013
ĐỀ BÀI:
TẠO MỘT ADT CÓ TÊN LÀ ARRAY
VÀ VIẾT MỘT CHƯƠNG TRÌNH ĐỂ KIỂM TRA ADT ARRAY
BIÊN BẢN KIỂM THỬ PHẦN MỀM
( của nhóm PT03 cho nhóm PT09)

Hà Nội, 2013
HÀ NỘI 2013
HÀ NỘI, 2013
MỤC LỤC
CHỨC NĂNG VÀ GIAO DIỆN 3
KIỂM THỬ TÍNH CHÍNH XÁC VÀ ỔN ĐỊNH
1. Chọn chức năng: Ở thao tác chọn chức năng, t kiểm
thử các trường hợp sau:
5
2. Nhập thông tin cho mảng: Chương trình cho phép chọn
a, b để chọn nhập từ bàn phim hay từ file. Ta sẽ nhập a,
b hoặc không phải.


7
1) Nhập số lượng mảng 8
2) Nhập giá trị cho phần tử 10
3. In mảng: TC19: Thành công 10
4. Bubble sort: TC 20: Thành công 10
5. Insertion sort: TC 21: Thành công 11
6. Selection sort: TC 22: Thành công 11
7. Tìm phần tử lớn nhất: TC 23: Thành công 11
8. Tìm phần tử nhỏ nhất: TC 24: Thành công 11
9. Tính giá trị trung binh 12
10. Tính độ lệch của 2 phần tử 13
11. Tính độ lệch trung binh: TC 30: Thành công 13
12. Tìm kiếm tuần tự: TC 31: Thành công 13
13. Tìm kiếm nhị phân 13
14. Thời gian tính: TC 34: Thành công 14
14
2
2
CHỨC NĂNG VÀ GIAO DIỆN
• Chương trình có đủ các chức năng theo yêu cầu.
3
3
• Giao diện chương trình rời rạc, một số câu quá dài và bị ngắt giữa
trừng, không có các lệnh xóa màn hình cần thiết để tăng hiệu quả
hiển thị, không dừng lại để người dùng quan sát kết quả mà hiển
thị menu chinh ngay. Ví dụ sau khi thực hiện thao tác nhập mảng,
thay vì hiển thị kết quả thì chương trình lại hiển thị menu để chọn
thao tác tiếp theo ngay tức thì.
4
4

KIỂM THỬ TÍNH CHÍNH XÁC VÀ ỔN ĐỊNH
Thực hiện kiểm thử theo từng chức năng:
1. Chọn chức năng: Ở thao tác chọn chức năng, t kiểm thử các trường
hợp sau:
Test
Cas
e
Cách thực hiện Kết quả
TC1 Nhập một chuỗi
kí tự bất kì
Thành công
Thông báo nhập sai, kết thúc chương
trình
TC2 Nhập một số
thực
Không thành công
Kết quả không nhất quán:
• Nhập 1.6, 2.7 chương trình nhảy
vào chức năng 1, 2 sau đó báo
nhập sai ở menu 1, 2
• Nhập 0.6 Thông báo nhập sai, kết
thúc chương trình
• Nhập 3.6 Chương trình thực hiện
in liên tục ra màn hình và không
tự kết thúc
TC3 Nhập một số
nguyên ngoài
khoảng cho
phép: 0 tới 14
Thành công

Thông báo nhập sai, kết thúc chương
trình
TC4 Chọn chức năng
từ 2 tới 13 khi
chưa nhập mảng
Không thanh công
• Khi nhập từ 3 tới 12: Thông báo
chưa nhập mảng và yêu cầu nhập
lại

TC5 Chọn 1 và 14 Thành công
TC6 Chọn chức năng
từ 2 tới 13 sau
khi nhập mảng
Thành công
TC1:
5
5
TC2:
6
6
TC3:
TC4
KẾT QUẢ: 4/6
2. Nhập thông tin cho mảng: Chương trình cho phép chọn a, b để
chọn nhập từ bàn phim hay từ file. Ta sẽ nhập a, b hoặc không phải.
TC7 Nhập vào không phải a, b Thành công
7
7
TC 8 Nhập vào a, b Thành công

TC 7
TC8
KẾT QUẢ 2/2
1) Nhập số lượng mảng
TC Cách làm Kết quả thực hiện Kết luận
TC 9 Nhập một chuỗi
bất kì bắt đầu
không phải số
Thông báo nhập sai Thành
công
TC
10
Nhập một xâu bắt
đầu bằng số
Khởi tạo mảng và không
cho nhập giá trị phần tử
Không
thành công
TC
11
Nhập 1 số thực Tự gán phần thập phân
vào Max[0]
Không
thành công
TC
12
Nhập 1 số nguyên
âm
Thông báo nhập sai Thành
công

TC
13
Nhập một số lớn
tràn kiểu int
Thông báo nhập sai Thành
công
TC
14
Nhập 1 số lớn quá
100 và chưa tràn
số
Thông báo kích thước tối
đa
Thành
công
TC Nhập một số Khởi tạo mảng Thành
8
8
15 nguyên dương
nhỏ hơn 100
công
TC 9
TC 10
TC 11
TC 12
9
9
TC 13
KẾT QUẢ: 5/7
2) Nhập giá trị cho phần tử

TC 16 Nhập 1 số thực
nhỏ
Nhận giá trị Thành
công
TC 17 Nhập một số lớn Nhập giá trị 1.#INF Không
thành công
TC 18 Nhập một chuỗi
kí tự
Nhận giá trị không xác
định và tự động gán giá trị
không xác định vào các
phần tử còn lại
Không
thanh công
KẾT QUẢ: 1/3
3. In mảng: TC19: Thành công
4. Bubble sort: TC 20: Thành công
10
10
5. Insertion sort: TC 21: Thành công
6. Selection sort: TC 22: Thành công
7. Tìm phần tử lớn nhất: TC 23: Thành công
8. Tìm phần tử nhỏ nhất: TC 24: Thành công
11
11
9. Tính giá trị trung binh
TC 25 Tính giá trị nhỏ Tính chinh xác Thành công
TC 26 Tính giá trị lớn Không chinh
xác
Không thành

công
TC 25
Thực hiện chức năng với bộ dữ liệu:
Số phần tử mảng: 4
Bộ phần tử: ( 7 32 67 49 )
Kết quả tính toán tay: Giá trị trung bình: 38.75
Kết quả chạy chương trình:
TC 26
Thực hiện chức năng với bộ dữ liệu:
Mảng: 20 số 80000000000 (10 chữ số 0)
Kết quả tính toán tay: Giá trị trung bình: 80000000000
Kết quả chạy chương trình:
12
12
KẾT QUẢ: 1/2
10. Tính độ lệch của 2 phần tử
TC27 Nhập vị trí trong
khoảng
Tính chinh xác Thành công
TC28 Nhập ngoài mảng Thông báo không tìm
thấy mảng
Thành công
TC29 Nhập kí tự Chương trình in liên
tục và không tự dừng
Không thành
công
KẾT QUẢ: 2/3
11. Tính độ lệch trung binh: TC 30: Thành công
12. Tìm kiếm tuần tự: TC 31: Thành công
13. Tìm kiếm nhị phân

TC32 Mảng đã sắp xếp Kết quả đúng Thành công
TC33 Mảng chưa sắp Vẫn thực hiện => cho Không thành
13
13
xếp kết quả không chính
xác
công
KẾT QUẢ: 1/2
14. Thời gian tính: TC 34: Thành công
KẾT LUẬN
Về chức năng, chương trình có đủ chức năng theo yêu cầu.
Về giao diện, chương trình có giao diện hơi rời rạc và khó quan sát.
Về tính chính xác và ổn định, chương trình vượt qua được 23/34 Test
Case. Hầu hết các trường hợp không vượt qua đều rơi vào lỗi phòng
ngừa, có 2 trường hợp chương trình thực hiện việc in ra màn hình liên
tục và không tự dừng lại. Không ghi nhận trường hợp chương trình bị
chết đột ngột!
Ngoài ra, việc không chế số lượng phần tử tối đa của mảng bằng 100 là
quá nhỏ, thay vì sử dụng 1 mảng cố định, chương trình nên sử dụng 1
con trỏ.
14
14

×