- Cách thực hiện: Lựa chọn các giá trị cận để kiểm thử Nguyên tắc kiểm thử các dữ liệu vào gồm:
7.6.2. Công việc của cán bộ kiểm thử
Sau đây là các công việc chính của cán bộ kiểm thửphần mềm
Bảng 7.11. Công việc của cán bộ kiểm thử phần mềm
STT Nhiệm vụ/Công việc
1. Tham gia phân tích yêu cầu của khách hàng
2. Lập kế hoạch test
3. Xây dựng tiêu chuẩn nghiệm thu
4. Xây dựng hƣớng dẫn test
5. Thực hiện test
6. Hỗ trợ các vấn đề liên quan đến test 7. Báo cáo và tổng hợp kết quả test
8. Lập và lƣu trữ các hồ sơ liên quan đến test
9. Thu thập và kiểm soát các dữ liệu liên quan đến các hoạt động test 10. Tính toán và phân tích các chỉ tiêu liên quan đến các hoạt động test
CÂU HỎI VÀ BÀI TẬP CHƢƠNG 7
1. Tại sao phải kiểm tra chất lƣợng phần mềm? Nêu quá trình kiểm tra, mục đích kiểm tra.
2. Nêu khái niệm độtin cậy phần mềm. Nêu một số đánh giá về độ tin cậy của sản phẩm phần mềm.
3. Nêu các phƣơngpháp, kỹ thuật để tăng độ tin cậy phần mềm khi viết các chƣơng trình.
4. Nêu các giai đoạn kiểm thử phần mềm.
5. Nêu các bƣớc thực hiện các giai đoạn kiểm thử phần mềm: - Lập kế hoạch kiểm thử,
- Xây dựng các tình huống kiểm thử, - Xây dựng các thủ tục kiểm thử - Thực hiện các thủ tục test - Đánh giá kết quả test
6. Nêu các chiến lƣợc kiểm thửsản phẩm phần mềm.
7. Nêu ý tƣởng chiến lƣợc kiểm thử hộp đen, các yêu cầu đối với cán bộ kiểm thử khi thực hiện kiểm thửphần mềm bằng chiến lƣợc hộp đen.
8. Nêu các phƣơng pháp kiểm thửhộp đen.
9. Nêu khái niệm, mục đích, các bƣớc thực hiện khi tiến hành kiểm thử phần mềm bằng phƣơng pháp phân hoạch cân bằng (EP). Cho ví dụ.
10. Nêu khái niệm, mục đích, các bƣớc thực hiện khi tiến hành kiểm thửphần mềm bằng phƣơng pháp phân tích cực biên (BVA). Cho ví dụ.
11. Nêu khái niệm, mục đích, các bƣớc thực hiện khi tiến hành kiểm thửphần mềm bằng phƣơng pháp sơ đồ nguyên nhân - kết quả (CEG). Cho ví dụ.
12. Nêu ý tƣởng chiến lƣợc kiểm thử hộp trắng, các yêu cầu đối với cán bộ kiểm thử khi thực hiện kiểm thửphần mềm bằng chiến lƣợc hộp trắng.
13. Nêu các phƣơng pháp kiểm thửhộp trắng.
14. Nêu khái niệm, mục đích, các bƣớc thực hiện khi tiến hành kiểm thửphần mềm bằng phƣơng pháp kiểm thử dựa trên đồ thị luồng điều khiển (CFG). Cho ví dụ.
15. Nêu ý tƣởng, các bƣớc thự hiện, ƣu điểm, nhƣợc điểm của chiến lƣợc kiểm thử Top-down. Cho ví dụ.
16. Nêu ý tƣởng, các bƣớc thự hiện, ƣu điểm, nhƣợc điểm của chiến lƣợc kiểm thử Bottom-up. Cho ví dụ.
17. Nêu khái niệm và đặc điểm của kiểm thử phần mềm.
18. Nêu các loại hình kiểm thử phần mềm và các nguyên tắc kiểm thử phần mềm. 19. Nêu các kỹ thuật kiểm thử phần mềm và quá trình kiểm thử phần mềm.
20. Nêu một số công cụ kiểm thử phần mềm tự động. 21. Nêu các công việc của cán bộ kiểm thử.
22. Cho thời gian trung bình của thất bại 10 giây, thời gian trung bình để sửa chữa thất bại là 20 giây. Hỏi độ đo mức sẵn sàng hoạt động của hệ thống là bao nhiêu.
23. Cho thời gian trung bình của thất bại 10 giây, thời gian trung bình để sửa chữa thất bại là 20 giây. Hỏi thời gian trung bình giữa hai thất bại kế tiếp nhau là bao nhiêu.
24. Ngân hàng Nông nghiệp Việt Nam trả lãi cho khách hàng dựa vào số tiền còn lại trong tài khoản. Nếu số tiền từ 0 đến 100$ thì trả 3% lãi, từ lớn hơn 100 $ đến nhỏ hơn 1000$ trả 5% lãi, từ1000$ trở lên trả 7% lãi.
1) Hãy lập bảng liệt kê các lớp tƣơng tƣơng, thiết kế các trƣờng hợp kiểm thử 2) Hãy lập bảng liệt kê các giá trị cận để kiểm thử, thiết kế các trƣờng hợp kiểm thử
25. Xét chƣơng trình giải phƣơng trình bậc nhất dạng ax+b=0. Biết rằng các hệ số a và b phải là kiểu số. Hãy lập bảng liệt kê các lớp tƣơng tƣơng, thiết kế các trƣờng hợp kiểm thử để kiểm tra:
- Các giá trị nhập của hệ số a và b, - Các nghiệm của phƣơng trình.
26. Xét chƣơng trình giải phƣơng trình bậc hai dạng ax2 +bx+c =0. Biết rằng các hệ số a, b, c phải là kiểu số. Hãy lập bảng liệt kê các lớp tƣơng tƣơng,thiết kế các trƣờng hợp kiểm thử để kiểm tra:
- Các giá trị nhập của hệ số a, b, c - Các nghiệm của phƣơng trình.
27. Xét chƣơng trình giải phƣơng trình bậc hai dạng ax2 +bx+c =0. Biết rằng các hệ số a, b, c phải là kiểu số và a ≠ 0. Hãy lập bảng liệt kê các lớp tƣơng tƣơng, thiết kế các trƣờng hợp kiểm thử để kiểm tra
- Các giá trị nhập của hệ số a, b, c - Các nghiệm của phƣơng trình.
28. Xét một chƣơng trình nhập điểm của sinh viên gồm các thông tin: mã sinh viên, họ tên sinh viên, giới tính, ngày sinh, học phần, điểm. Biết rằng mã sinh viên phải là các ký số, họ tên sinh viên gồm các ký tự chữ cái và không rỗng, giới tính có hai giá trị “Nam” hoặc “Nữ”, địa chỉ gồm các ký tự chữ cái, ngày sinh chỉ có giá trị từ {01/01/1900} đến ngày hiện tại, học phần gồm các ký tự chữ cái và không rỗng, điểm của sinh viên phải là số có giá trị từ 0 đến 10.
1) Hãy lập bảng liệt kê các lớp tƣơng tƣơng và thiết kế các trƣờng hợp kiểm thử để kiểm tra các thông tin khi nhập điểm.
2) Hãy lập bảng liệt kê các giá trị cận để kiểm thử, thiết kế các trƣờng hợp kiểm thử để kiểm tra các thông tin khi nhập điểm.
29. Xét phần mềm quảnlý tiết kiệm với chức năng mở sổ tiết kiệm gồm các thông tin: Số chứng minh thƣ nhân dân, họ tên khách hàng, địa chỉ, ngày mở sổ, loại ngoại tệ, loại tiết kiệm, số tiền gửi. Biết rằng Số chứng minh thƣ nhân dân phải là các ký số; họ tên khách hàng gồm các ký tự chữ cái và không rỗng; địa chỉ gồm các ký tự chữ cái; ngày mở sổchỉ có giá trị từ {01/01/1900} đến ngày hiện tại; có năm loại tiết kiệm: không kỳ hạn, kỳ hạn 3 tháng, kỳ hạn 6 tháng, kỳ hạn 9 tháng, kỳ hạn 12 tháng; số tiền gửi ít nhất 200.000; có 3 loại ngoại tệ: VNĐ, USD, Yên.
1) Hãy lập bảng liệt kê các lớp tƣơng tƣơng và thiết kế các trƣờng hợp kiểm thử để kiểm tra các thông tin khi mở sổ tiết kiệm.
2) Hãy lập bảng liệt kê các giá trị cận để kiểm thử, thiết kế các trƣờng hợp kiểm thử để kiểm tra các thông tin khi mở sổ tiết kiệm.
30. Xét phần mềm Quản lý học sinh với chức năng tiếp nhận học sinh mới với các thông tin: Khối, Lớp, mã học sinh, họ tên học sinh, giới tính, ngày sinh, địa chỉ. Biết rằng mã học sinh phải là các ký số, họ tên học sinh gồm các ký tự chữ cái và không rỗng, giới tính có hai giá trị “F” hoặc “M”, địa chỉ gồm các ký tự chữ cái, tuổi từ 15 đến 20.
1) Hãy lập bảng liệt kê các lớp tƣơng tƣơng và thiết kế các trƣờng hợp kiểm thử để kiểm tra các thông tin khi tiếp nhận học sinh mới.
2) Hãy lập bảng liệt kê các giá trị cận để kiểm thử, thiết kế các trƣờng hợp kiểm thử để kiểm tra các thông tin khi tiếp nhận học sinh mới.
31. Xét phần mềm quản lý nhân sự với nghiệp vụ tiếp nhận nhân viên với các thông tin: Mã nhân viên, họ tên nhân viên, giới tính, ngày sinh, địa chỉ, đơn vị, trình độ. Mã nhân viênphải là các ký số; họ tên nhân viên gồm các ký tự chữ cái và không rỗng;địa chỉ gồm các ký tự chữ cái; giới tính có hai giá trị “F” hoặc “M”; địa chỉ gồm các ký tự chữ cái; công ty có 4 đơn vị X, Y, Z, T; Tuổi nhân viên nam từ 20 đến 60, Tuổi nhân viên nữ từ 18 đến 55; có 4 trình độ: Sau đại học, đại học, cao đẳng, trung cấp.
1) Hãy lập bảng liệt kê các lớp tƣơng tƣơng và thiết kế các trƣờng hợp kiểm thử để kiểm tra các thông tin khi tiếp nhận nhân viên.
2) Hãy lập bảng liệt kê các giá trị cận để kiểm thử, thiết kế các trƣờng hợp kiểm thử để kiểm tra các thông tin khi tiếp nhận nhân viên.
31. Để kiểm tra một chƣơng trình nhập vào một dãy số gồm n số nguyên (n≤100) bằng phƣơng pháp phân tích cực biên, ngƣời kiểm thử phải xây dựng mấy giá trị cho biên khi nhập số phần tử ? Cho ví dụ về bộ kiểm thử.
32. Xét chƣơng trình nhận vào ba số thực, kiểm tra ba số thực có là độ dài ba cạnh một tam giác. Nếu là độ dài ba cạnh của một tam giác, thì kiểm tra xem nó là tam giác
thƣờng, cân, đều cũng nhƣ kiểm tra đó là tam giác nhọn, vuông hay tù. Hãy xây dựng các trƣờng hợp kiểm thử bằng phƣơng pháp EP, BVA.
33. Xét một chƣơng trình thống kê phân tích một tệp chứa tên và điểm của sinh viên trong một năm học. Tệp này chứa nhiều nhất 100 trƣờng. Mỗi trƣờng chứa tên của mỗi sinh viên (20 ký tự), giới tính (1 ký tự) và điểm của 5 môn học (từ 0 đến 10). Mục đích chƣơng trình: Tính diểm trung bình mỗi sinh viên, tính điểm trung bình chung (theo giới tính và theo môn học), tính số sinh viên lên lớp (điểm trung bình trên 5). Hãy xây dựng các trƣờng hợp kiểm thử bằng phƣơng pháp BVA.
34. Xét một chƣơng trình dịch, trong đó có câu lệnh FOR, đặc tả câu lệnh FOR nhƣ sau: “Lệnh FOR chỉ chấp nhận một tham số duy nhất là biến đếm, tên biến không đƣợc sử dụng quá hai ký tự khác rỗng, sau ký hiệu = là cận dƣới và cận trên của biến đếm, các cận trên và cận dƣới là các số nguyên dƣơng và đƣợc đặt giữa từ khóa “TO”. Hãy xây dựng các trƣờng hợp kiểm thử câu lệnh FOR bằng phƣơng pháp EP.
35. Để tính thuế thu nhập, ngƣời ta phải xác định các mức giảm trừ nhƣ sau: Các khoản giảm trừ= Mức thu nhập bản thân(9 triệu) + Số ngƣời phụ thuộc*3.6 triệu + Bảo hiểm bắt buộc (9.5%).
Hãy xây dựng các trƣờng hợp kiểm thử bằng phƣơng pháp sơ đồ nguyên nhân - kết quả.
36. Xét chƣơng trình giải phƣơng trình bậc nhất dạng ax+b=0. Hãy xây dựng các trƣờng hợp kiểm thử bằng phƣơng pháp sơ đồ nguyên nhân - kết quả để kiểm tra nghiệm của phƣơng trình.
37. Xét chƣơng trình giải phƣơng trình bậc hai dạng ax2
+bx+c=0. Hãy xây dựng các trƣờng hợp kiểm thử bằng phƣơng pháp sơ đồ nguyên nhân - kết quả để kiểm tra nghiệm của phƣơng trình.
38. Xét chƣơng trình giải phƣơng trình bậc hai dạng ax2+bx+c=0 (a≠0). Hãy xây dựng các trƣờng hợp kiểm thử bằng phƣơng pháp sơ đồ nguyên nhân - kết quả để kiểm tra nghiệm của phƣơng trình.
39. Xét chƣơng trình giải bất phƣơng trình bậc nhất dạng ax+b>0. Hãy xây dựng các trƣờng hợp kiểm thử bằng phƣơng pháp sơ đồ nguyên nhân - kết quả để kiểm tra nghiệm của bất phƣơng trình.
40. Xét chƣơng trình chuyển điểm số thành điểm chữ. Biết rằng: A (8,5 - 10), B (7,0 - 8,4), C (5,5 - 6,9), D (4,0 - 5,4), F (dƣới 4,0). Hãy xây dựng các trƣờng hợp kiểm thử bằng phƣơng pháp sơ đồ nguyên nhân - kết quả để kiểm tra việc chuyển điểm số thành điểm chữ.
41. Xét chƣơng trình xác định mức học bổng. Biết rằng: - Đạt mức học bổng loại khá nếu:
+ Sinh viên có điểm trung bình chung học tập (TBCHT) loại khá và kết quả rèn luyện xếp loại khá trở lên
+ Sinh viên có điểm điểm trung bình chung học tập đạt loại giỏi hoặc xuất sắc nhƣng kết quả rèn luyện chỉ xếp loại khá.
- Đạt mức học bổng loại giỏi nếu:
+ Sinh viên có điểm TBCHT đạt loại giỏi và kết quả rèn luyện xếp loại tốt trở lên. + Sinh viên có điểm TBCHT đạt loại xuất sắc nhƣng kết quả rèn luyện chỉ xếp loại tốt.
- Đạt mức học bổng loại xuất sắc nếu sinh viên có điểm TBCHT đạt loại xuất sắc và kết quả rèn luyện xếp loại xuất sắc.
Hãy xây dựng các trƣờng hợp kiểm thử bằng phƣơng pháp sơ đồ nguyên nhân - kết quả để kiểm tra chƣơng trình xác định mức học bổng.
42. Xét chƣơng trình xác định mức giảm giá của một cửa hàng. Biết rằng giảm giá 10% cho thƣơng binh, giảm giá 5% cho con liệt sỹ, không đƣợc phép hƣởng hai tiêu chuẩn (lấy mức cao nhất). Hãy xây dựng các trƣờng hợp kiểm thử bằng phƣơng pháp sơ đồ nguyên nhân - kết quả để kiểm tra chƣơng trình xác định mức giảm giá.
43. Xét các đoạn mã sau: 1) if x <= 0 then x := -x else x := 1 -x; if x = -1 then x=1 else x := x+1; writeln(x); 2) i := 1; found::= false; while (not found) do begin
if (a[i] = E) then begin found:= true;s := i;end; i := i + 1; end; 3) if n <= 0 then n := 1-n end; if (n mod 2) = 0 then n := n / 2 else n := 3*n + 1 end ; write(n); 4) read(i); s := 0; while(i <= 3) do begin
if a[i] > 0 thens := s + a[i]; i := i + 1;
end
5)
read(inf, sup);i := inf;sum:= 0; while(i <= sup) do
begin
sum:= sum+ a[i]; i := i + 1;
end;
writeln(1/sum);
6)
function goodstring(var count : integer) : boolean; var ch : char;
begin
goodstring := false;count := 0;read(ch);
if ch = ‘a’ then begin read(ch); while(ch = ‘b’) or (ch = ‘c’) do begin count := count + 1; read(ch); end;
if ch = ‘x’ then goodstring = true; end;
end;
7)
float foo(int a, int b, int c, int d) {
float e;
if (a==0) return 0; int x = 0;
if ((a==b) || ((c==d) && bug(a))) x = 1; e = 1/x;
return e; }
8)
int Test(int a, int b, int c) {
if (a>b)
{ if (a>c) return a; else return c; } else {if (b>c) return b;else return c;} }
Hãy thiết kế các trƣờng hợp kiểm thử bằng phƣơng pháp CFG
44. Xét phần mềm quản lý bán hàng với nghiệp vụ lập phiếu thu tiền của khách hàng. Biết rằng số tiền thu tối thiểu là 100USD. Vậy nên lựa chọn loại hình kiểm thử nào.
45. Một cửa hàng cần xây dựng phần mềm quản lý bán hàng với nghiệp vụ lập phiếu thu tiền của khách hàng. Biết rằng thông tin về khách hàng đã có sẵn và đang đƣợc sử dụng. Vậy nên lựa chọn kỹ thuật kiểm thử nào.
46. Trƣờng THPT Xuân Trƣờng cần xây dựng phần mềm quản lý điểm với nghiệp vụ nhập điểm của học sinh. Biết rằng điểm tối đa là 10. Vậy nên lựa chọn loại hình kiểm thử nào để kiểm tra trƣờng điểm .
47. Trƣờng THPT Xuân Trƣờng cần xây dựng phần mềm mới để quản lý điểm với nghiệp vụ nhập điểm của học sinh. Biết rằng trên thị trƣờng đã có một phần mềm tƣơng tự đã đƣợc kiểm định chất lƣợng, có bản chạy thử miễn phí nhƣng giá thành cao. Vậy nên lựa chọn kỹ thuật kiểm thử nào cho phần mềm mới sau khi xây dựng.
48. Nêu các kỹ thuật để tăng độ tin cậy của sản phẩm phần mềm khi viết chƣơng trình. Khi viết chƣơng trình giải phƣơng trình bậc hai, ngƣời lập trình giả định rằng các lỗi của chƣơng trình có thể xảy ra khi ngƣời dùng nhập các hệ số của phƣơng trình là các kí tự chữ cái. Vậy ngƣời lập trình đã sử dụng kỹ thuật nào để tăng độ tin cậy của chƣơng trình.
49. Chọn một phƣơng án tốt nhất cho các câu hỏi sau:
1) Đâu là phƣơng pháp đánh giá về độ tin cậy của một sản phẩm phần mềm ?
a. Thử nghiệm tĩnh b. Tránh lỗi
c. Thứ lỗi d. Xử lý bất thƣờng
2) Đâu là kỹ thuật để tăng độ tin cậy của sản phẩm phần mềm khi viết chƣơng trình ?
a. An toàn phần mềm b. Đặc tả độ tin cậy phần mềm c. Xử lý bất thƣờng d. Thử nghiệm khiếm khuyết
3) Độ đo mức sẵn sàng hoạt động của hệ thống là bao nhiêu khi biết MTTF=500, MTTR=500 ?
a. 0.3 b. 0.5 c. 0.8 d. 0.6 4) Đâu là chiến lƣợc kiểm thử logic ?
a. Black Box b. Top-Down c. Bottom-Up d. Cả b và c 5) Đâu là chiến lƣợc kiểm thửtiến trình ?
a. While Box b. Top-Down