Báo cáo bài tập lớn học phần kiểm thử phần mềm tìm hiểu và sử dụng các kỹ thuật kiểm thử được hỗ trợ bởi công cụ kiểm thử soapui

72 3 0
Báo cáo bài tập lớn học phần kiểm thử phần mềm tìm hiểu và sử dụng các kỹ thuật kiểm thử được hỗ trợ bởi công cụ kiểm thử soapui

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

Kiểm thử phần mềm đảm bảo rằng phần mềm được phát triển đáp ứngđược yêu cầu và mong đợi của người dùng, từ tính năng, chức năng, hiệu suất, đến độtin cậy và bảo mật.SoapUI là một công cụ

lOMoARcPSD|39514913 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ÌM HIỂU VÀ SỬ DỤNG CÁC KỸ THUẬT KIỂM THỬ ĐƯỢC HỖ TRỢ BỞI CÔNG CỤ KIỂM THỬ SOAPUI Giảng viên hướng dẫn: Th.S Hoàng Quang Huy Nh漃Ām: 9 Sinh viên: Nguyễn Minh Khuê-2020602958 Vũ Văn Hùng- 2020601712 Trịnh Đức Nhân-2020600842 Hoàng Thị Thu Trang-2020603009 Lớp: 20222IT6013007 Kh漃Āa: 15 Hà Nội-Năm 2023 1 Downloaded by XINH BONG (bongbong2@gmail.com) lOMoARcPSD|39514913 MỤC LỤC CHƯƠNG 1: MỞ ĐẦU 6 CHƯƠNG 2: KẾT QUẢ NGHIÊN CỨU 7 2.1 TỔNG QUAN 7 2.1.1 Khái niệm kiểm thử 7 2.1.2 Các loại kiểm thử 8 2.1.3 Các phương pháp kiểm thử phần mềm 13 2.1.4 Kiểm thử tự động 14 2.2 TÌM HIỂU CÔNG CỤ KIỂM THỬ PHẦN NỀM .16 2.2.1 Giới thiệu công cụ 16 2.2.2 Cách cài đặt công cụ 18 2.2.3 Cách sử dụng công cụ 26 2.3 Giới thiệu trang web TheTestingWorldAPI 36 2.3.1 Giới thiệu 36 2.3.2 Tài liệu đặc tả yêu cầu phần mềm 36 2.4 Kiểm thử trang web TheTestingWorldAPI 38 2.4.1 Lập kế hoạch kiểm thử (Test plan) 38 2.4.2 Vũ Văn Hùng - Lấy dữ liệu 40 2.4.3 Nguyễn Minh Khuê - TechnicalSkills 49 2.4.4 Hoàng Thị Thu Trang – Hệ thống Chi tiết sinh viên 55 2.4.5 Trịnh Đức Nhân - Địa chỉ .62 CHƯƠNG 3 KIẾN THỨC LĨNH HỘI VÀ BÀI HỌC KINH NGHIỆM 70 MỤC LỤC HÌNH ẢNH 2 Downloaded by XINH BONG (bongbong2@gmail.com) lOMoARcPSD|39514913 Ảnh 1: Các giao thức của SOAPUI 17 Ảnh 2: Các yêu cầu tải SOAPUI 19 Ảnh 3: Hình ảnh trang chủ của SoapUi 20 Ảnh 4: Hình ảnh trang downloading SoapUI .20 Ảnh 5: Chạy file để tải phần mềm SoapUI 21 Ảnh 6: Hướng dẫn thiết lập tải SoapUI 21 Ảnh 7: Chọn thư mục để lưu phần mềm SoapUi 22 Ảnh 8: Chọn thành phần muốn cài đặt xuống 22 Ảnh 9: Chọn thành phần muốn cài đặt xuống 23 Ảnh 10: Chọn vị trí thư mục lưu trữ 24 Ảnh 11: Chọn vị trí thư mục bắt đầu và next 24 Ảnh 12: Chọn Create a desktop icon 25 Ảnh 13: Cài đặt hoàn tất .25 Ảnh 14: Giao diện màn hình chính của SoapUi 26 Ảnh 15: Cấu trúc Workspace trong SOAP UI 27 Ảnh 16: Tạo 1 Workspace 27 Ảnh 17: Hoàn thành tạo Workspace 28 Ảnh 18: Chọn nơi lưu trữ Workspace 28 Ảnh 19: Hình ảnh không gian làm việc của Workspace .29 Ảnh 20: Ví dụ về kiểm thử SoapUI 30 Ảnh 21: Sự khác nhau giữa SOAP và REST 31 Ảnh 22: Tạo 1 file new Rest API .31 3 Downloaded by XINH BONG (bongbong2@gmail.com) lOMoARcPSD|39514913 Ảnh 23: Ví dụ truyền body 32 Ảnh 24: Tạo testsuite with testcase 32 Ảnh 25: Sửa tên TestSuite 33 Ảnh 26: Tạo TestSuit và đổi tên TestCase 34 Ảnh 27: Tạo TestSuit và đổi tên TestCase 34 Ảnh 28: Màn hình hiển thị sau khi tạo Test case 34 Ảnh 29: Ví dụ: truyền dữ liệu kiểu body 35 Ảnh 30: Ví dụ: truyền dữ liệu kiểu body 35 Ảnh 31: Kết quả chạy test case 36 Ảnh 32: Kết quả chạy test case 46 Ảnh 33: Tạo mới TestSuite 46 Ảnh 34: Tạo mới Test Case 47 Ảnh 35: Lấy dữ liệu 47 Ảnh 36: Lấy dữ liệu thành công 48 Ảnh 37: Dữ liệu lấy thành công 49 Ảnh 38: Thêm kỹ năng mới .51 Ảnh 39: Thêm kỹ năng mới .52 Ảnh 40: Sửa kỹ năng có id = 90048 53 Ảnh 41: Xoá kỹ năng có id = 90086 54 Ảnh 42: Xoá kỹ năng có id = 1000 55 Ảnh 43: Xoá kỹ năng có id = 1000 58 Ảnh 44: Xoá kỹ năng có id = 1000 58 Ảnh 45: Lấy ra danh sách sinh viên có id cụ thể 59 4 Downloaded by XINH BONG (bongbong2@gmail.com) lOMoARcPSD|39514913 Ảnh 46: Lấy ra danh sách sinh viên có id cụ thể 59 Ảnh 47: Thêm sinh viên có đầy đủ chi tiết 60 Ảnh 48: Tạo resource 60 Ảnh 49: Tạo resource 61 Ảnh 50: Tạo testSuite 61 Ảnh 51: Tạo testcase 62 Ảnh 52: Xoá sinh viên có id cụ thể 62 Ảnh 53: Tạo mới REST Project 64 Ảnh 54: Phương thức Post 64 Ảnh 55: Add data .65 Ảnh 56: Tạo test case và test suite, request 66 Ảnh 57: Kết quả 66 Ảnh 58: Tạo phương thức 67 Ảnh 59: Data được thêm 67 Ảnh 60: Kết quả 68 Ảnh 61: Kết quả 68 5 Downloaded by XINH BONG (bongbong2@gmail.com) lOMoARcPSD|39514913 CHƯƠNG 1: MỞ ĐẦU Công nghệ thông tin đang phát triển với tốc độ chóng mặt và trở thành một phần không thể thiếu trong đời sống của chúng ta Trong lĩnh vực phát triển phần mềm, công nghệ thông tin đóng vai trò quan trọng trong việc tạo ra các sản phẩm phần mềm chất lượng cao và đáp ứng nhu cầu của người dùng Trong quá trình phát triển phần mềm, kiểm thử phần mềm là một phần quan trọng và không thể thiếu Kiểm thử phần mềm đảm bảo rằng phần mềm được phát triển đáp ứng được yêu cầu và mong đợi của người dùng, từ tính năng, chức năng, hiệu suất, đến độ tin cậy và bảo mật SoapUI là một công cụ kiểm thử phần mềm phổ biến và mạnh mẽ được sử dụng trong lĩnh vực này Nó là một công cụ kiểm thử phần mềm dựa trên giao thức SOAP (Simple Object Access Protocol) và REST (Representational State Transfer) SoapUI cung cấp các tính năng để kiểm tra và xác thực các dịch vụ web của phần mềm, đồng thời cho phép các kỹ sư kiểm thử phần mềm kiểm tra tính năng, tương tác với cơ sở dữ liệu, kiểm tra bảo mật và hiệu suất của phần mềm Với SoapUI, các kỹ sư kiểm thử phần mềm có thể tạo ra các kịch bản kiểm thử tự động để đảm bảo tính toàn vẹn và độ tin cậy của các dịch vụ web Nó cũng cung cấp các công cụ và tính năng để giúp người dùng tìm ra các lỗi và sự cố trong quá trình kiểm thử phần mềm Sử dụng SoapUI trong kiểm thử phần mềm giúp các kỹ sư kiểm thử phần mềm tiết kiệm thời gian và tăng tính hiệu quả của quá trình kiểm thử Với tính năng tự động hóa, các kịch bản kiểm thử có thể được thực hiện nhanh chóng và liên tục để đảm bảo tính đáng tin cậy của phần mềm Tóm lại, SoapUI là một công cụ kiểm thử phần mềm mạnh mẽ và hiệu quả trong việc kiểm thử các dịch vụ web của phần mềm Nó giúp các kỹ sư kiểm thử phần mềm tạo ra các kịch bản kiểm thử tự động và xác thực các tính năng của phần mềm để đảm bảo tính toàn vẹn và độ tin cậy của sản phẩm phần mềm 6 Downloaded by XINH BONG (bongbong2@gmail.com) lOMoARcPSD|39514913 CHƯƠNG 2: KẾT QUẢ NGHIÊN CỨU 2.1 TỔNG QUAN 2.1.1 Khái niệm kiểm thử 2.1.1.1 Kiểm thử là gì? Kiểm thử (Testing) là quá trình đánh giá các tính năng và chức năng của một sản phẩm phần mềm để đảm bảo rằng nó đáp ứng các yêu cầu của khách hàng và đáp ứng được các tiêu chuẩn chất lượng Quá trình kiểm thử phần mềm có thể được thực hiện bằng cách sử dụng các phương pháp, kỹ thuật và công cụ khác nhau để đảm bảo rằng sản phẩm đáp ứng được các yêu cầu chức năng, phi chức năng, hiệu suất và an toàn Các nguyên tắc kiểm thử (7 testing principles):  Các nguyên tắc kiểm thử (7 testing principles) được đưa ra bởi ISTQB (International Software Testing Qualifications Board) và là các nguyên tắc cơ bản để hướng dẫn quá trình kiểm thử phần mềm Các nguyên tắc này bao gồm:  Kiểm thử không thể chứng minh tính đúng đắn của phần mềm: Kiểm thử chỉ có thể giúp phát hiện các lỗi hoặc khuyết tật trong phần mềm, nhưng không thể chứng minh rằng phần mềm là hoàn toàn đúng đắn  Kiểm thử sớm: Kiểm thử nên bắt đầu từ giai đoạn sớm nhất trong quá trình phát triển phần mềm, để giảm thiểu chi phí và thời gian trong việc sửa lỗi  Toàn diện: Kiểm thử nên được thực hiện một cách toàn diện, bao gồm kiểm thử chức năng, phi chức năng và hiệu suất của phần mềm  Sự chuyên môn: Kiểm thử nên được thực hiện bởi các chuyên gia trong lĩnh vực kiểm thử, để đảm bảo tính chính xác và hiệu quả của quá trình kiểm thử  Lặp lại: Kiểm thử nên được lặp lại nhiều lần để đảm bảo tính ổn định và độ tin cậy của phần mềm  Tính tự động: Kiểm thử nên được tự động hóa để tăng tính hiệu quả và giảm thiểu thời gian và chi phí  Kiểm thử phải dừng lại khi đạt được mục tiêu: Kiểm thử nên được thực hiện đến khi đạt được mục tiêu của quá trình kiểm thử, nhưng nếu không đạt được mục tiêu sau một thời gian nhất định, quá trình kiểm thử có thể phải dừng lại để tiến hành các phương pháp kiểm thử khác Tại sao kiểm thử phần mềm là cần thiết?  Đảm bảo chất lượng sản phẩm: Kiểm thử phần mềm giúp đảm bảo rằng phần mềm được sản xuất có chất lượng tốt, đáp ứng được yêu cầu của khách hàng và người dùng cuối 7 Downloaded by XINH BONG (bongbong2@gmail.com) lOMoARcPSD|39514913  Phát hiện lỗi sớm: Kiểm thử phần mềm giúp phát hiện và sửa chữa các lỗi phần mềm sớm, trước khi phần mềm được triển khai và sử dụng rộng rãi, điều này giúp giảm thiểu chi phí và thời gian sửa chữa  Tiết kiệm chi phí: Kiểm thử phần mềm giúp giảm thiểu chi phí sửa chữa phần mềm và giảm thiểu chi phí liên quan đến sự cố phần mềm  Đảm bảo tính ổn định và độ tin cậy: Kiểm thử phần mềm giúp đảm bảo tính ổn định và độ tin cậy của phần mềm, giúp giảm thiểu nguy cơ sự cố và giúp người dùng sử dụng phần mềm một cách an toàn  Đảm bảo tính tương thích: Kiểm thử phần mềm giúp đảm bảo tính tương thích của phần mềm với các hệ thống, phần cứng và phần mềm khác, giúp người dùng sử dụng phần mềm một cách dễ dàng và hiệu quả  Tăng niềm tin của khách hàng: Kiểm thử phần mềm giúp tăng niềm tin của khách hàng và người dùng cuối vào sản phẩm, đảm bảo rằng phần mềm đáp ứng được các yêu cầu và mong đợi của họ  Tóm lại, kiểm thử phần mềm là cần thiết để đảm bảo chất lượng sản phẩm, giảm thiểu chi phí sửa chữa, đảm bảo tính ổn định và độ tin cậy của phần mềm, tăng niềm tin của khách hàng và người dùng cuối, và đảm bảo tính tương thích của phần mềm 2.1.2 Các loại kiểm thử 2.1.2.1 Kiểm thử chức năng (functional testing) Kiểm thử chức năng (Functional testing) là một phương pháp kiểm thử phần mềm để đảm bảo rằng phần mềm hoạt động đúng theo các yêu cầu chức năng được đặt ra Kiểm thử chức năng tập trung vào việc kiểm tra các tính năng, chức năng, và hành vi của phần mềm để đảm bảo rằng chúng hoạt động đúng cách Dựa trên yêu cầu:  Sử dụng các đặc tả kỹ thuật của các yêu cầu chức năng để làm cơ sở cho việc test các thiết kế  Nội dung của các yêu cầu có thể làm các mục kiểm thử ban đầu hoặc sử dụng nó như là một danh sách các mục kiểm thử hoặc không kiểm thử  Dựa theo yêu cầu để phân mức độ ưu tiên trong quá trình kiểm thử Cần ưu tiên các yêu cầu có mức độ rủi ro cao Dựa trên quy trình nghiệp vụ:  Các quy trình nghiệp vụ mô tả các kịch bản scenarios liên quan đến các nghiệp vụ hằng ngày của hệ thống 8 Downloaded by XINH BONG (bongbong2@gmail.com) lOMoARcPSD|39514913  Các usecase được bắt nguồn phát triển theo hướng đối tượng nhưng hiện tại phổ biến trong nhiều trong các vòng đời phát triển  Lấy các quy trình nghiệp vụ làm điểm khởi đầu, các quy trình nghiệp vụ xuất phát từ các nhiệm vụ được thực hiện bởi người dùng  Các use case là một cơ sở hữu ích cho các testcase từ góc độ nghiệp vụ Các bước trong kiểm thử chức năng bao gồm:  Phân tích yêu cầu: Đầu tiên, kiểm thử viên phải đọc và hiểu các yêu cầu chức năng của phần mềm  Lập kế hoạch kiểm thử: Sau khi hiểu các yêu cầu chức năng, kiểm thử viên sẽ lập kế hoạch kiểm thử để đảm bảo rằng tất cả các chức năng đã được kiểm thử đầy đủ  Thiết kế kiểm thử: Kiểm thử viên sẽ thiết kế các ca kiểm thử để kiểm tra tính đúng đắn của các chức năng của phần mềm  Thực hiện kiểm thử: Kiểm thử viên sẽ thực hiện các ca kiểm thử đã thiết kế để đảm bảo rằng các chức năng của phần mềm hoạt động đúng cách  Quản lý lỗi: Nếu phát hiện ra các lỗi trong quá trình kiểm thử, kiểm thử viên sẽ ghi lại các lỗi này và báo cáo cho nhóm phát triển để sửa chữa  Xác nhận kết quả kiểm thử: Kiểm thử viên sẽ xác nhận kết quả kiểm thử để đảm bảo rằng tất cả các chức năng của phần mềm đã được kiểm thử đầy đủ và đáp ứng được các yêu cầu chức năng  Kiểm thử chức năng là một phương pháp quan trọng trong kiểm thử phần mềm để đảm bảo tính đúng đắn và đáp ứng các yêu cầu chức năng của phần mềm Các loại kiểm thử chức năng: ● Kiểm thử đơn vị (Unit Testing) ● Kiểm thử khói (Smoke Testing - check nhanh xem hệ thống có khởi động được hay không) ● Kiểm thử độ tỉnh táo (Sanity Testing - check nhanh xem sau khi sửa đổi thì function có hoạt động như mong muốn hay không) ● Kiểm thử giao diện (Interface Testing) ● Kiểm thử tích hợp (Integration Testing) ● Kiểm thử hệ thống (Systems Testing) ● Kiểm thử hồi quy (Regression Testing) ● Kiểm thử chấp nhận (Acceptance testing) 9 Downloaded by XINH BONG (bongbong2@gmail.com) lOMoARcPSD|39514913 2.1.2.2 Kiểm thử phi chức năng (non-functional testing) Kiểm thử phi chức năng cùng giống kiểm thử chức năng ở chỗ là thực hiện được ở mọi cấp độ kiểm thử, Kiểm thử phi chức năng xem xét các hành vi bên ngoài của phần mềm Kiểm thử phi chức năng bao gồm: ● Kiểm thử hiệu năng (performance testing) ● Kiểm thử khả năng chịu tải (load testing) ● Kiểm thử áp lực (stress testing) ● Kiểm thử khả năng sử dụng (usability testing) ● Kiểm thử bảo trì (maintainability testing) ● Kiểm thử độ tin cậy (reliability testing) ● Kiểm thử tính tương thích (portability testing) Những đặc điểm phụ tương ứng: ● Độ tin cậy (reliability): được xác định rõ hơn từ các đặc trưng phụ đã được tính toán cẩn thận (độ bền), khả năng chịu lỗi (fault tolerance), phục hồi (recoverability) và tuân thủ (compliance) ● Khả năng sử dụng (usability): được chia thành các đặc trưng dễ hiểu, khả năng học hỏi (learnability), khả năng hoạt động (operability), sự thu hút (attractiveness) và tính tuân thủ (compliance) ● Tính hiệu quả (efficiency): được chia thành hành vi về thời gian (hiệu suất), sử dụng tài nguyên (resource utilization) và tuân thủ (compliance) ● Khả năng bảo trì (maintainability): bao gồm 5 đặc điểm phụ: phân tích, khả năng thay đổi, tính ổn định, khả năng kiểm tra và tuân thủ ● Tính tương thích (portability): bao gồm 5 đặc điểm phụ: khả năng thích ứng, khả năng cài đặt, cùng tồn tại, khả năng thay thế và tuân thủ 2.1.2.3 Kiểm thử cấu trúc/kiến trúc phần mềm (structural testing) Kiểm thử cấu trúc có thể xảy ra ở bất kỳ mức độ kiểm thử nào, được áp dụng chủ yếu ở kiểm thử thành phần, tích hợp Phương pháp kiểm thử cấu trúc cũng có thể áp dụng ở các mức độ như kiểm thử tích hợp hệ thống hoặc kiểm thử chấp nhận 10 Downloaded by XINH BONG (bongbong2@gmail.com)

Ngày đăng: 27/03/2024, 15:55

Tài liệu cùng người dùng

  • Đang cập nhật ...

Tài liệu liên quan