intTypePromotion=1
zunia.vn Tuyển sinh 2024 dành cho Gen-Z zunia.vn zunia.vn
ADSENSE

Bài giảng Kiểm thử và đảm bảo chất lượng phần mềm: Chương 2

Chia sẻ: _ _ | Ngày: | Loại File: PPT | Số trang:27

23
lượt xem
6
download
 
  Download Vui lòng tải xuống để xem tài liệu đầy đủ

Bài giảng Kiểm thử và đảm bảo chất lượng phần mềm: Chương 2 Kiểm thử trong vòng đời phát triển phần mềm, cung cấp cho người học những kiến thức như: Vòng đời kiểm thử; Kiểm thử đơn vị; Kiểm thử tích hợp; Kiểm thử hệ thống; Kiểm thử chấp nhận. Mời các bạn cùng tham khảo!

Chủ đề:
Lưu

Nội dung Text: Bài giảng Kiểm thử và đảm bảo chất lượng phần mềm: Chương 2

  1. Chương 2 KIỂM THỬ VÀ ĐẢM BẢO CHẤT LƯỢNG PHẦN MỀM KIỂM THỬ TRONG VÒNG ĐỜI PHÁT TRIỂN PHẦN MỀM 1 Các nguyên lý 2 Vòng đời 3 Kỹ thuật kiểm thử 4 Kiểm thử chức năng 5. Kiểm thử cấu trúc 6 Quản lý chất lượng 1
  2. Vòng đời 1 2 3 Kiểm thử phần mềm 4 5 6 Nội dung Vòng đời kiểm thử Kiểm thử đơn vị Kiểm thử tích hợp Kiểm thử hệ thống Kiểm thử chấp nhận 2
  3. Vòng đời của kiểm thử phần mềm 3
  4. Vòng đời của kiểm thử phần  mềm… Quá trình sửa lỗi bao gồm - Phân loại lỗi, cô lập lỗi  tìm ra nguyên nhân và nơi gây lỗi - Đưa ra giải pháp sửa lỗi - Khắc phục lỗi 4
  5. Phân loại kiểm thử Theo mức độ chi tiết - Kiểm thử đơn vị - Kiểm thử hệ thống - Kiểm thử tích hợp Dựa trên phương pháp thử nghiệm (thường dùng ở mức kiểm thử đơn vị) - Kiểm thử hộp đen  kiểm tra chức năng - Kiểm thử hộp trắng kiểm tra cấu trúc 5
  6. Kiểm thử hộp đen • Còn gọi là kiểm thử hàm, kiểm thử chức năng • Tập trung vào hành vi vào/ra. Với đầu vào đã biết ra có thể đoán/tính đầu ra, rồi kiểm tra chương trình có tạo kết quả như ta đoán/tính. – Không thể kiểm thử hết các bộ dữ liệu đầu vào • Bài toán đặt ra là giảm số lượng ca kiểm thử bằng việc chia không gian đầu vào thành các miền tương đương – Sau đó chọn một ca kiểm thử từ mỗi miền tương đương này. 6
  7. Kiểm thử hộp trắng Còn gọi là kiểm thử cấu trúc, kiểm thử logic Các tiêu chuẩn bao phủ Lệnh - Mọi lệnh đều được thử Vòng lặp - 0, 1, >1 lần Đường đi - Tất cả các khả năng chạy của chương trình Nhánh (if, while, ..) - Biểu thức điều kiện được thử với cả True và False • Các nhánh đều được chạy ít nhất một lần • 7
  8. So sánh kiểm thử hộp trắng và hộp đen Hộp trắng Cần cả hai - Số đường đi nhiều khi là vô hạn Kiểm thử hộp trắng và hộp - Kiểm tra những gì đã làm, không đen là hai thái cực của kiểm phải những gì cần được làm thử - Không phát hiện được ca kiểm Việc lựa chọn ca kiểm thử thử còn thiếu nằm giữa và phụ thuộc vào - thích hợp cho kiểm thử hệ thống - Số đường đi logic có thể và tích hợp Hộp đen - Tính chất của dữ liệu đầu - Dễ bùng nổ tổ hợp về số ca kiểm vào thử (dữ liệu đúng và dữ liệu sai) - Khối lượng tính toán - Thường không chắc ca kiểm thử - Độ phức tạp của cấu trúc này có phát hiện được lỗi cụ thể dữ liệu và giải thuật kia hay không Hai kỹ thuật là bổ sung cho - Thích hợp cho kiểm thử đơn vị nhau. và tích hợp. • 8
  9. Mô hình chữ V 9
  10. Vòng đời 1 2 3 Kiểm thử phần mềm 4 5 6 Nội dung Vòng đời kiểm thử Kiểm thử đơn vị Kiểm thử tích hợp Kiểm thử hệ thống Kiểm thử chấp nhận 10
  11. Kiểm thử đơn vị Kiểm thử các lớp, hàm, đối tượng, gói, mô- đun Sử dụng kỹ thuật hộp đen Dữ liệu tạo ra dựa trên tài liệu thiết kế Có thể sử dụng cả kiểm thử hộp trắng và kiểm thử tĩnh với các phần mềm yêu cầu chất lượng cao Thường thực hiện trên phần cứng phát triển phần mềm 11
  12. Môi trường kiểm thử đơn vị Bộ điều khiển Các ca kiểm thử Kết quả kiểm thử Đơn vị được kiểm thử Stub Stub Mô-đun giả lập 12
  13. Vòng đời 1 2 3 Kiểm thử phần mềm 4 5 6 Nội dung Vòng đời kiểm thử Kiểm thử đơn vị Kiểm thử tích hợp Kiểm thử hệ thống Kiểm thử chấp nhận 13
  14. Kiểm thử tích hợp Phát hiện vấn đề khi ghép các đơn vị, mô-đun/thành phần với nhau, sau khi đã thực hiện kiểm thử đơn vị Các vấn đề ghép nối – Bên trong: giữa các thành phần( Gọi: call/message passing/…); Tham số( kiểu, số lượng, thứ tự, giá trị); Kết quả trả về (ai, kiểu, trình tự) – Bên ngoài: Ngắt (wrong handler?); Thời gian vào ra - Tương tác Sử dụng kỹ thuật hộp đen Một số trường hợp có thể sử dụng kỹ thuật hộp trắng nhưng chi phí cao, khó khăn Dữ liệu thử được tạo ra dựa trên thiết kế tổng thể 14
  15. Tích hợp Big­Bang Lý thuyết: - Nếu chúng ta có các thành phần đã từng kiểm thử tại sao chúng ta không kết nối chúng với nhau cùng lúc? Điều này sẽ tiếp kiệm thời gian không? Thực hiện: - Mất nhiều thời gian để định vị lỗi và sửa lỗi - Tái kiểm thử sau khi sửa lỗi có phổ rộng hơn - Kết quả cuối cùng?  Mất nhiều thời gian hơn 15
  16. Tích hợp gia tăng Baseline 0: tested component Baseline 1: two components Baseline 2: three components, etc. Thuận lợi: - Vị trí lỗi dễ định vị và sửa chữa hơn - Khôi phục dễ sau các vấn đề và biến động xấu - Giao tiếp nên được kiểm thử trong các kiểm thử thành phần, NHƯNG… - Thêm vào đường cơ sở đã được kiểm thử 16
  17. Tích hợp Top­Down Baselines: ­ baseline 0: component a a ­ baseline 1: a + b b c ­ baseline 2: a + b + c ­ baseline 3: a + b + c + d ­ etc. d e f g Cần gọi tới các thành h i j k l m phần mức thấp hơn chưa được tích hợp n o Stubs: mô tả các thành phần còn thiếu 17
  18. Tích hợp Bottom­up Baselines: ­ baseline 0: component n a ­ baseline 1: n + i b c ­ baseline 2: n + i + o ­ baseline 3: n + i + o + d d e f g ­ etc. Cần trình điều kiển để h i j k l m gọi cấu hình đường cơ sở Cũng cần stub cho vài n o đường cơ sở 18
  19. Tích hợp khả năng tối thiểu Baselines: a ­ baseline 0: component a ­ baseline 1: a + b b c ­ baseline 2: a + b + d ­ baseline 3: a + b + d + i d e f g ­ etc. h i j k l m Cần các stubs Không nên cần trình n o điều khiển (nếu top-down) 19
  20. Tích hợp tiểu trình (thread) Thứ tục xử lý một vài sự kiện quyết định thứ tự tích hợp a Ngắt, giao dịch người dùng b c Khả năng tối thiểu hóa về thời gian d e f g Thuận lợi: h i j k l m ­ Tiến trình xử lý chính trước ­ Cảnh báo sớm các vấn đề thựnc hiệon Bất lợi: ­ Có thể cần module giả lập và trình điều khiển  20
ADSENSE

CÓ THỂ BẠN MUỐN DOWNLOAD

 

Đồng bộ tài khoản
2=>2