Đăng ký Đăng nhập

Tài liệu 4.dbclfm kiemthu2

.PDF
64
156
126

Mô tả:

§¹i häc Quèc gia Hμ néi - §¹i häc c«ng nghÖ Bé m«n C«ng nghÖ phÇn mÒm BÀI GiẢNG ĐẢM BẢO CHẤT LƯỢNG PHẦN MỀM VÀ KiỂM THỬ NguyÔn V¨n Vy Email: [email protected], mobile: 0912.505.291 Hà nội - 2005 NguyÔn V¨n Vþ Phần II KIỂM THỬ PHẦN MỀM 2005 Bộ môn CNFM – Đại học Công nghệ 2 Nội dung – Tài liệu NguyÔn V¨n Vþ Các loại kiểm thử Thẩm định và xác minh Roger S. Pressman. Software Engineering, a Practitioner’s Approach. 3th Edition, McGraw-Hill, 1992, Bản dich của Ngô Trung vIệt, Phần 4, tập 4 (Chương 17, 18, 23 –bản 2001) Ian Sommerville. Software Engineering, Sixth Edition, Addion Wesley, 2001, Phần 5 và 6. chương 20 E.M.Bennatan, Software Project Management : a practitioner’s approach, McGRAW-HILL Book Company, 2001 Nguyễn Văn Vỵ, Nguyễn Việt Hà. Giáo trình kỹ nghệ phần mềm, Đại học Công nghệ, ĐHQGHN, 2006. 2005 Bộ môn CNFM – Đại học Công nghệ 3 D. Chiến lược kiểm thử phần mềm V¨n Vþ NguyÔn a. Khái niệm Chiến lược kiểm thử là sự tích hợp các kỹ thuật thiết kế ca kiểm thử tạo thành một dãy các bước nhằm hướng dẫn quá trình kiểm thử phần mềm thành công. Nó phác thảo lộ trình để: nhà phát triển tổ chức việc bảo đảm chất lượng, khách hàng: hiểu được công sức, thời gian và nguồn lực cần cho kiểm thử. 2005 Bộ môn CNFM – Đại học Công nghệ 4 b. Yêu cầu của chiến lược kiểm thử NguyÔn V¨n Vþ Chiến lược kiểm thử phải: tích hợp được việc lập kế hoạch, thiết kế ca kiểm thử, tiến hành kiểm thử, thu thập và đánh giá các thông tin kết quả. đủ mềm dẻo để cổ vũ óc sáng tạo, đáp ứng được yêu cầu khách hàng thích ứng với mức kiểm thử cụ thể đáp ứng các đối tượng quan tâm khác nhau 2005 Bộ môn CNFM – Đại học Công nghệ 5 c. Các đặc trưng chiến lược kiểm thử NguyÔn V¨n Vþ Các đặc trưng có tính khuôn mẫu: Bắt đầu ở mức môđun và tiếp tục cho đến khi tích hợp ở mức hệ thống trọn vẹn. Các kỹ thuật kiểm thử khác nhau là thích hợp cho những thời điểm khác nhau. Được cả người phát triển và nhóm kiểm thử độc lập cùng tiến hành. kiểm thử đi trước gỡ lỗi, song việc gỡ lỗi phải thích ứng với từng chiến lược kiểm thử . 2005 Bộ môn CNFM – Đại học Công nghệ 6 d. Sự thích ứng của chiến lược kiểm thử NguyÔn V¨n Vþ ■ Chiến lược cần thích ứng với từng mức kiểm thử: • kiểm thử mức thấp: xác minh từng khúc mã nguồn có tương ứng và thực thi đúng đắn không? • kiểm thử mức cao: xác minh và thẩm định các chức năng hệ thống chủ yếu có đúng đặc tả và đáp ứng yêu cầu của khách hàng không?. 2005 Bộ môn CNFM – Đại học Công nghệ 7 e. Sự đáp ứng của chiến lược kiểm thử NguyÔn V¨n Vþ ■ Mỗi chiến lược đáp ứng được yêu cầu người quan tâm: • Có các hướng dẫn cho người thực hiện tiến hành • kiểm thử. Có các cột mốc cho các nhà quản lý kiểm soát hoạt động đảm bảo chất lượng. • Có thước đo để có thể nhận ra các vấn đề càng sớm càng tốt và khách hàng nhận biết được quá trình kiểm thử 2005 Bộ môn CNFM – Đại học Công nghệ 8 E. Tổ chức kiểm thử NguyÔn V¨n Vþ Kiểm thử phần mềm là một phần của hoạt động “xác minh và thẩm định”: Xác minh là một tập các hoạt động để bảo đảm rằng: phần mềm thực hiện đúng chức năng đã được đặc tả Thẩm định là một tập hợp các hoạt động để bảo đảm rằng: phần mềm đã đáp ứng đúng yêu cầu của khách hàng. Câu hỏi: Ai làm? Làm cái gì? Khi nào? Và mối quan hệ? 2005 Bộ môn CNFM – Đại học Công nghệ 9 a. Trách nhiệm kiểm thử phần mềmNguyÔn V¨n Vþ Các kỹ sư phần mềm làm ra phần mềm. Một cách tự nhiên họ cần tiến hành các kiểm thử ban đầu. Về nguyên tắc, người làm sản phẩm, kiểm tra sản phẩm là không hợp lý. Có một số hiểu lầm : Người phát triển không tham gia kiểm thử . Cho phép người lạ kiểm thử một cách tàn nhẫn. Người kiểm thử chỉ quan tâm khi kiểm thử bắt đầu 2005 Bộ môn CNFM – Đại học Công nghệ 10 b. Phân công trách nhiệm kiểm thử NguyÔn V¨n Vþ Từ thực tiễn dẫn đến sự phân công: Người phát triển chịu trách nhiệm kiểm thử đơn vị do mình phát triển để bảo đảm thực hiện đúng theo thiết kế (một yêu cầu của xác minh). Người phát triển có thể tham gia kiểm thử tích hợp. Nhóm kiểm thử độc lập bắt đầu làm việc khi các khoản mục cấu trúc phần mềm đã đày đủ. 2005 Bộ môn CNFM – Đại học Công nghệ 11 c. Vai trò của những người kiểm thử NguyÔn V¨n Vþ Nhóm kiểm thử độc lập giúp gỡ bỏ những thành kiến cố hữu: “người xây dựng không thể kiểm thử sản phẩm tốt”: gỡ bỏ mâu thuẫn giữa những người tham gia. đánh giá công sức người phát triển bỏ ra tìm lỗi. Nhóm kiểm thử độc lập tạo ra báo cáo đầy đủ cho tổ chức bảo đảm chất lượng phần mềm. Người phát triển không đẩy chương trình cho người kiểm thử rồi bỏ đi cùng làm việc với người kiểm thử xuyên suốt một dự án (bảo đảm việc kiểm thử được tiến hành triệt để). 2005 Bộ môn CNFM – Đại học Công nghệ 12 F. Tiến trình thực hiện kiểm thử NguyÔn V¨n Vþ Tiến trình thực hiện kiểm thử tương ứng với tiến trình phát triển (theo từng mô hình). Tiến trình kiểm thử thông thường (mô hình chữ V): Kiểm thử đơn vị môđun đơn vị 2005 Kiểm thử Kiểm thử Kiểm thử tích hợp hệ thống thẩm định Môđun chức năng, hệ con cả phần cứng, phần mềm hệ thống thực Bộ môn CNFM – Đại học Công nghệ 13 a. Kiểm thử đơn vị NguyÔn V¨n Vþ Nội dung kiểm thử: giao diện cấu trúc dữ liệu sử dụng cục bộ đường điều khiển Điều kiện lôgic Phép toán xử lý Câu hỏi: 1. 2. 3. 4. 5. Định lượng/dạng gì (biến, mô đun qua giao diện)? Yếu tố nào cần (vào/ra dữ liệu)? Sai xử lý, lôgíc (phép toán, biểu thức)? Sai điều khiển (vòng lặp, giá trị biên)? Sai tiềm ẩn (ghi chép, mô tả)? 2005 Bộ môn CNFM – Đại học Công nghệ 14 a1. Kiểm thử dữ liệu qua giao diện Kiểm thử dòng dữ liệu qua một giao diện của môđun liên quan đến định lượng và định dạng của các biến và các môđun sử dụng trên giao diện. Áp lực, bước sóng NguyÔn V¨n Vþ Cường độ, loại tia Đặc trưng cụ thể: Số lượng? Định dạng? Mùi vị, nồng độ 2005 Bộ môn CNFM – Đại học Công nghệ Món ăn, kích cỡ, độ mềm 15 a1. Đặc trưng dữ liệu qua giao diện NguyÔn V¨n Vþ Các đặc trưng qua giao diện là: Số tham số = số đối số? Tính chất của tham số ≡ tính chất đối số? Đơn vị của tham số ≡ đơn vị đối số? Số đối được truyền gọi môđun = số các tham số đầu vào của môđun? thuộc tính các đối được truyền gọi môđun ≡ thuộc tính của các tham số? Đơn vị của đối được truyền để gọi môđun ≡ đơn vị các tham số môđun? 2005 Bộ môn CNFM – Đại học Công nghệ X1,X2,..,Xn Y1,Y2,..,Yn 16 a1. Đặc trưng dữ liệu qua giao diện NguyÔn V¨n Vþ Thuộc tính và các cái khác của các đối số định sẵn có đúng đắn hay không? Mọi tham chiếu liên quan tới các tham số hiện không kết hợp với đầu vào chứ? Các đối số chỉ đọc đã được đổi chưa? Định nghĩa biến toàn cục có trong suốt môđun không? Các ràng buộc lên biến đã chuyển qua như tham số chưa? 2005 Bộ môn CNFM – Đại học Công nghệ 17 a2. Kiểm thử liên quan đến vào/ra NguyÔn V¨n Vþ Khi thực hiện I/O ngoại lai cần tiến hành thêm: Tính chất của các file có đúng đắn hay không? Các câu lệnh OPEN/CLOSE có đúng đắn không? Đặc tả hình thức có đúng với các câu lệnh I/O? Cỡ của buffer có đúng với cỡ của bản ghi không? Các file có mở trước khi sử dụng không? Các điều kiện end-of-file có được xử lý? Các sai lầm I/O có được xử lý? Có sai văn bản nào trong thông tin ra? 2005 Bộ môn CNFM – Đại học Công nghệ 18 a3. Kiểm thử cấu trúc dữ liệu cục bộ NguyÔn V¨n Vþ Cấu trúc dữ liệu cục bộ cho môđun có thể sai. Vì thế thiết kế các kiểm thử cần làm lộ ra các loại lỗi sau: Đánh máy không đúng hoặc không nhất quán? Giá trị ngầm định hoặc giá trị khởi thuỷ sai? Tên các biến không đúng (sai chữ hoặc mất chữ)? Kiểu dữ liệu không nhất quán? Ngoại biệt về địa chỉ, underflow, overflow. 2005 Bộ môn CNFM – Đại học Công nghệ 19 a4. Kiểm thử về các xử lý NguyÔn V¨n Vþ Các sai về trình tự, độ chính xác là: Thứ tự ưu tiên các phép tính số học? Sự nhất quán của các phép toán trộn mode? Khởi sự/kết thúc không đúng đắn? Sự chính xác của kết quả? 2005 Bộ môn CNFM – Đại học Công nghệ 20
- Xem thêm -

Tài liệu liên quan