Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 144 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
144
Dung lượng
5,34 MB
Nội dung
ỦY BAN NHÂN DÂN TP HỒ CHÍ MINH TRƯỜNG CAO ĐẲNG CÔNG NGHỆ THỦ ĐỨC KHOA CÔNG NGHỆ THÔNG TIN GIÁO TRÌNH HỌC PHẦN: KIỂM THỬ PHẦN MỀM NGÀNH/NGHỀ: CƠNG NGHỆ THƠNG TIN TRÌNH ĐỘ: CAO ĐẲNG Ban hành kèm theo Quyết định số: /QĐ-CNTĐ-CN ngày tháng….năm của……………………………… TP Hồ Chí Minh, năm 2019 i TUYÊN BỐ BẢN QUYỀN Tài liệu thuộc loại sách giáo trình nên nguồn thơng tin phép dùng nguyên trích dùng cho mục đích đào tạo tham khảo Mọi mục đích khác mang tính lệch lạc sử dụng với mục đích kinh doanh thiếu lành mạnh bị nghiêm cấm LỜI GIỚI THIỆU Giáo trình Kiểm thử phần mềm nhằm trang bị cho sinh viên kiến thức lĩnh vực Kiểm thử phần mềm theo chuẩn ISTQB bao gồm khái niệm bản, nguyên lý kiểm thử, quy trình kiểm thử, đặc trưng yêu cầu xã hội ngành kiểm thử phần mềm Qua giáo trình, sinh viên lĩnh hội kiến thức mức độ kiểm thử phần mềm, loại kiểm thử, kỹ thuật thiết kế kiểm thử quy trình quản lý kiểm thử phần mềm Đồng thời qua tập thực hành giáo trình, sinh viên thực viết Test Cases kiểm thử dự án phần mềm nhỏ để hình thành kỹ kiểm thử Thông qua thực kiểm thử dự án này, sinh viên hình thành kỹ tham gia làm việc nhóm, ví dụ: kỹ tổ chức nhóm, kỹ giao tiếp nhóm, kỹ thuyết trình, Giáo trình bao gồm chương sau: Chương 1: Tổng quan Kiểm thử phần mềm Chương 2: Kiểm thử vòng đời phần mềm Chương 3: Kỹ thuật tĩnh Chương 4: Các kỹ thuật thiết kế kiểm thử Chương 5: Quản lý kiểm thử ii LỜI CẢM ƠN Xin chân thành cảm ơn Ban Giám Hiệu trường Cao đẳng Công nghệ Thủ Đức hỗ trợ, tạo điều kiện tốt để giảng viên tham gia biên soạn giáo trình đào tạo mơn học Kiểm thử phần mềm Xin chân thành cảm ơn Phịng Khoa học Cơng nghệ Trường Cao đẳng Công nghệ Thủ Đức tạo điều kiện thuận lợi để giảng viên thực đầy đủ nhiệm vụ biên soạn giáo trình đào tạo Xin chân thành cảm ơn Khoa Cơng nghệ thông tin hỗ trợ tối đa để giảng viên hồn thành Giáo trình cách tốt Xin chân thành cảm ơn ! TP.HCM, ngày .tháng năm 2019 Tham gia biên soạn Chủ biên Phan Gia Phước iii MỤC LỤC TRANG TỰA TRANG LỜI GIỚI THIỆU II DANH MỤC CÁC CHỮ VIẾT TẮT VII DANH MỤC CÁC HÌNH .VIII CHƯƠNG 1: TỔNG QUAN VỀ KIỂM THỬ PHẦN MỀM 1.1 Sự cần thiết kiểm thử 1.1.1 Ngữ cảnh hệ thống phần mềm 1.1.2 Nguyên nhân gây lỗi phần mềm 1.1.3 Vai trò kiểm thử phát triển, vận hành bảo trì phần mềm 1.1.4 Kiểm thử chất lượng 1.1.5 Kiểm thử đủ? 1.2 Kiểm thử gì? 1.3 Bảy nguyên lý kiểm thử phần mềm 1.4 Quy trình tổng quát kiểm thử phần mềm 10 1.4.1 Lập kế hoạch kiểm soát việc kiểm thử 11 1.4.2 Phân tích thiết kế kiểm thử 11 1.4.3 Thực kiểm thử 11 1.4.4 Đánh giá tiêu chí xuất báo cáo 12 1.4.5 Hoạt động kết thúc kiểm thử 12 1.5 Tâm lý kiểm thử 12 1.6 Hướng dẫn cách viết Test Cases 13 1.6.1 Hướng dẫn tạo Test Cases (cơ bản) 13 1.6.2 Cách để viết Test Cases tốt 17 CHƯƠNG 2: KIỂM THỬ TRONG VÒNG ĐỜI PHẦN MỀM 21 2.1 Các mơ hình phát triển phần mềm 21 2.1.1 Mơ hình V 21 2.1.2 Mô hình phát triển lặp lại tăng thêm 22 2.1.3 Kiểm thử mơ hình vịng đời phần mềm 23 2.2 Các mức độ kiểm thử 23 2.2.1 Kiểm thử đơn vị (Component testing) 23 2.2.2 Kiểm thử tích hợp 24 iv 2.2.3 Kiểm thử hệ thống 25 2.2.4 Kiểm thử chấp nhận 26 2.3 Các loại kiểm thử 27 2.3.1 Kiểm thử chức 27 2.3.2 Kiểm thử phi chức 27 2.3.3 Kiểm thử cấu trúc 27 2.3.4 Kiểm thử liên quan đến thay đổi: Kiểm thử xác nhận kiểm thử hồi quy 28 2.4 Kiểm thử bảo trì 28 CHƯƠNG 3: KỸ THUẬT TĨNH 32 3.1 Kỹ thuật tĩnh quy trình kiểm thử 32 3.2 Tiến trình Review 33 3.2.1 Những giai đoạn buổi Review thức 33 3.2.2 Vai trò trách nhiệm 34 3.2.3 Các loại Review 35 3.2.4 Các yếu tố giúp buổi Review thành công 36 CHƯƠNG 4: CÁC KỸ THUẬT THIẾT KẾ KIỂM THỬ 41 4.1 Quy trình phát triển kiểm thử phần mềm 41 4.2 Phân loại kỹ thuật thiết kế kiểm thử 42 4.3 Kỹ thuật kiểm thử Hộp đen Kiểm thử dựa đặc tả 43 4.3.1 Kỹ thuật phân vùng tương đương 43 4.3.2 Kỹ thuật phân tích giá trị biên 45 4.3.3 Kiểm thử dựa Bảng định 47 4.3.4 Kiểm thử chuyển trạng thái 48 4.3.5 Kiểm thử theo mơ hình Use Case 49 4.4 Kỹ thuật kiểm thử hộp trắng kiểm thử dựa cấu trúc 49 4.4.1 Kiểm thử bao phủ câu lệnh (Statement Coverage) 49 4.4.2 Kiểm thử bao phủ định 51 4.5 Kỹ thuật kiểm thử dựa kinh nghiệm 52 4.5.1 Đoán lỗi 53 4.5.2 Kiểm thử thăm dò 53 4.6 Lựa chọn kỹ thuật kiểm thử 54 CHƯƠNG 5: QUẢN LÝ KIỂM THỬ 57 5.1 Tổ chức kiểm thử 57 5.1.1 Tổ chức kiểm thử độc lập 57 v 5.1.2 Nhiệm vụ Test Leader Tester 59 5.2 Lập kế hoạch ước lượng kiểm thử 60 5.2.1 Lập kế hoạch kiểm thử 60 5.2.2 Những hoạt động lập kế hoạch kiểm thử 62 5.2.3 Tiêu chí đầu vào 63 5.2.4 Tiêu chí xuất (Exit criteria) 64 5.2.5 Ước lượng kiểm thử 65 5.2.6 Hướng tiếp cận kiểm thử (chiến lược kiểm thử) 66 5.3 Giám sát điều khiển tiến độ kiểm thử 68 5.3.1 Giám sát tiến độ kiểm thử 68 5.3.2 Báo cáo kiểm thử 69 5.3.3 Kiểm soát kiểm thử 70 5.4 Quản lý cấu hình 70 5.4.1 Tại cần Quản lý cấu hình? 70 5.4.2 Hoạt động quản lý cấu hình 71 5.5 Kiểm thử rủi ro 77 5.5.1 Rủi ro dự án 77 5.5.2 Rủi ro sản phẩm 78 5.6 Quản lý cố (quản lý lỗi) 79 TÀI LIỆU THAM KHẢO 82 PHỤ LỤC 83 PHỤ LỤC 127 PHỤ LỤC 130 vi DANH MỤC CÁC CHỮ VIẾT TẮT STT Nội dung viết tắt Ký hiệu chữ viết tắt International Software Testing Qualifications Board ISTQB Kiểm thử phần mềm KTPM Quản lý cấu hình QLCH Test Cases TCs vii DANH MỤC CÁC HÌNH HÌNH TRANG Hình 1.1: Các trường hợp lỗi phát triển phần mềm Hình 1.2: Lỗi phát sớm chi phí sửa lỗi .3 Hình 1.3: Nguyên lý – kiểm thử tồn khơng thể .6 Hình 1.4: Nguyên lý – kiểm thử sớm .7 Hình 1.5: Nguyên tắc 80/20 kiểm thử phần mềm Hình 1.6: Nguyên lý - nghịch lý thuốc trừ sâu .9 Hình 1.7: Nguyên lý - kiểm thử phụ thuộc vào ngữ cảnh 10 Hình 2.1: Mơ hình V 21 Hình 2.2: Mơ hình phát triển lặp lại tăng thêm 22 Hình 2.3: Stub Driver kiểm thử phần mềm 24 Hình 2.4: Kiểm thử hệ thống (System tests) .26 Hình 4.1: Vịng đời Test Cases 42 Hình 4.2: Các kỹ thuật kiểm thử động 43 Hình 4.3: Kỹ thuật phân vùng tương đương .45 Hình 4.4: Kiểm thử dựa Bảng định 48 Hình 4.5: Kiểm thử chuyển trạng thái .49 Hình 5.1: Các yêu cầu dự án thành công .61 Hình 5.2: Quy trình xây dựng kế hoạch kiểm thử 62 Hình 5.3: Uớc lượng kiểm thử .66 Hình 5.4: Hướng tiếp cận dựa mơ hình .67 Hình 5.5: Giám sát tiến độ kiểm thử 68 Hình 5.6: Mơ hình quản lý rủi ro 79 viii GIÁO TRÌNH HỌC PHẦN Tên học phần: KIỂM THỬ PHẦN MỀM Mã học phần: CNC107400 Vị trí, tính chất, ý nghĩa vai trò học phần: Học phần nhằm trang bị cho sinh viên kiến thức lĩnh vực Kiểm thử phần mềm theo chuẩn ISTQB bao gồm khái niệm bản, nguyên lý kiểm thử, quy trình kiểm thử, đặc trưng yêu cầu xã hội ngành kiểm thử phần mềm Sinh viên trang bị kiến thức mức độ kiểm thử phần mềm, loại kiểm thử, kỹ thuật thiết kế kiểm thử quy trình quản lý kiểm thử phần mềm Đồng thời, sinh viên thực viết Test Cases kiểm thử dự án phần mềm nhỏ để hình thành kỹ kiểm thử Thơng qua thực kiểm thử dự án này, sinh viên hình thành kỹ tham gia làm việc nhóm, ví dụ: kỹ tổ chức nhóm, kỹ giao tiếp nhóm, kỹ thuyết trình, Mục tiêu học phần: - Hiểu cách hệ thống khái niệm bản, nguyên lý kiểm thử, quy trình kiểm thử, đặc trưng yêu cầu xã hội ngành kiểm thử phần mềm - Hiểu cách có hệ thống mức độ kiểm thử phần mềm, loại kiểm thử, kỹ thuật thiết kế kiểm thử quy trình quản lý kiểm thử phần mềm - Hình thành kỹ tham gia làm việc nhóm để kiểm thử dự án nhỏ - Tự tổ chức quản lý hoạt động kiểm thử dự án nhỏ theo quy định - Viết Test Cases (cover hết SRS) cho dự án nhỏ theo yêu cầu - Thực thi kiểm thử viết Defect List để báo cáo lỗi tìm phần mềm - Tham gia cách chủ động tích cực vào cơng việc giao - Viết báo cáo trình bày kết kiểm thử thực nhóm theo hướng dẫn ix Nội dung học phần: Đề cương nội dung học phần gồm chương sau: Chương 1: Tổng quan Kiểm thử phần mềm Chương 2: Kiểm thử vòng đời phần mềm Chương 3: Kỹ thuật tĩnh Chương 4: Các kỹ thuật thiết kế kiểm thử Chương 5: Quản lý kiểm thử x 2.2 Data Format 2.2.1 Date/Time Format Default date format is mm/dd/yy For example: 05/29/14 Default time format is hh:mm:ss For example: 07:23:55 2.2.2 Number Format No zero at prefix File size: xx.x KB For example: 192.3 KB Available size: xx KB For example: 456 KB Order number has no comma separated For example: 12345 Decimal places of % is For example: 25.7% 2.3 Order of reference data 2.3.1 QC Activity 10-Unit test (Type of Activity = Test) 11-Integration test (Type of Activity = Test) 12-System test (Type of Activity = Test) 13-Acceptance test (Type of Activity = Test) 14-Regression test (Type of Activity = Test) 15-After release test (Type of Activity = Test) 16-Other test (Type of Activity = Test) 17-Prototype test (Type of Activity = Test) 20-Document review (Type of Activity = Review) 21-Code review (Type of Activity = Review) 22-After release review (Type of Activity = Review) 23-Prototype review (Type of Activity = Review) 24-Other review (Type of Activity = Review) 30-Quality gate inspection (Type of Activity = Inspection) 31-Final inspection (Type of Activity = Inspection) 32Other inspection (Type of Activity = Inspection) 120 33-UT inspection (Type of Activity = Inspection) 40-Baseline audit (Type of Activity = Audit) 41-Other audit (Type of Activity = Audit) 2.3.2 Defect Origin Administration Coding Collaborator Management Configuration Management Contract Management Correction Customer Support Deployment Design Document Control Facility Management IS Management Internal Audit Management Review Other Prevention Process Improvement Project Management Quality Control Quality Planning Recruitment Requirement Retirement Staff Management Student Management 121 Subcontract Management Technology management Test Training 2.3.3 Type of Activity Review Test Inspection Audit 2.3.4 Stage Injected / Stage Detected 1-Initiation 2-Definition 3-Solution 4-Construction 5-Transition 6-Termination Definition&Solution Initiation&Definition Release Release Release Release Release Release Solution&Construction 2.3.5 Priority 1-Immediately 122 2-High 3-Normal 4-Low 2.3.6 Work product Acceptance note Architectural design Audit program Audit record Audit report Baseline Audit Baseline report CM Plan Change request Coding convention Configuration Status Report Contract Customer Satisfaction Survey DAR Report DP Plan DP report Database Deployment package Design prototype Detailed design Final inspection Handover note IP IP database Installation manual Integration test case Integration test plan Integration test report Meeting minutes Others PCB PQA report Pilot plan Pilot record Pilot report Plan Process assets Process database Program Project assests Project database Project plan Project record Project report Proposal Prototype QA report QA review record QDS 123 Quality control report Quality gate record Record Release note Report Requirement prototype Resource and environment Review TestCase Review record SQA report SRS Service Level Agreement Software module Software package Support Diary System description System test case System test plan System test report Test data Test plan Test script Traceability matrix Training course Training material Training records URD Unit test case Unit test plan Unit test report Use case User manual and WO 2.3.7 Severity 1-Fatal 2-Serious 3-Medium 4-Cosmetic 2.3.8 Module / Module Code 2.3.9 Type 01-Functionality (Other) 011-Req misunderstanding 012-Feature missing 013-Coding logic 014-Business logic 02-User Interface 124 03-Performance 04-Design issue 05-Coding standard 06-Document 07-Data & Database integrity 08-Security & Access Control 09-Portability 10-Other 11-Tools 2.3.10 Defect owner, Assigned To, All member of project are ordered by alphabet : … 2.3.11 Status 1-Error 2-Assigned 3-Pending 4-Tested 5-Accepted 6-Canceled 2.4 Timeout requirement All screens have timeout of hour After timeout, user has to re-login, and does his/her previous step by step once again 2.5 Message list Message Code ERR_FORMAT_DATE_CREATED ERR_FORMAT_DATE_CREATED_FROM ERR_FORMAT_DATE_CREATED_TO ERR_FORMAT_DATE_FIXED ERR_FORMAT_DATE_FIXED_FROM ERR_FORMAT_DATE_FIXED_TO ERR_FORMAT_DATE_DUE ERR_REQUIRED_SEVERITY English Content Created Date is invalid "From Created Date" is invalid "To Created Date" is invalid "Fixed Date" is invalid "From Fixed Date" is invalid "To Fixed Date" is invalid "Deadline" is invalid "Severity" is required 125 ERR_REQUIRED_TYPE ERR_REQUIRED_TYPE_ACTIVITY ERR_REQUIRED_QC_ACTIVITY ERR_REQUIRED_ORIGIN ERR_REQUIRED_WP ERR_REQUIRED_CREATED_DATE ERR_REQUIRED_TITLE ERR_REQUIRED_DESCRIPTION ERR_REQUIRED_STATUS ERR_REQUIRED_DEFECT_ORIGIN ERR_DEFECT_ID_INVALID ERR_REQUIRED_ATTACHMENT_FILE ERR_FILE_OVER_AVAILABLE_SIZE ERR_FILE_OVER_MAX_FILE_SIZE ERR_EXISTED_FILE_NAME ERR_CONSTRAINT_DATE_CREATED_FROMTO ERR_CONSTRAINT_DATE_FIXED_FROMTO ERR_CONSTRAINT_DATE_CREATED_TODAY ERR_CONSTRAINT_DATE_CREATED_DUE ERR_CONSTRAINT_DATE_CREATED_FIXED ERR_CONSTRAINT_DATE_FIXED_TODAY ALT_PAGE_INVALID ALT_REQUIRED_DEFECT ALT_REQUIRED_EXPORT_LIST "Type" is required "Type of Activity" is required "QC Activity" is required "Defect Origin" is required "Work Product" is required "Created Date" is required "Title" is required "Description" is required Ignore this message because status cannot be blank Ignore this message because defect origin cannot be blank Defect ID must be positive number Please select at least one file to attach Attachment size exceeds available space Attach size exceeded The attached file already exists! "From Created Date" cannot be later than "To Created Date" "From Fixed Date" cannot be later than "To Fixed Date" "Created Date" cannot be later than today "Created Date" cannot be later than "Deadline" "Created Date" cannot be later than fixed date "Fixed Date" cannot be later than today Your number is out of range Defect(s) is required Some items must be selected 126 PHỤ LỤC Hướng dẫn cách tạo file Q&A List: 127 128 129 PHỤ LỤC Test Cases mẫu kiểm thử chức đăng ký tài khoản: 130 131 132 133 134 ... trì phần mềm 1. 1.4 Kiểm thử chất lượng 1. 1.5 Kiểm thử đủ? 1. 2 Kiểm thử gì? 1. 3 Bảy nguyên lý kiểm thử phần mềm 1. 4 Quy trình tổng quát kiểm thử phần mềm. .. CHƯƠNG 1: TỔNG QUAN VỀ KIỂM THỬ PHẦN MỀM 1. 1 Sự cần thiết kiểm thử 1. 1 .1 Ngữ cảnh hệ thống phần mềm 1. 1.2 Nguyên nhân gây lỗi phần mềm 1. 1.3 Vai trò kiểm thử phát... 10 1. 4 .1 Lập kế hoạch kiểm soát việc kiểm thử 11 1. 4.2 Phân tích thiết kế kiểm thử 11 1. 4.3 Thực kiểm thử 11 1. 4.4 Đánh giá tiêu chí xuất báo cáo 12 1. 4.5