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 1

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

23
lượt xem
7
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 1 cung cấp cho người học những kiến thức như: Tại sao cần kiểm thử; Quá trình kiểm thử cơ bản; Tâm lý học kiểm thử; Kiểm thử hồi quy và kiểm thử lại; Các kết quả được mong đợi; Mức độ ưu tiên cho các kiểm thử. 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 1

  1. Chương 1 KIỂM THỬ VÀ ĐẢM BẢO CHẤT LƯỢNG PHẦN MỀM Các nguyên lý kiểm thử 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. Các nguyên lý 1 2 3 Kiểm thử phần mềm 4 5 6 Nội dung Tại sao cần kiểm thử Quá trình kiểm thử cơ bản Tâm lý học kiểm thử Kiểm thử hồi quy và kiểm thử lại Các kết quả được mong đợi Mức độ ưu tiên cho các kiểm thử 2
  3. Các thuật ngữ cơ bản Kiểm thử (IEEE): Kiểm thử là tiến trình vận hành hệ thống hoặc thành phần dưới những điều kiện xác định, quan sát hoặc ghi nhận kết quả và đưa ra đánh giá về hệ thống hoặc thành phần đó 3
  4. Một “bug” là gì? Error (lỗi): một hành động của con người tạo ra một kết quả không đúng. Fault (sai sót): là biểu hiện của một lỗi (error) trong phần mềm ­ Nó cũng được biết đến như là một khiếm khuyết  (deffect) hay một bug ­ Nếu được thực thi một sai sót (fault) có thể gây ra một  thất bại Failure (thất bại): sự lệch lạc của phần mềm so với kết quả và dịch vụ được mong đợi Failure Failurelà làmột một sự sựkiện, kiện, fault faultlà làmột một trạng trạngthái tháigây gâyra rabởi bởimột mộterror error 4
  5. Error ­ Fault ­ Failure Một người tạo ra một error... … nó tạo ra một fault trong phần mềm... …nó có thể gây ra một failure trong vận hành phần mềm 5
  6. Độ tin cậy và sai sót Độ tin cậy: là xác xuất để phần mềm chạy không có thất bại trong một khoảng thời gian nhất định dưới những điều kiện nhất định ­ Một hệ thống có thể không có sai sót (không có sai  sót, đúng ngay từ lần đầu tien) ­ Một hệ thống phần mềm có thể đáng tin cậy  nhưng vẫn có lỗi không? ­ Một ứng dụng phần mềm không sai sót “fault­ free” có phải luôn luôn tin cậy không?  6
  7. Tại sao xẩy ra sai sót trong phần  mềm? Phần mềm được viết bởi con người ­ Con người biết một số thứ chứ không biết mọi thứ ­ Con người có các kỹ năng nhưng không phải là hoàn hảo ­ Con người tạo ra sai lầm (lỗi) Phát triển phần mềm dưới các sức ép giới hạn nghiệm ngặt ­ Không có thời gian để kiểm tra những giả định có thể sai ­ Các hệ thống có thể không hoàn chỉnh Nếu bạn đã từng viết phần mềm bạn sẽ….. 7
  8. Chi phí lỗi phần mềm là bao nhiêu? Các khoản tiền rất lớn ­ Ariane 5 ($7billion) ­ Mariner space probe to Venus ($250m) ­ American Airlines ($50m) Rất nhỏ hoặc không có gì ­ Một sự bất tiện nhỏ ­ Tác động bất lợi không thấy được hoặc vô hình Phần mềm không tuyến tính ­ Đầu vào nhỏ có thể có tác động rất lớn 8
  9. Các hệ thống an toàn – quan trọng Lỗi phần mềm có thể gây tử vong hoặc chấn thương ­ Điều trị bằng bức xạ gây chết bệnh nhân(Therac­ 25) ­ Tai nạn máy bay (Airbus & Korean Airlines) ­ Thư nháp thấu chi ngân hàng gây ra các vụ tự tử 9
  10. Tại sao kiểm thử là cần thiết? ­ Bởi vì phần mềm có khả năng bị sai sót ­ Để học về độ tin cậy của phần mềm ­ Để lập đầy khoảng thời gian chuyển giao giữa  phân phối phần mềm và ngày phát hành ­ Để chứng minh phần mềm không có sai sót ­ Bởi vì kiểm thử nằm trong kế hoạch dự án ­ Bởi vì thất bại có thể rất đắt đỏ ­ Để tránh bị khách hang kiện ­ Để tồn tại trong kinh doanh 10
  11. Tại sao không kiểm thử mọi thứ? Avr. 4 menus 3 options / menu Hệ thống có Average: 10 fields / screen 20 màn hình 2 types input / field (date as Jan 3 or 3/1) (number as integer or decimal) Around 100 possible values Total for 'exhaustive' testing: 20 x 4 x 3 x 10 x 2 x 100 = 480,000 tests If 1 second per test, 8000 mins, 133 hrs, 17.7 days (not counting finger trouble, faults or retest) 10 secs = 34 wks, 1 min = 4 yrs, 10 min = 40 yrs 11
  12. Kiểm thử toàn diện? Kiểm thử toàn diện là gì ­ Khi tất cả các tester kiệt sức ­ Khi tất cả các kiểm thử được lên kế hoạch  được  thực hiện ­ Thực hiện tất cả các kết hợp giữa đầu vào và tiền  điều kiện Bỏ bao nhiêu thời gian để kiểm thử toàn diện? ­ Thời gian vô hạn ­ Không mất nhiều thời gian lắmnot much time ­ Một khoảng thời gian không thực tế 12
  13. Kiểm thử bao nhiêu thì là đủ? ­ Không bao giờ là đủ ­ Khi bạn thực hiện xong cái mà bạn đã lên kế  hoạch ­ Khi khách hang/ người dung cảm thấy vui vẻ ­ Khi bạn chứng minh được là hệ thống làm việc  đúng đắn ­ Khi bạn tự tin là hệ thống của bạn làm việc đúng  đắn ­ Nó phụ thuộc vào rủi ro cho hệ thống của bạn 13
  14. Vậy thì kiểm thử bao nhiêu? Nó phụ thuộc vào rủi ro ­ Rủi ro của các sai sót quan trọng còn thiếu ­ Rủi ro của chi phí thất bại phát sinh ­ Rủi ro của phần mềm chưa được kiểm tra hoặc  đang kiểm tra ­ Rủi ro của việc chia sẻ thị trường và mất uy tín ­ Rủi ro của việc thiếu cánh cửa thị trường ­ Rủi ro của các kiểm thử không hiệu quả  rủi ro  này còn lớn hơn cả chưa kiểm thử 14
  15. Vì ít thời gian nên phải kiểm tra  nhiều Thời gian kiểm tra sẽ luôn luôn bị giới hạn Sử dụng rủi ro để quyết định ­ Kiểm thử cái gì trước ­ Kiểm thử cái gì nhiều nhất ­ Làm thế nào để kiểm tra kỹ từng hạng mục ­ Cái gì không kiểm tra (tại thời điểm này) Sử dụng rủi ro để ­ Phân bổ thời gian sẵn có cho việc kiểm thử bằng  cách phân quyền ưu tiên kiểm thử ... 15
  16. Kiểm thử và chất lượng Kiểm thử là thước đo chất lượng phần mềm Kiểm thử có thể tìm ra lỗi; khi chúng bị loại đi chất lượng phần mềm có thể được cải thiện Kiểm thử kiểm tra những cái gì ­ Chức năng hệ thống, tính chính xác của các hoạt  động ­ Chất lương phi chức năng: độ tin cậy, tính sử  dụng, khả năng bảo trì, tái sử dụng, khả năng  kiểm thử được 16
  17. Các nhân tố khác tác động đến  kiểm thử Các yêu cầu hợp đồng Yêu cầu pháp lý Các yêu cầu đặc trù công nghiệp Thật Thật là là khó khó khan khanđể đểquyết quyết định định kiểm kiểm thử thử bao bao nhiêu nhiêu là làđủ đủ nhưng nhưngnó nókhông khôngcócónghĩa nghĩalàlà không không thể thể 17
  18. Các nguyên lý 1 2 3 Kiểm thử phần mềm 4 5 6 Nội dung Tại sao cần kiểm thử Quá trình kiểm thử cơ bản Tâm lý học kiểm thử Kiểm thử hồi quy và kiểm thử lại Các kết quả được mong đợi Mức độ ưu tiên cho các kiểm thử 18
  19. Kế hoạch kiểm thử ­ các mức độ khác  nhau Chính sách kiểm thử Mức độ công ty Chiến lược kiểm thử Kế hoạch kiểm thử Mức độ dự án (IEEE 829) High Level mức cao Test Plan Kế hoạch Mức độ giai đoạn kiểm thử(IEEE 829) Detailed Kiểm thử Detailed (vd giai đoạn kiểm thử hệ thống, chiDetailed Test tiết Plan Test TestPlan Plan thành phần) 19
  20. Tiến trình kiểm thử Lên kế hoạch (mức độ chi tiết) Kiểm tra sự  Đặc tả Thực thi Ghi chép hoàn thành 20
ADSENSE

CÓ THỂ BẠN MUỐN DOWNLOAD

 

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