Bài giảng Kiểm thử phần mềm - Bài 2: Quy trình kiểm thử phần mềm - Nguyễn Thị Thanh Trúc
2.1.1 Khái niệm Quy trình kiểm thử PM
• Khái niệm Quy trình (theo IEEE): là một tập
hợp các bước có thứ tự được thực hiện cho
một mục đích cụ thể
• Quy trình kiểm thử phần mềm một tập các
hoạt động, các phương thức mà con
người phải làm để thực hiện việc kiểm
thử cho một phần mềm hay một hệ thống
phần mềm
Trang 1
Trang 2
Trang 3
Trang 4
Trang 5
Trang 6
Trang 7
Trang 8
Trang 9
Trang 10
Tải về để xem bản đầy đủ
Bạn đang xem 10 trang mẫu của tài liệu "Bài giảng Kiểm thử phần mềm - Bài 2: Quy trình kiểm thử phần mềm - Nguyễn Thị Thanh Trúc", để tải tài liệu gốc về máy hãy click vào nút Download ở trên
Tóm tắt nội dung tài liệu: Bài giảng Kiểm thử phần mềm - Bài 2: Quy trình kiểm thử phần mềm - Nguyễn Thị Thanh Trúc
put: Test cases, test data, test scripts – Output: Test report, Defect list 12 2.2.1 Lập kế hoạch kiểm thử • Test Manager hoặc Test Leader sẽ xây dựng kế hoạch ban đầu về kiểm thử: – Định nghĩa phạm vi kiểm thử – Nhận dạng các yếu tố để kiểm thử – Ước lượng kiểm thử – Chiến lược kiểm thử – Xây dựng môi trường kiểm thử – • Kế hoạch kiểm thử cần được: – Xem lại bởi QA, Business Analysis, PM, Customer – Chấp thuận bởi PM và Cusomer – Hiệu chỉnh trong suốt chu kỳ kiểm thử để phản ánh các thay đổi nếu cần thiết 13 2. Test Process Common Test Resources • Guideline: Test process • Templates for test documents: – Test Plan – Test case specification – Test report – Defect analysis report • Test tools: – Defect tracking tool – Test Effort tracking tool – Test schedule – Test automation tools – Rational Robot (Functional & Performance test) – OpenSTA (Open source), Witir (Open source) 14 2.2.1 Lập kế hoạch kiểm thử • Lập kế hoạch kiểm thử là quá trình tạo ra bản kế hoạch kiểm thử • Bảnkế hoạch kiểm thử là tài liệu mô tả về phạm vi, cách tiếp cận, các nguồn lực và kế hoạch thực hiện kiểm thử. 15 2.2.1 Lập kế hoạch kiểm thử • Mục tiêu của lập kế hoạch kiểm thử: – Thiết lập được mục tiêu dài hạn và ngắn hạn của việc kiểm thử. – Nhận biết được các rủi ro có thể xảy ra – Xác định được cách tiếp cận và kế hoạch cho việc kiểm thử. 16 2.2.1 Lập kế hoạch kiểm thử 6 nhiệm vụ chính trong hoạt động lập kế hoạch: 1. Xác định được phạm vi kiểm thử, các rủi ro có thể xảy ra, xácđịnh được mục tiêu kiểm thử để đảm bảo đođạc được chất lượng phần mềm sản xuất ra 2. Xác định cách tiếp cận việc kiểm thử: nên sử dụng kỹ thuật kiểm thử nào, độ bao phủ kiểm thử cho phép 3. Thực thi theo chính sách và chiến lược kiểm thử 4. Xác định nguồn lực kiểm thử cần thiết. 5. Lên kế hoạch cho hoạt động phân tích, thiết kế, thực thi 6. Xác định tiêu chí kết thúc kiểm thử 17 2.2.1 Lập kế hoạch kiểm thử • Hoạt động kiểm soát kiểm thử: là hoạt động nhằm quản lý việc kiểm thử được thực hiện theo đúng kế hoạch • Kế hoạch kiểm thử cần phải được xây dựng sớm như có thể có trong mỗi chu kỳ phát triển phần mềm để: – Tập hợp và tổ chức các thông tin kiểm thử cần thiết. – Cung cấp thông tin về qui trình kiểm thử sẽ xảy ra trong tổ chức kiểm thử. – Cho mỗi thành viên trong đội kiểm thử có hướng đi đúng. – Gán các trách nhiệm rõ ràng cụ thể cho mỗi thành viên đội kiểm thử. – Có lịch biểu làm việc rõ ràng và các thành viên có thể làm việc với nhau tốt. • Giám sát được tình trạng hiện tại của việc kiểm thử • Đưa ra các hành động nhằm điều chỉnh kịp thời các hoạt động kiểm thử để đảm bảo kế hoạch 18 2.2.1 Lập kế hoạch kiểm thử • 5 nhiệm vụ của hoạt động kiểm soát kiểm thử – 1. Đo đạc, phân tích các kết quả từ việc kiểm thử. – 2. Giám sát và ghi lại tiến độ, độ bao phủ và tiêu chí kết thúc. – 3. Cung cấp thông tin thường xuyên cho các bên liên quan. – 4. Đề xuất các hành động hiệu chỉnh. – 5. Đưa ra các quyết định để tiếp tục hay dừng việc kiểm thử 19 2.2.2 Phân tích và thiết kế kiểm thử • Là hoạt động chuyển các mục tiêu của kiểm thử thành các trường hợp kiểm thử cụ thể 20 2.2.2 Phân tích và thiết kế kiểm thử • Mục tiêu của phân tích và thiết kế kiểm thử: – Xây dựng được bộ khung các tình huống cần kiểm thử (high level test case). Trong đó: – Các test case cần bao phủ tất cả khía cạnh kiểm thử cho từng yêu cầu phần mềm – Các test case cần bao phủ tất cả yêu cầu trong các chiến lược kiểm thử – Nếu cần kiểm thử tự động, test designer sẽ xây dựng các kịchbảm kiểm thử tự động dựa trên các test case/ test procedure 21 2.2.2 Phân tích và thiết kế kiểm thử Các hoạt động chính của quá trình phân tích và thiết kế kiểm thử: • 1. Kiểm tra lại tất cả các loại tài liệu của dự án: bản đặc tả yêu cầuhệ thống, thiếtkế kiến trúc, thiết kế chi tiết, nguyên mẫu giao diện của hệ thống • 2. Phân tích và đánh giá khả năng kiểm thử được của hệ thống dựa trên yêu cầu của kháchhàng. • 3. Xác định và đặt thứ tự ưu tiên cho các điều kiện kiểm thử dựa trên kết quả phântích cácchức năng cần kiểm thử, bản mô tả các chức năng đó • 4. Thiết kế và đặt ưu tiên cho cáctì nh huống kiểm thử mức cao • 5. Xác định dữ liệu kiểm thử cần thiết cho các điều kiện và trường hợp kiểm thử • 6. Thiết kế cho việc thiết lập môi trường kiểm thử,xác định yêu cầu về cơ sở hạ tầngvà cáccông cụ cần thiết • 7. Tạo mối liên hệ giữa yêu cầu khách hàng và các trường hợp kiểm thử để kiểmsoát đượchoạt động kiểm thử và sự thay đổi yêu cầu của khách hàng nếu có 22 2.2.2 Phân tích và thiết kế kiểm thử • Các test case cần được: – Xem xét lại bởi Project Leader, Developer có liên quan, các Testers khác, Test Leader, Business Analysis và Customer. – Chấp thuận bởi Test Leader hoặc Customer • Hiệu chỉnh/cập nhật nếu Tester đã tìm được những lỗi mà không nằm trong các testcase hiện có. 23 2.2.3 Thực hiện kiểm thử • Thực hiện kiểm thử là quátrì nh bao gồm: – Phát triển và đặt thứ tự ưu tiên cho các thủ tục kiểm thử (test case/suite), tạo dữ liệu kiểm thử (test data), chuẩn bị các dụng cụ kiểm thử nếu có (test harness), viết kịch bản kiểm thử tự động(test scripts), chuẩn bị môi trường kiểm thử (test enviroment) – Chạy thử một thành phần chức năng hay cả một hệ thống dựa trên các sản phẩm, tài liệu đãchuẩn bị ở bước trên nhằm đưa ra kết quả thực tế 24 2.2.3 Thực hiện kiểm thử • Mục tiêu của chuẩn biì và thực hiện kiểm thử – Xây dựng được các thủ tục kiểm thử – Cài đặt môi trường và dữ liệu kiểm thử 25 2.2.3 Thực hiện kiểm thử • Nhiệm vụ chính của thực hiện kiểm thử: 1. Phát triển và xét thứ tự ưu tiên cho cáctì nh huống kiểm thử, tạo dữ liệuvà chuẩn bị các công cụ kiểm thử, viết cáctì nh huống kiểm thử tự động 2. Xây dựng các bộ kiểm thử từ cáctì nh huống kiểm thử để kiểm thử đạthiệu quảnhất 3. Cài đặt và kiểm tra môi trường kiểm thử 4. Thực hiện kiểm thử cho một bộ, hoặc theo các 5. Ghi lại kết quả của kiểm thử 6. So sánh kết quả kiểm thử thực thế với kết quả mong đợi 7. Báo cáo sự cố và phân tích nguyên nhân 8. Lặp lại hoạt động kiểm thử cho mỗi sự cốđãđược xác định hoặc kiểmtra lạiđể xác nhận lỗi xảy ra không ảnh hưởng đến các phần khác củaphần mềm 26 2.2.3 Thực hiện kiểm thử 27 Quy Trình xử lý ilỗ 28 2.2.4 Báo cáo và đánh giá kiểm thử • Báo cáo và đánh giá kiểm thử là hoạt động đánh giákết quả kiểm thử so với mục tiêuđã đề ra • Mục tiêu chính: Để đánh giá việc kiểm thử như thế nào là đủcho mỗi giai đoạn kiểm thử • 3 nhiệm vụ chính: – Kiểmtra các kết quả kiểm thử so với các tiêu chí dừng kiểm thử. – Đánh giátì nh trạng hiện tại để tiến hành kiểm thử thêm nếu cần. – Viếtbản báo cáo tổng kết các hoạt động kiểm thử cho các bênliên quan 29 2.2.4 Báo cáo và đánh giá kiểm thử Test Manager hoặc Test Leader sẽ phân tích các lỗi trong hệ thống theo dõi các lỗi. – Tạocác báo cáo lỗi. – Đánhgiá các kết quả kiểm thử, thống kê các yêu cầu thay đổi. – Tính và phân phối các thông tin đo lường hoạt động kiểm thử. – Tạobảng tổng kết đánh giá hoạt động kiểm lỗi. – Xácđịnh xem đãđạt tiêu chí thành công và hoàn thành kiểm thử chưa. 30 2.2.4 Báo cáo và đánh giá kiểm thử • Hoạt động kết thúc kiểm thử – Là hoạt động thu thập dữ liệu từ các hoạt động kiểm thử, tổng hợp các kinh nghiệm dựa trên việc kiểm tra và hoàn thiện bộ sản phẩm kiểm thử, dữ liệu sau khi thu thập sẽ là căn cứ, cơ sở để phân tích số liệu, đưa ra các bài học để áp dụng cho tương lai • Mục tiêu chính của hoạt động kết thúc kiểm thử làthu thập dữ liệu nhằm: – Cung cấp dữ liệu cho việc bàn giao sản phẩm phần mềm – Lưu trữ dữ liệu – Phân tích cho các hoạt động cải tiến sau này 31 2.2.4 Báo cáo và đánh giá kiểm thử 7 hoạt động chính của hoạt động kết thúc kiểm thử: 1. Kiểm tra các sản phẩm thực tế được bàn giao so với kế hoạch. Đảm bảo các lỗi đượcgiải quyết hay có kế hoạch giải quyết cho các lần bàn giao sau 2. Đóng các báo cáo về sự cố hoặc ghi chép các thay đổi cho bất cứ vấn đề nào còn đang để mở 3. Viết biên bản chấp nhận phần mềm 4. Lưu trữ các sản phẩm kiểm thử, môi trường kiểm thử và cơ sở hạ tầng cho các lần sử dụng sau 5. Bàn giao các sản phẩm kiểm thử cho các bộ quản lý dữ liệu và bảotrì sản phẩm 6. Phân tích các bài học để xác định những điểm cần thay đổi cho dự án sau 7. Sử dụng các thông tin thu thập được để cải tiến công việc kiểm thử một cách định kỳ. 32 2.3 Bản kế hoạch kiểm thử 2.3.1. Định nghĩa của bản kế hoạch kiểm thử 2.3.2. Mục tiêu của bản kế hoạch kiểm thử 2.3.3. Quy trình xây dựng bản kế hoạch kiểm thử 2.3.4. Cấu trúc của bản kế hoạch kiểm thử 33 2.3.1 Định nghĩa bản kế hoạch kiểm thử • Bảnkế hoạch kiểm thử là một tài liệu và chứa các kết quả của cáchoạt động sau : – Nhận dạng các chiến lược được dùng để kiểm tra và đảm bảo rằng sản phẩmthỏa mãn đặc tả thiết kế phần mềm và các yêu cầu khác về phần mềm. – Định nghĩa các mục tiêu và phạm vi của nỗ lực kiểm thử. • Nhận dạng phương pháp mà đội kiểm thử sẽ dùng để thực hiện công việc kiểm thử. – Nhận dạng phần cứng, phần mềm và các tiện ích cần cho kiểm thử. – Nhận dạng các tính chất và chức năng sẽ được kiểm thử. – Xácđịnh các hệ số rủi ro gây nguy hại cho việc kiểm thử. – Lập lịch kiểmthử và phân phối công việc cho mỗi thành viên tham gia. – . • Test Manager hoặc Test Leader sẽ xây dựng kế hoạch kiểm thử. 34 2.3.2 Mục tiêu của bản kê hoạch kiểm thử 1. Xác định phạm vi kiểm thử 2. Nhận diện các rủi ro có thể xẩy ra khi thực hiện kiểm thử 3. Xác định các tiêu chí hoàn thành kiểm thử (acceptance criteria) 4. Xác định chiến lược kiểm thử dựa trên phạm vi kiểm thử 5. Xác định các nguồn lực cho kiểm thử 6. Xác định các chỉ số để đánh giá kiểm thử 7. Đưa ra quyết định sớm về việc sử dụng kiểm thử tự động 8. Xác địnhh các lịch trình, thời gian biểu cụ thể cần đưa ra các sản phẩm kiểm thử 9. Giúp các thành viên trong tổ dự án làm việc hiệu quả hơn 35 2.3.3 Quy trình xây dựng kế hoạch kiểm thử 36 2.3.4 Cấu trúc bản kế hoạch kiểm thử • Bản kế hoạch kiểm thử cơ bản bao gồm7 thành phần: • 1. Introduction • 2. Acceptance criteria • 3. Requirements for test • 4. Test strategy • 5. Resources for testing – Human and responsibilities – System: hardware & software • 6. Test milestones • 7. Deliverables of test: Test Plan, Test Case,Test Reports 37 2.3.4.1 Giới thiệu chung -Introduction • Mục đích: Trình bày ngắn gọn về mục đích và tổ chức của tài liệu • Cácđịnh nghĩa, từ viết tắt, thuật ngữ: cung cấp các định nghĩa của các thuật ngữ, từ viết tắtcần thiếtđể giải thích đúng các kế hoạch kiểm thử • Tài liệu tham khảo: Liệt kê tất cả những tài liệu dùng để tạo ra bản kế hoạch • Thông tin cơ bản: Mô tả ngắn gọn về dự án • Phạmvi kiểm thử: – Danh mục các giai đoạn kiểm thử – Danh sách các loại hình kiểm thử – Danh sách các giả định – Cáckhiểm khuyết theo dự kiến • Danh mục các rủi ro: Liệt kê các rủi ro có thể ảnh hưởng đến việc thiết kế hoặc thực thi cáckiểm thử • Nhu cầu đào tạo: Liệt kê các nhu cầu đào tạo của các thành viên trong nhóm để thực thiviệc kiểmthử 38 2.3.4.2 Các tiêu chí chấp nhận sản phẩm Acceptance criteria • Danh sách các tiêu chí nhằm xác định mức độ chất lượng kiểm thử đủ để bàn giao cho khách hàng hoặc đủ để sang pha tiếp theo • Cáctiêu chí có thể là: – Tỉ lệ bao phủ của kiểm thử – Tỉ lệ bao phủ thành công – Số lượng ca kiểm thử – Tỉ lệ lỗitì m được – Tỉ lệ bỏ qua lỗi – . 39 2.3.4.3 Các yêu cầu cần kiểm thử - Requirements for test • Liệt kê các yêu cầu kiểm thử – Yêu cầu chức năng – Yêu cầu phi chức năng • Liệt kê các đặc tính và chức năng khôngcần kiểmthử 40 2.3.4.4 Các chiến lược kiểm thử - Test strategy • Là một tài liệu mô tả việc kiểm thử sẽ được thực hiện như thế nào • Trong mục chiến lược kiểm thử sẽ xác định các nội dung: – Cácloại kiểm thử: mỗi loại kiểm thử cụ thể cho từng loạiyêu cầu của phần mềm – Cáccấp độ kiểm thử: cấp độ kiểm thử nào sẽ được thực hiện và loại kiểm thử nào sẽ được thực hiện ở mỗi cấp độ – Công cụ kiểm thử: liệt kê đầy đủ các công cụ hỗ trợ kiễm thử 41 2.3.4.4 Các chiến lược kiểm thử - Test strategy • Có 2 chiến lược kiểm thử cơ bản: • Kiểmthử Big bang (kiểm thử vụ nổ lớn): là chiến lược kiểmthử tích hợp hệ thống một lần duy nhất đểđược module chức năng (hay hệ thống hoàn chỉnh) • Kiểmthử gia tăng: chiến lược kiểm thử từ thấp tới cao, bao gồm 4 mức: – Kiểm thử đơn vị – Kiểmthử tích hợp – Kiểm thử hệ thống – Kiểm thử chấp nhận 42 2.3.4.5 Nguồn lực cho kiểm thử – Resources for testing • Nguồn lực hỗ trợ cho hoạt động kiểm thử gồm 2 loại: – Nhân lực: khi liệt kê phải chỉ rõngười nào làm công việc gì – Nguồn lực hệ thống: liệt kê các phần mềm, phần cứng để đáp ứng cho việc kiểm thử 43 2.3.4.6 Các mốc kiểm thử– Test milestones • Cột mốc kiểm thử: một sự kiện, một thành tích kiểm thử quan trọng đạt được hay cần đạt được của dự án. • Mỗicột mốc kiểm thử phải bao gồm ít nhất một hoạtđộng kiểm thử và đạt được một hoặc nhiều sản phẩmkiểm thử. 44 2.3.4.6 Các mốc kiểm thử– Test milestones • Qui trình xác định mốc kiểm thử 45 2.3.4.6 Các mốc kiểm thử – Test milestones • Cách biểu diễn các mốc kiểm thử 46 2.3.4.7 Sản phẩm cần bàn giao – Deliverables of test • Liệt kê tên sản phẩm cần bàn giao • Ngày bàn giao • Người bàn giao • Bàn giao cho ai 47 Đề tài thảo luận • Tìm hiểu môhì nh kiểm tra phần mềm TMM (Testing maturity model) • Yêu cầu: – Tìm trong tài liệu của Thạc Bình Cường 48
File đính kèm:
- bai_giang_kiem_thu_phan_mem_bai_2_quy_trinh_kiem_thu_phan_me.pdf