Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 23 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
23
Dung lượng
729,63 KB
Nội dung
LOGO www.themegallery.com SOFTWAVE TESTING SOFTWAVE TESTING NHẬP MÔN CÔNG NGHỆ PHẦN MỀM NGUYỄN HUY THẮNG 09520660 BÙI CHÍ THIỆN 09520662 LOGO www.themegallery.com ĐỊNH NGHĨA VÀ KHÁI NiỆM 1 SỰ HÌNH THÀNH VÀ PHÁT TRIỂN 2 KiỂM THỬ PHẦN MỀM VÀ QUI TRÌNH TEST 3 SOFTWAVE TESTING LOGO www.themegallery.com www.themegallery.com SỰ HÌNH THÀNH VÀ PHÁT TRIỂN 1957-1978:” Demonstration" (minh họa), bên cạnh việc sửa lỗi (debugging), người ta còn thêm vào một lớp kiểm tra khác nhằm chứng minh phần mềm có hoạt động theo đúng thiết kế hay không. 1979-1982: "Destruction" (Phá hoại): đặt ra và phát hiện những tình huống trái ngược với quy luật chạy của phần mềm, có thể khiến phần mềm chết hoặc chạy sai để sửa và ngăn ngừa các tình huống nguy hiểm này cho hệ thống về sau. "Debugging" là phần mềm chỉ được sửa lỗi để đảm bảo rằng nó có thể chạy được mà không quan tâm phần mềm có đúng yêu cầu hay không, có thoả mãn khách hàng hay không. LOGO www.themegallery.com www.themegallery.com 1983-1987: “Evaluation" (Đánh giá) testing bắt đầu được thực hiện ở cuối tất cả các khâu Kiểm thử đơn vị Kiểm thử tích hợp Kiểm thử hệ thống Kiểm thử tích hợp hệ thống 1988 đến nay “Prevention” đi sâu hơn, tập trung test các progress (tiến trình) ở từng khâu và focus vào những nơi lỗi có thể xảy ra nhiều nhất. SỰ HÌNH THÀNH VÀ PHÁT TRIỂN LOGO www.themegallery.com ĐỊNH NGHĨA VÀ KHÁI NiỆM Phần mềm:là những chương trình, ứng dụng, website được viết, cài đặt và thực thi trên môi trường điện toán (computing) như: máy tính (computer), điện thoại di động (mobile phone)…Khái niệm software trong kiểm thử phần mềm còn mở rộng các tài liệu (documentation), dữ liệu (data) phù hợp và liên quan đến hoạt động của hệ thống điện toán. PHẦN MỀM: Những phần mềm này được gọi chung là “Phần mềm được kiểm thử” (software under test). Ví dụ: Khi kiểm thử (test) một phần mềm kế toán thì Kiểm thử viên (tester) phải kiểm tra các chức năng có hoạt động đúng với thiết kế không, dữ liệu có đúng và đảm bảo không… LOGO www.themegallery.com KiỂM THỬ PHẦN MỀM: (SOFTWAVE TESTING) Kiểm thử phần mềm (software testing) là hoạt động nhằm tìm kiếm, phát hiện các lỗi của phần mềm được được kiểm thử về thiết kế, mã nguồn, chức năng, dữ liệu, bảo mật, thân thiện với người dùng, tài liệu kèm theo, môt trường hoạt động, tốc độ hoạt động, khả năng tải của hệ thống, … Kiểm thử thường được chia thành các nhóm là Nhóm thuộc về chức năng (Functionality), Nhóm không thuộc chức năng (Non-Functionality), Nhóm thuộc về cấu trúc (Structural) và Nhóm liên quan đến các thay đổi (Change Related) Kiểm thử phần mềm nâng cao khả năng kiểm soát và hạn chế các lỗi xảy ra khi phát triển phần mềm ngay từ ban đầu. ĐỊNH NGHĨA VÀ KHÁI NiỆM LOGO www.themegallery.com Acceptance, User Acceptance Testing System Testing Unit tessting Kiểm thử chấp nhận Kiểm thử Hệ thống Kiểm thửThành phần Kiểm thử Đơn vị Component, module tessting CÁC MỨC ĐỘ KiỂM THỬ (TEST LEVEL); ĐỊNH NGHĨA VÀ KHÁI NiỆM LOGO www.themegallery.com Unit Testing là việc kiểm thử ở mức độ thấp nhất (các phương thức – method, hàm – function, lớp – class trong mã nguồn). Việc kiểm tra ở mức độ này thường do chính các Lập trình viên (Developer) thực hiện trong quá trình mã hóa (coding, implement). Kiểm thử Chấp nhận Một mô hình thường được ứng dụng với Unit Testing là Phát triển theo định hướng kiểm thử (Test- Driven Development) Kiểm thử thành phần Là việc kiểm thử các gói chức năng (module, component) riêng lẻ Không phụ thuộc đến các chức năng, thành phần khác trong hệ thống. Là việc kiểm thử nhằm xem xét các vấn đề có thể xảy ra khi hai hoặc nhiều Thành phần (component, module) của hệ thống tương tác với nhau. ĐỊNH NGHĨA VÀ KHÁI NiỆM LOGO www.themegallery.com Kiểm thủ hệ thống Là mức độ kiểm thử toàn bộ các chức năng của hệ thống phần mềm. Bao gồm tất cả các thành phần tương tác với nhau, và hoạt động trong môi trường giống như môi trường thực tế . Kiểm thử Hệ thống cũng chú ý đến vấn đề bảo mật, thân thiện, khả năng đáp ứng, tốc độ thực hiện của hệ thống phần mềm. Kiểm thủ chấp nhận Mức độ này được thực hiện bởi phía người dùng với một nhóm độc lập với nhóm phát triển. Mục đích của giai đoạn này là kiểm tra, đánh giá phần mềm có đáp ứng được các yêu cầu của người dùng đã đề ra hay không? Có thể triển khai cho công việc thự tế của người dùng hay không. ĐỊNH NGHĨA VÀ KHÁI NiỆM LOGO www.themegallery.com CÁC KỸ THUẬT KiỂM THỬ (TESTING TYPE) SMOKE TESTING INTERFACE/ GUI TESTING BOUNDARY TESTING REGRESSION TESTING PERFORMANCE TESTING STRESS TESTING VERIFICATION TESTING ĐỊNH NGHĨA VÀ KHÁI NiỆM [...]... phân tích về cấu trúc bên trong của thành phần/ hệ thống Kiểm thử hộp xám (Gray-box Testing) : Là hình thức “lai” giữa Kiểm thử hộp đen và Kiểm thử hộp trắng Kiểm thử bằng tay (Manual Testing) : Là thuật ngữ để chỉ kỹ thuật kiểm thử mà các công đoạn được làm hoàn toàn bằng sức người Kiểm thử tự động (Automation Testing) : Là thuật ngữ để chỉ kỹ thuật kiểm thử với các công đoạn được tự động hóa bởi máy tính... định trước đó trong tình huống mất tài nguyên hoặc dữ liệu; đặc biệt quan trọng đối với các hệ thống giao dịch như ngân hàng trực tuyến www.themegallery.com LOGO KiỂM THỬ PHẦN MỀM VÀ QUI TRÌNH TEST Phát triển phần mềm Kiểm tra phần mềm Yêu cầu khách hàng Chấp nhận sản phẩm Lập kế hoạch cho Lập kế hoạch cho (Requirements) (acceptance) Thiết kế cấp cao Toàn bộ hệ thống Lập kế hoạch cho Lập kế hoạch cho... SMOKE TESTING Là phương pháp kiểm thử nhằm kiểm tra các chức năng chính của một thành phần, hoặc hệ thống hoạt động tốt Smoke Testing hướng đến việc kiểm tra tất cả các chức năng chính của hệ thống, phạm vi rộng, không đi sâu kiểm tra chi tiết các chức năng cụ thể Smoke Testing thường được thực hiện sau khi có bản build mới trước khi thực hiện các phương pháp kiểm thử khác chi tiết hơn INTERFACE/GUI TESTING. .. THỬ PHẦN MỀM VÀ QUI TRÌNH TEST N Ì NH VỊ TỪ a tr p ỐN G ậ nh n G ỐN NG TH HA HỆ H BỘ ÁC KH N ểm Ki ấ Ch TH NH u Sa ẬN ch Tí PH PT RÌ NH ÓM n sả ph ẩm lẻ vị ơn ơn tra cđ cá ểm p Ki hợ BỘ LẬ C CÁ HỆ g BỘ ốn ÀN th TO p hệ a hợ tr h íc ểm it Ki kh ÀN TO ĐƠ a đ tr ận ểm ph Ki ộ cb Cá LOGO www.themegallery.com KiỂM THỬ PHẦN MỀM VÀ QUI TRÌNH TEST UNIT TEST (KiỂM TRA MỨC ĐƠN VỊ) Một Unit là một thành phần. .. MỘT SỐ KỸ THUẬT KiỂM THỬ KHÁC Kiểm thử hộp đen (Black-box Testing) : Là hình thức kiểm thử mà kiểm thử viên không cần biết đến cách thức hoạt động, mã nguồn, xử lý dữ liệu bên trong một thành phần/ hệ thống Công việc cần làm là nhập dữ liệu đầu vào (input) và kiểm tra kết quả trả về có đúng như mong muốn hay không Kiểm thử hộp trắng (White-box Testing) : Là hình thức kiểm thử mà kiểm thử viên biết được... 0 và 999 Boundary Testing nhằm đảm bảo hệ thống chỉ chấp nhận các giá trị x như trên, không chấp nhận các giá trị nhỏ hơn 0 hoặc lớn hơn 999 www.themegallery.com LOGO ĐỊNH NGHĨA VÀ KHÁI NiỆM REGRESSION TESTING (KiỂM THỬ HỒI QUY) Là kỹ thuật kiểm thử nhằm đảm bảo các chức năng sẵn có của thành phần/ hệ thống vẫn hoạt động tốt sau khi có sự thay đổi với chương trình Việc Regression Testing thường chú... sự thay đổi với chương trình Việc Regression Testing thường chú trọng đến các chức năng chính của thành phần/ hệ thống Việc Regression Testing được thực hiện trong các trường hợp: sau khi sửa lỗi, viết thêm chức năng, thay đổi chức năng sẵn có, thay đổi môi trường, nâng cấp, tối ưu mã nguồn STRESS TESTING (KiỂM THỬ KHẢ NĂNG CHỊU TẢI) Là kỹ thuật kiểm thử nhằm xác định các “giới hạn” của hệ thống Tức... tải www.themegallery.com LOGO ĐỊNH NGHĨA VÀ KHÁI NiỆM PERFORMENCE TESTING (KiỂM THỬ HOẠT ĐỘNG) Performance Testing là kỹ thuật kiểm thử nhằm xác định khả năng hoạt động của hệ thống phù hợp với yêu cầu hay không Có thể hiểu “performance” ở đây là tốc độ hoạt động của hệ thống nhanh hay chậm, có đảm bảo hiệu suất hay không VERIFICATION TESTING (KiỂM THỬ XÁC NHẬN) Phương pháp này được thực hiện để xác... Unit Test thường do lập trình viên thực hiện Mục đích của Unit Test là bảo đảm thông tin được xử lý và xuất (khỏi Unit) là chính xác, trong mối tương quan với dữ liệu nhập và chức năng của Unit www.themegallery.com LOGO KiỂM THỬ PHẦN MỀM VÀ QUI TRÌNH TEST INTERGRATION TEST (KiỂM TRA TICH HỢP) Integration Test có 2 mục tiêu chính: - Phát hiện lỗi giao tiếp xảy ra giữa các Unit - Tích hợp các Unit đơn... INTERFACE/GUI TESTING (KiỂM THỬ GIAO DiỆN NGƯỜI DÙNG) Là kỹ thuật kiểm thử để kiểm tra giao diện thật sự của phần mềm có đúng với yêu cầu thiết kế hay không (về các đối tượng trên giao diện, vị trí, màu sắc, lỗi chính tả, trạng thái của các đối tượng, …) www.themegallery.com LOGO ĐỊNH NGHĨA VÀ KHÁI NiỆM BOUNDARY TESTING Là kỹ thuật kiểm thử dựa trên giá trị biên (boundary value) của vùng dữ liệu hợp lệ Việc kiểm . LOGO www.themegallery.com SOFTWAVE TESTING SOFTWAVE TESTING NHẬP MÔN CÔNG NGHỆ PHẦN MỀM NGUYỄN HUY THẮNG 09520660 BÙI CHÍ THIỆN 09520662 LOGO www.themegallery.com ĐỊNH. kiểm thử phần mềm còn mở rộng các tài liệu (documentation), dữ liệu (data) phù hợp và liên quan đến hoạt động của hệ thống điện toán. PHẦN MỀM: Những phần mềm này được gọi chung là Phần mềm được. không… LOGO www.themegallery.com KiỂM THỬ PHẦN MỀM: (SOFTWAVE TESTING) Kiểm thử phần mềm (software testing) là hoạt động nhằm tìm kiếm, phát hiện các lỗi của phần mềm được được kiểm thử về thiết kế, mã nguồn,