Bài giảng Kiểm tra phần mềm - Chương 1: Tổng quát về kiểm thử phần mềm
Chu kỳ phần mềm ₫ược tính từ lúc có yêu cầu (mới hoặc nâng
cấp) ₫ến lúc phần mềm ₫áp ứng ₫úng yêu cầu ₫ược phân phối.
Trong mỗi chu kỳ, người ta tiến hành nhiều công ₫oạn : khởi
₫ộng, chi tiết hóa, hiện thực và chuyển giao.
Mỗi công ₫oạn thường ₫ược thực hiện theo cơ chế lặp nhiều
lần ₫ể kết quả ngày càng hoàn hảo hơn.
Trong từng bước lặp, chúng ta thường thực hiện nhiều
workflows ₫ồng thời (₫ể tận dụng nguồn nhân lực hiệu quả nhất) :
nắm bắt yêu cầu, phân tích chức năng, thiết kế, hiện thực và kiểm
thử.
cấp) ₫ến lúc phần mềm ₫áp ứng ₫úng yêu cầu ₫ược phân phối.
Trong mỗi chu kỳ, người ta tiến hành nhiều công ₫oạn : khởi
₫ộng, chi tiết hóa, hiện thực và chuyển giao.
Mỗi công ₫oạn thường ₫ược thực hiện theo cơ chế lặp nhiều
lần ₫ể kết quả ngày càng hoàn hảo hơn.
Trong từng bước lặp, chúng ta thường thực hiện nhiều
workflows ₫ồng thời (₫ể tận dụng nguồn nhân lực hiệu quả nhất) :
nắm bắt yêu cầu, phân tích chức năng, thiết kế, hiện thực và kiểm
thử.
Bạn đang xem tài liệu "Bài giảng Kiểm tra phần mềm - Chương 1: Tổng quát về kiểm thử phần mềm", để tải tài liệu gốc về máy hãy click vào nút Download ở trên.
File đính kèm:
- bai_giang_kiem_tra_phan_mem_chuong_1_tong_quat_ve_kiem_thu_p.pdf
Nội dung text: Bài giảng Kiểm tra phần mềm - Chương 1: Tổng quát về kiểm thử phần mềm
- vào của bước/công việc khác. Nếu thông tin không tốt sẽ ảnh hưởng nghiêm trọng ₫ến kết quả của các bước/hoạt ₫ộng sau ₫ó. Một số vấn ₫ề thường gặp trong phát triển phần mềm : tính toán không ₫úng, hiệu chỉnh sai dữ liệu. trộn dữ liệu không ₫úng. Tìm kiếm dữ liệu sai yêu cầu. Xử lý sai mối quan hệ giữa các dữ liệu. Coding/hiện thực sai các qui luật nghiệp vụ. Hiệu suất của phần mềm còn thấp. Kết quả hoặc hiệu suất phần mềm không tin cậy. Hỗ trợ chưa ₫ủ các nhu cầu nghiệp vụ. Giao tiếp với hệ thống khác chưa ₫úng hay chưa ₫ủ. Kiểm soát an ninh phần mềm chưa ₫ủ. 1.2 Vài ₫ịnh nghĩa về kiểm thử phần mềm Kiểm thử phần mềm là qui trình chứng minh phần mềm không có lỗi. Mục ₫ích của kiểm thử phần mềm là chỉ ra rằng phần mềm thực hiện ₫úng các chức năng mong muốn. Kiểm thử phần mềm là qui trình thiết lập sự tin tưởng về việc phần mềm hay hệ thống thực hiện ₫ược ₫iều mà nó hỗ trợ. Kiểm thử phần mềm là qui trình thi hành phần mềm với ý ₫ịnh tìm kiếm các lỗi của nó. Kiểm thử phần mềm ₫ược xem là qui trình cố gắng tìm kiếm các lỗi của phần mềm theo tinh thần "hủy diệt". Các mục tiêu chính của kiểm thử phần mềm :
- 1.3 Kiểm thử : các worker và qui trình Test Component Integration System Engineer Engineer Tester Tester chịutrach nhi mv ̀ chịutrach nhi mv ̀ chịutrach nhi mv ̀ Test Test Model Test Plan Test case Test Test Test Evaluation defect Procedure Component Kỹ sư kiểm thử : người chuyên về IT, chịu trách nhiệm về nhiều hoạt ₫ộng kỹ thuật liên quan ₫ến kiểm thử.
- Tự ₫ộng hóa việc kiểm thử là dùng phần mềm ₫iều khiển việc thi hành kiểm thử, so sánh kết quả có ₫ược với kết quả kỳ vọng, thiết lập các ₫iều kiện ₫ầu vào, các kiểm soát kiểm thử và các chức năng báo cáo kết quả Thí dụ các tiện ích phục vụ tự ₫ộng kiểm thử như : Stress Test, Selenium, TestComplete, IBM Rational Functional Tester. 1.4 Các mức ₫ộ kiểm thử phần mềm Kiểm thử ₫ơn vị (Unit Testing) : kiểm thử sự hiện thực chi tiết của từng ₫ơn vị nhỏ (hàm, class, ) có hoạt ₫ộng ₫úng không ? Kiểm thử module (Module Testing) : kiểm thử các dịch vụ của module có phù hợp với ₫ặc tả của module ₫ó không ? Kiểm thử tích hợp (Integration Testing) : kiểm thử xem từng phân hệ của phần mềm có ₫ảm bảo với ₫ặc tả thiết kế của phân hệ ₫ó không ? Kiểm thử hệ thống (System Testing) : kiểm thử các yêu cầu không chức năng của phần mềm như hiệu suất, bảo mật, làm việc trong môi trường căng thẳng,
- à Kiểm thử dựa trên các yêu cầu và ₫ặc tả sử dụng TPPM. Kiểm thử hộp trắng (White box testing) : theo góc nhìn hiện thực à cần kiến thức về chi tiết thiết kế và hiện thực bên trong. à Kiểm thử dựa vào phủ các lệnh, phủ các nhánh, phủ các ₫iều kiện con, Kiểu kiểm thử Kỹ thuật kiểm thử ₫ược dùng Unit Testing White Box, Black Box Integration Testing Black Box, White Box Functional Testing Black Box System Testing Black Box Accceptance Testing Black Box 1.6 Các nguyên tắc cơ bản về kiểm thử Thông tin thiết yếu của mỗi testcase là kết quả hay dữ liệu xuất kỳ vọng. Nếu kết quả kỳ vọng của testcase không ₫ược ₫ịnh nghĩa rõ ràng, người ta sẽ giải thích kết quả sai (plausible) thành kết quả ₫úng bởi vì hiện tượng “the eye seeing what it wants to see.” => 1 test case phải chứa 2 thành phần thiết yếu :
- Kiểm thử là 1 tác vụ rất thách thức ₫òi hỏi sự sáng tạo và trí tuệ. Kiểm thử phần mềm nên bắt ₫ầu từ các thành phần nhỏ ₫ơn giản rồi ₫ến các thành phần ngày càng lớn hơn. Kiểm thử theo kiểu vét cạn là không thể. Nên hoạch ₫ịnh qui trình kiểm thử trước khi bắt ₫ầu thực hiện kiểm thử. 1.7 Các ý tưởng không ₫úng về kiểm thử Ta có thể kiểm thử phần mềm ₫ầy ₫ủ, nghĩa là ₫ã vét cạn mọi hoạt ₫ộng kiểm thử cần thiết. Ta có thể tìm tất cả lỗi nếu kỹ sư kiểm thử làm tốt công việc của mình. Tập các testcase tốt phải chứa rất nhiều testcase ₫ể bao phủ rất nhiều tình huống. Testcase tốt luôn là testcase có ₫ộ phức tạp cao. Tự ₫ộng kiểm thử có thể thay thế kỹ sư kiểm thử ₫ể kiểm thử phần mềm 1 cách tốt ₫ẹp. Kiểm thử phần mềm thì ₫ơn giản và dễ dàng. Ai cũng có thể làm, không cần phải qua huấn luyện.