KIỂM THỬ PHẦN MỀM, Nghiên cứu tìm hiểu về kĩ thuật Cloud Testing và Cookies Testing,Kiểm thử phần mềm là quá trình thực thi một chương trình với mục đích tìm ra lỗi. Kiểm thử phần mềm đảm bảo sản phẩm phần mềm đáp ứng đầy đủ, chính xác và đúng yêu cầu khách hàng, yêu cầu sản phẩm đã đặt ra. Kiểm thử phần mềm cũng cung cấp mục tiêu, cái nhìn độc lập về phần mềm, điều này cho phép việc đánh giá và hiểu rõ các rủi ro khi thực thi phần mềm. Kiểm thử phần mềm tạo điều kiện cho tận dụng tối đa tư duy đánh giá và sáng tạo để có thể phát hiện ra những điểm mà người khác chưa nhìn thấy.
TRƯỜNG ĐẠI HỌC CÔNG NGHIỆP HÀ NỘI KHOA CÔNG NGHỆ THÔNG TIN BÁO CÁO BÀI TẬP LỚN HỌC PHẦN: KIỂM THỬ PHẦN MỀM Đề tài : Nghiên cứu tìm hiểu về kĩ thuật Cloud Testing và Cookies Testing CBHD Nhóm Mã lớp Sinh viên Ths Hoàng Quang Huy 20212IT6013002 Hà Nội, Năm 2022 MỤC LỤC Phần : Phần mở đầu Tên đề tài Lý chọn đề tài Mục tiêu đề tài Bố cục đề tài Phần : Nội dung Chương : Tổng quan về kiểm thử phần mềm Một số khái niệm 7 1.1 Kiểm thử phần mềm (Software testing) 1.2 Kiểm thử hộp đen (Black box testing) 1.3 Kiểm thử hộp trắng (White box testing) 1.4 Kiểm thử đơn vị (Unit test) 1.5 Kiểm thử tích hợp (Integration test) 1.6 Kiểm thử hệ thống (System test) 1.7 Kiểm thử chấp nhận (Acceptance test) 1.8 Kiểm thử chức (Functional testing) 1.9 Kiểm thử phi chức (NonFunctional testing) 10 1.10 Test cấu hình (Shakeout testing) 10 1.11 Smoke testing 10 1.12 Adhoc testing 10 1.13 Monkey testing 10 1.14 Kiểm thử hiệu suất (Performance testing) 11 1.15 Kiểm thử hồi quy (Regression testing) 11 1.16 Test case 11 1.17 IPA testing 11 1.18 Backward compatibility testing 12 1.19 Binary Portability testing 12 1.20 Test plan 12 Quy trình kiểm thử 12 2.1 Phân tích yêu cầu 13 2.2 Lập kế hoạch kiểm thử 13 2.3 Thiết kế kịch cho quy trình kiểm thử 13 2.4 Thiết lập mơi trường kiểm thử 14 2.5 Thực kiểm thử 14 2.6 Đóng chu trình kiểm thử 14 Các kỹ thuật kiêm thử 15 3.1 Kiểm thử thủ công 15 3.2 Kiểm thử tự động 16 3.3 So sánh kiểm thử tự động kiểm thử thủ công 17 Chương : Tìm hiểu kĩ thuật Cloud Testing và Cookie Testing 17 Cloud Testing 17 1.1 Khái niệm 17 1.2 Phân loại điện tốn đám mây 18 1.3 Tìm hiểu kiểm thử SaaS 18 1.4 Tại nên sử dụng công cụ Cloud Testing 20 1.5 Vòng đời phát triển Cloud Testing 20 1.6 Các lại kiểm thử thử nghiệm Cloud Testing 21 1.7 Một số công cụ Cloud Testing 23 1.8 Cách thực Cloud Testing 23 1.9 Các trường hợp thử nghiệm mẫu cho Cloud Testing 24 1.10 So sánh kiểm thử đám mây với kiểm thử thông thường 25 1.11 Thách thức Cloud Testing 26 Cookies Testing 29 2.5 Các trường hợp cần kiểm tra Cookie 30 2.6 Các plugin để kiểm tra Cookie 31 2.7 Cách kiểm tra Cookie Website 32 2.8 Sự khác Cookie Session 33 2.9 Những hạn chế Cookie 34 Chương 3: Sử dụng công cụ vào thực tiễn Tìm hiểu phần mềm Postman kiểm thử Cookie 35 35 1.1 Lịch sử phát triển công cụ 35 1.2 Đặc điểm 35 1.3 Ưu nhược điểm 35 2.1 Định nghĩa 27 2.2 Nội dung kiểm thử Cookie 28 2.3 Phân loại Cookie 28 2.4 Nơi lưu trữ Cookie Quá trình cài đặt 1.5 Các sử dụng postman 27 Một số kịch bản biểm thử 1.4 36 37 39 2.1 Điều kiện thực 39 2.2 Các bước tiến hành thực kiểm thử 39 Phần : Phần mở đầu Tên đề tài Nghiên cứu tìm hiểu kĩ thuật Cloud Testing Cookie Testing Lý chọn đề tài Ngày công nghệ thông tin ngày phát triển nhanh chóng, kéo theo hệ thống mạng phần mềm gia tăng số lượng theo quy mô rộng chất lượng phần mềm theo chiều sâu Nhưng từ nảy sinh nhiều vấn đề lỗi hỏng hóc phần mềm khơng đáng có gây ảnh hưởng nghiêm trọng đến xã hội, kinh tế, Những lỗi tự thân phần mềm bị hỏng không kiểm duyệt kĩ lưỡng trước đưa cho người dùng cuối hay có người cố tình phá hoại nhằm đánh cắp thông tin cá nhân mã số tài khoản ngân hàng, số điện thoại, danh bạ, tin nhắn, Những vấn đề nan giải cấp thiết có xu hướng mở rộng năm gần đây, điển cố máy tính Y2K năm 2000 làm tê liệt nhiều hệ thống máy tính lớn hay có nhiều loại virus phá hoại mới xuất hiện, công vào lỗ hổng bảo mật phần mềm làm tê liệt nhiều hệ thống phần mềm phần cứng Nhận thấy “ Kiểm thử phần mềm sản xuất phần mềm” quy trình quan trọng Hơn thế, với công nghệ ngày phát triển Cloud Testing Cookie Testing đang mang lại nhiều giá trị lợi ích cho nhà phát triển những phận kiểm thử Chính lí nhóm chúng em định chọn đề tài thực tìm hiểu thực hành Mục tiêu đề tài ⮚ ⮚ ⮚ ⮚ Tìm hiểu khái niệm quy trình kiểm thử Cloud Cookie Tìm hiểu những lợi ích thách thức kĩ thuật Tìm hiểu công cụ thường sử dụng kĩ thuật Ứng dụng công cụ vào sản phẩm thực tế Bố cục đề tài Nội dung đề tài gồm chương Chương 1: Tởng quan về kiểm thử phần mềm Chương giới thiệu sơ lược khái niệm kiểm thử, giới thiệu quy trình kĩ thuật kiểm thử Chương 2: Tìm hiểu kĩ thuật Cloud Testing và Cookie Testing Chương sâu vào tìm hiểu kĩ thuật Cloud Testing Cookie Testing Chương 3: Sử dụng công cụ vào thực tiễn Chương sẽ sử dụng công cụ kiểm thử Cloud Testing Cookie Testing để kiểm thử sản phẩm thực tế Phần : Nội dung Chương : Tổng quan về kiểm thử phần mềm Một số khái niệm 1.1.Kiểm thử phần mềm (Software testing) Kiểm thử phần mềm q trình thực thi chương trình với mục đích tìm lỗi Kiểm thử phần mềm đảm bảo sản phẩm phần mềm đáp ứng đầy đủ, xác đúng yêu cầu khách hàng, yêu cầu sản phẩm đặt Kiểm thử phần mềm cung cấp mục tiêu, nhìn độc lập phần mềm, điều cho phép việc đánh giá hiểu rõ rủi ro thực thi phần mềm Kiểm thử phần mềm tạo điều kiện cho tận dụng tối đa tư đánh giá sáng tạo để phát những điểm mà người khác chưa nhìn thấy Trong kỹ thuật, kiểm thử không giới hạn việc thực chương trình ứng dụng với mục đích tìm lỗi phần mềm mà còn trình phê chuẩn, xác minh chương trình máy tính / ứng dụng / sản phẩm nhằm: ● Đáp ứng yêu cầu hướng dẫn thiết kế phát triển phần mềm ● Thực công việc đúng kỳ vọng ● Có thể triển khai với những đặc tính tương tự ● Đáp ứng nhu cầu bên liên quan Tùy thuộc vào phương pháp, việc kiểm thử thực lúc trình phát triển phần mềm Theo truyền thống, nỗ lực kiểm thử tiến hành sau yêu cầu xác định việc lập trình hồn tất, Nhưng Agile (là tập hợp phương pháp phát triển phần mềm linh hoạt dựa việc lặp lặp lại gia tăng giá trị) việc kiểm thử tiến hành liên tục suốt trình xây dựng phần mềm Như vậy, phương pháp kiểm thử bị chi phối theo quy trình phát triển phần mềm định Kiểm thử phần mềm đóng vai trò quan trọng việc đánh giá thu chất lượng cao sản phẩm phần mềm q trình phát triển Thơng qua chu trình “kiểm thử – tìm lỗi – sửa lỗi”, chất lượng sản phẩm phần mềm sẽ cải tiến Mặt khác, thông qua việc tiến hành kiểm thử mức hệ thống trước cho lưu hành sản phẩm, ta biết sản phẩm tốt mức 1.2.Kiểm thử hộp đen (Black box testing) Hình 1 Kiểm thử hộp đen Kiểm thử hộp đen phương pháp kiểm thử mà tester xem xét đến đầu vào đầu chương trình mà khơng quan tâm code bên viết Tester thực việc kiểm thử dựa hồn tồn vào đặc tả u cầu Mục đích kiểm thử hộp đen tìm lỗi giao diện, chức phần mềm Các trường hợp kiểm thử sẽ xây dựng xung quanh 1.3.Kiểm thử hợp trắng (White box testing) Hình Kiểm thử hộp trắng Kiểm thử hộp trắng phương pháp kiểm thử mà cấu trúc thuật toán chương trình đưa vào xem xét Các trường hợp kiểm thử thiết kế dựa vào cấu trúc mã cách làm việc chương trình Tester truy cập vào mã nguồn chương trình để kiểm tra 1.4.Kiểm thử đơn vị (Unit test) Kiểm thử đơn vị hoạt động kiểm thử nhỏ Kiểm thử thực hàm thành phần riêng lẻ Để thực người kiểm thử phải hiểu biết code, chương trình, hàm, … Mục đích việc thực kiểm thử đơn vị cô lập thành phần chương trình chứng minh phận riêng lẻ xác yêu cầu chức 1.5.Kiểm thử tích hợp (Integration test) Kiểm thử tích hợp thực cách gom module lại với để kiểm tra giao tiếp giữa module thân thành phần module Mục tiêu kiểm thử tích hợp: ● Phát lỗi giao tiếp xảy giữa Unit ● Tích hợp Unit đơn lẻ thành hệ thống nhỏ cuối hệ thống hoàn chỉnh để chuẩn bị cho bước kiểm thử hệ thống 1.6.Kiểm thử hệ thống (System test) Kiểm thử tập chung nhiều vào chức hệ thống Nó kiểm tra chức năng, giao diện, hành vi hệ thống cách hoàn chỉnh, đáp ứng với yêu cầu 1.7.Kiểm thử chấp nhận (Acceptance test) Kiểm thử chấp nhận hướng tới mong đợi người dùng với sản phẩm Có hai loại kiểm thử chấp nhận: Kiểm thử alpha kiểm thử Beta ● Kiểm thử Alpha: loại kiểm thử nội bộ, nghĩa phần mềm đội kiểm thử độc lập khách hàng thực nơi sản xuất phần mềm ● Kiểm thử Beta: loại kiểm thử mà khách hàng thực kiểm thử mơi trường họ Loại kiểm thử thực sau kiểm thử Alpha 1.8.Kiểm thử chức (Functional testing) Kiểm thử chức loại kiểm thử hộp đen trường hợp kiểm thử dựa đặc tả ứng dụng phần mềm/thành phần test Các chức test cách nhập vào giá trị nhập kiểm tra kết đầu quan tâm đến cấu trúc bên ứng dụng 1.9.Kiểm thử phi chức (NonFunctional testing) Kiểm thử phi chức tập trung vào khía cạnh phi chức ứng dụng, gồm: kiểm thử chịu tải, kiểm thử bảo mật, kiểm tra tính tương thích môi trường, … 1.10 Test cấu hình (Shakeout testing) Kiểm thử cấu hình kiểu kiểm thử khả hệ thống mạng, kết nối dữ liệu tương tác module Thông thường kiểu kiểm thử thực nhóm quản lý cấu hình ch̉n bị thiết lập mơi trường kiểm thử thực Họ sẽ kiểm tra xem thành phần phần mềm có hoạt động bất thường hay không Kiểu kiểm thử thực trước tiến hành thực môi trường test 1.11 Smoke testing Smoke testing trình để kiểm tra xem liệu build có ổn định hay khơng, để xem build có đủ ổn định để thực test chi tiết hay không (trong trường hợp build khơng ổn định, lỗi ln chức build lỗi sẽ trả lại cho lập trình viên u cầu sửa ln) Nó test hồi quy nhỏ đơn giản nhanh chức chính, cho thấy sản phẩm sẵn sàng cho việc test hay chưa 1.12 Adhoc testing Adhoc testing phương pháp kiểm thử dạng hộp đen mà không theo cách thơng thường Với quy trình test thơng thường phải có tài liệu yêu cầu, kế hoạch test (test plan), kịch kiểm thử Kiểu test không theo loại kỹ thuật test để tạo test case 10