Nghiên cứu và ứng dụng kiểm thử web service Nghiên cứu và ứng dụng kiểm thử web service Nghiên cứu và ứng dụng kiểm thử web service luận văn tốt nghiệp,luận văn thạc sĩ, luận văn cao học, luận văn đại học, luận án tiến sĩ, đồ án tốt nghiệp luận văn tốt nghiệp,luận văn thạc sĩ, luận văn cao học, luận văn đại học, luận án tiến sĩ, đồ án tốt nghiệp
BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI - Mai Thùy Ngân NGHIÊN CỨU VÀ ỨNG DỤNG KIỂM THỬ WEB SERVICE Chuyên ngành: Kỹ thuật Máy tính Truyền thơng LUẬN VĂN THẠC SĨ KỸ THUẬT Kỹ thuật Máy tính Truyền thơng NGƯỜI HƯỚNG DẪN KHOA HỌC: TS Phạm Huy Hoàng Hà Nội - Năm 2016 Nghiên cứu ứng dụng kiểm thử web service MỤC LỤC MỤC LỤC LỜI CAM ĐOAN DANH MỤC CÁC KÝ HIỆU, CÁC CHỮ VIẾT TẮT DANH MỤC CÁC HÌNH VẼ DANH MỤC CÁC BẢNG PHẦN MỞ ĐẦU Lý chọn đề tài Mục tiêu đề tài Đối tượng phạm vi nghiên cứu Phương pháp nghiên cứu Tóm tắt đọng nội dung đóng góp tác giả 10 Bố cục luận văn 11 Chương 1: GIỚI THIỆU VỀ WEB SERVICE 12 1.1 Tổng quan web service 12 1.1.1 Web service gì? 13 1.1.2 Đặc điểm web service 13 1.1.3 Kiến trúc web service 14 1.2 Các thành phần web service 16 1.2.1 Giao thức XML-RPC 16 1.2.2 Giao thức SOAP 16 1.2.3 Ngôn ngữ miêu tả dịch vụ web – WSDL 18 1.2.4 UDDI 20 1.3 Bảo mật dịch vụ web 24 1.3.1 Những khái niệm 25 1.3.2 Bảo mật tầng vận chuyển 26 1.3.3 An ninh XML 27 1.4 Ưu điểm nhược điểm dịch vụ web 28 1.4.1 Ưu điểm dịch vụ web 28 1.4.2 Những nhược điểm dịch vụ web 29 1.5 Tiểu kết chương 30 Chương 2: KIỂM THỬ DỊCH VỤ WEB 31 2.1 Những khái niệm Kiểm thử 31 2.1.1 Tại cần phải kiểm thử? 31 2.1.2 Kiểm thử gì? 33 2.1.3 Quy trình kiểm thử 34 2.2 Kiểm thử phần mềm 35 2.2.1 Kiểm thử vòng đời phát triển phần mềm 35 Trang 2/99 Nghiên cứu ứng dụng kiểm thử web service 2.2.2 Các kiểu kiểm thử phần mềm 37 2.3 Kiểm thử dịch vụ web 38 2.3.1 Tổng quan kiểm thử dịch vụ web 38 2.3.2 Kiểm thử chức dịch vụ web 40 2.3.3 Kiểm thử hiệu dịch vụ web 42 2.3.4 Kiểm thử bảo mật dịch vụ web 44 2.4 Một số công cụ hỗ trợ kiểm thử dịch vụ web 45 2.4.1 HP LoadRunner 45 2.4.2 SoapUI 46 2.4.3 Bộ công cụ IBM Rational 48 2.5 Tiểu kết chương 48 Chương 3: ỨNG DỤNG KIỂM THỬ DỊCH VỤ WEB 50 3.1 Tìm hiểu cơng cụ IBM Rational Service Tester Phịng đo kiểm Bộ Thông tin Truyền thông 50 3.1.1 Phịng đo kiểm Bộ Thơng tin Truyền thông 50 3.1.2 Tìm hiểu cơng cụ IBM Rational Service Tester Phịng đo kiểm Bộ Thông tin Truyền thông 51 3.2 Đề xuất quy trình kiểm thử dịch vụ web 57 3.2.1 Quy trình kiểm thử chấp nhận Phịng Đo kiểm thuộc Bộ thơng tin truyền thơng 57 3.2.2 Đề xuất quy trình kiểm thử dịch vụ web 63 3.3 Áp dụng kiểm thử dịch vụ web 68 3.3.1 Bước 1: Đầu vào kiểm thử 68 3.3.2 Bước 2: Thực kiểm thử 73 3.3.3 Bước 3: Đầu kiểm thử 91 3.4 Tiểu kết chương 94 Chương 4: KẾT LUẬN VÀ KIẾN NGHỊ 95 4.1 Kết luận 95 4.2 Kiến nghị 96 4.3 Hướng phát triển đề tài 96 Tài Liệu Tham Khảo 98 Trang 3/99 Nghiên cứu ứng dụng kiểm thử web service LỜI CAM ĐOAN Luận văn Thạc sĩ “Nghiên cứu ứng dụng kiểm thử web service”, chun ngành Kỹ thuật Máy tính Truyền thơng cơng trình cá nhân tơi Các nội dung nghiên cứu kết trình bày luận văn trung thực, rõ ràng Các tài liệu tham khảo, nội dung trích dẫn ghi rõ nguồn gốc Ngày tháng 09 năm 2016 Tác giả luận văn Mai Thùy Ngân Trang 4/99 Nghiên cứu ứng dụng kiểm thử web service DANH MỤC CÁC KÝ HIỆU, CÁC CHỮ VIẾT TẮT STT Viết tắt Viết đầy đủ KTTĐ Kiểm thử tự động XML EXtensible Markup Language Chú thích Ngơn ngữ Đánh dấu Mở rộng HTTP Hyper Text Transfer Protocol Giao thức truyền siêu văn HTML Hyper Text Markup Language Ngôn ngữ đánh dấu siêu văn SOAP Simple Object Access Protocol Giao thức truy cập đối tượng đơn giản WSDL Web Service Definition Language Ngôn ngữ định nghĩa dịch vụ web UDDI SMTP Universal Description, Discovery Mô tả, khám phá and Integration hội nhập giới Simple Mail Transfer Protocol Giao thức truyền thư đơn giản FTP File Transfer Protocol Giao thức truyền tệp tin 10 XML- eXtensible Markup Language – Ngôn ngữ Đánh dấu RPC Remote Procedure Call protocol Mở rộng – giao thức gọi tiến trình từ xa 11 URL Uniform Resource Locator Địa tham chiếu tài nguyên 12 URI Universal Resource Identifier 13 MSMQ Microsoft Message Queuing Trang 5/99 Định danh tài nguyên Nghiên cứu ứng dụng kiểm thử web service STT 14 Viết tắt PIP Viết đầy đủ Partner Interface Process Chú thích Quy trình giao diện đối tác 15 API application programming interface giao diện lập trình ứng dụng 16 UBR UDDI Business Registry Đăng kí kinh doanh UDDI 17 IPsec Internet Protocol Security An toàn giao thức mạng 18 SSL/TLS Secure Socket Layer/Transport Layer Security 19 VPN Virtual Private Network Mạng riêng ảo 20 HTTPS Secure Hyper Text Transfer Protocol Giao thức truyền siêu văn an toàn 21 UNC Universal Naming Convention uy ước đặt tên phổ quát 22 UMC Unified Change Management Quản lý thay đổi thống 23 ERP Enterprise Resource Planning Hoạch định tài nguyên doanh nghiệp 24 TCVN Tiêu chuẩn Việt Nam 25 Web Dịch vụ web service Trang 6/99 Nghiên cứu ứng dụng kiểm thử web service DANH MỤC CÁC HÌNH VẼ Hình Kiến trúc dịch vụ web 14 Hình Cấu trúc chung thông điệp SOAP 18 Hình Kiến trúc kĩ thuật UDDI 23 Hình Mơ hình phát triển chữ V 35 Hình Các loại kiểm thử phần mềm 37 Hình Kiến trúc HP LoadRunner 46 Hình Các giao thức mà SOAP-UI hỗ trợ 48 Hình Mơ hình kiểm thử IBM Rational Performance Tester 54 Hình IBM AppScan Enterprise 55 Hình 10 Kiến trúc ASE 57 Hình 11 Các thành phần ASE 57 Hình 12 Quy trình kiểm thử chấp nhận Phòng đo kiểm 62 Hình 13 Quy trình kiểm thử dịch vụ web 64 Hình 14 Mơ hình kết nối dịch vụ 71 Hình 15 Các hàm API phục vụ kết nối 72 Hình 16 Mơ hình kết nối 75 Hình 17 Máy chủ sở liệu 77 Hình 18 Cài đặt máy chủ Windows Server 2012 77 Hình 19 Thơng tin máy chủ 78 Hình 20 Cài đặt Tomcat 78 Hình 21 Cài đặt máy chủ web 79 Hình 22 Cấu hình máy chủ web 79 Hình 23 Cài đặt Oracle 11g 80 Hình 24 Sơ đồ kết nối công cụ IBM Performance Tester 81 Hình 25 Tạo dự án Performance Tester 86 Hình 26 Tạo Test Script 86 Hình 27 Tạo Test Case 87 Hình 28 Tạo Data Pools 87 Hình 29 Lập lịch kiểm thử 88 Hình 30 Kết xuất báo cáo 88 Hình 31 Tạo dự án IBM Appscan Enterprise 89 Hình 32 Thông tin dự án kiểm thử 89 Hình 33 Chạy cơng cụ 90 Hình 34 Quá trình chạy phần mềm 90 Hình 35 Kết xuất báo cáo 91 Trang 7/99 Nghiên cứu ứng dụng kiểm thử web service DANH MỤC CÁC BẢNG Bảng Phạm vi kiểm thử 51 Bảng Các bước thực kiểm thử 61 Bảng Các tiêu chuẩn đánh giá 63 Bảng Tham số kiểm thử kết kì vọng 69 Bảng Cấu hình phần cứng máy chủ 70 Bảng Cấu hình phần mềm máy chủ 70 Bảng Kế hoạch kiểm thử 75 Bảng Kịch kiểm thử 85 Bảng Báo cáo kiểm thử chức 92 Bảng 10 Báo cáo kiểm thử hiệu 93 Bảng 11 Báo cáo kiểm thử bảo mật 94 Trang 8/99 Nghiên cứu ứng dụng kiểm thử web service PHẦN MỞ ĐẦU Lý chọn đề tài Dịch vụ web công nghệ mang đến phát triển mạnh mẽ cho doanh nghiệp, đơn vị lợi ích vơ to lớn Dịch vụ web đưa phương tiện giúp doanh nghiệp mở rộng kinh doanh, nâng cao hiệu kinh doanh cải thiện dịch vụ khách hàng, mang đến nhiều tiện ích để phục vụ mặt đời sống người Chính thế, việc đảm bảo dịch vụ web xây dựng đúng, có khả đáp ứng cho nhiều người an toàn cho người dùng doanh nghiệp cung cấp yêu cầu cấp thiết Kiểm thử dịch vụ web đóng vai trị to lớn giúp dịch vụ web ngày phát triển cách giải yêu cầu Trung tâm Chính phủ điện tử - Cục Tin học hóa – Bộ Thơng tin Truyền thơng định Phịng Đo kiểm phục vụ cơng tác quản lý chất lượng thuộc quản lý chuyên ngành Bộ Thông tin Truyền thông theo định số 1197/QĐ-BTTTT ngày 21/8/2014 Bộ trưởng Bộ Thông tin Truyền thơng Do ngồi việc thực hoạt động kiểm thử chất lượng phần mềm hệ thống, việc nghiên cứu tìm hiểu đưa quy trình kiểm thử dịch vụ web địi hỏi cấp thiết cho đơn vị trình trưởng thành phát triển chuyên môn kiểm thử Mục tiêu đề tài Nghiên cứu, đề xuất quy trình kiểm thử webservice dùng cơng cụ kiểm thử tự động (KTTĐ) để kiểm thử webservice theo quy trình, tảng, từ góp phần phát triển cơng nghệ KTTĐ cách nhanh chóng, hiệu xác Đối tượng phạm vi nghiên cứu Đề xuất quy trình kiểm thử dịch vụ web nghiên cứu thực kỹ thuật kiểm thử dịch vụ web dùng cơng cụ kiểm thử tự động Phịng đo kiểm Trung tâm Chính phủ điện tử - Cục Tin học hóa – Bộ Thơng tin Truyền thơng để thực nghiệm dự án kiểm thử dịch vụ web demo Phương pháp nghiên cứu Phương pháp nghiên cứu lý thuyết: + Nghiên cứu tổng quan dịch vụ web; Trang 9/99 Nghiên cứu ứng dụng kiểm thử web service + Tìm hiểu kiểm thử phần mềm, kiểm thử dịch vụ web; + Tìm hiểu quy trình kiểm thử chấp nhận áp dụng Phịng đo kiểm Trung tâm Chính phủ điện tử- Cục Tin học hóa – Bộ Thơng tin Truyền thơng Từ đề xuất quy trình kiểm thử dịch vụ web áp dụng linh hoạt quy trình kiểm thử chấp nhận có bổ sung, sửa đổi số nội dung cho phù hợp với yêu cầu thực tế dịch vụ web Phương pháp nghiên cứu thực nghiệm: + Ứng dụng quy trình kiểm thử dịch vụ web đề xuất, sử dụng cung cụ kiểm thử tự động IBM Rational Service Tester Phòng đo kiểm Trung tâm Chính phủ điện tử- Cục Tin học hóa – Bộ Thông tin Truyền thông để thực nghiệm kiểm thử dự án kiểm thử dịch vụ web demo Tóm tắt đọng nội dung đóng góp tác giả Trong q trình hình thành phát triển, Phịng Đo kiểm Trung tâm Chính phủ điện tử- Cục Tin học hóa – Bộ Thơng tin Truyền thông xây dựng biểu mẫu thủ tục đo kiểm cho tồn q trình kiểm thử dịch vụ bao gồm: kiểm thử đơn vị, kiểm thử tích hợp, kiểm thử hệ thống, kiểm thử chấp nhận Tuy nhiên, Việt Nam, việc nghiên cứu phát triển kiểm thử dịch vụ web nói riêng kiểm thử phần mềm hệ thống nói chung cịn mức sơ khai, chưa đưa quy trình kiểm thử chi tiết, cụ thể phù hợp với đặc thù dịch vụ web Do việc nghiên cứu tìm hiểu đưa quy trình kiểm thử dịch vụ web địi hỏi cấp thiết, góp phần vào trưởng thành phát triển chuyên môn kiểm thử đơn vị mà tác giả luận văn công tác Đề xuất quy trình kiểm thử dịch vụ web nghiên cứu thực kỹ thuật kiểm thử dịch vụ web thách thức lĩnh vực kiểm thử Với áp dụng linh hoạt quy trình kiểm thử chấp nhận Phịng đo kiểm thuộc Bộ thơng tin truyền thông, hiểu biết sâu sắc dịch vụ web, kỹ thuật triển khai phần mềm, hệ thống… quy trình kiểm thử dịch vụ web áp dụng qua dự án kiểm thử dịch vụ web demo thực bước tiến quan trọng, góp phần xây dựng loại hình Trang 10/99 Nghiên cứu ứng dụng kiểm thử web service (Minimum for Run) Memory Committed Bytes (Max for Run) Memory Available Bytes (Average for Run) Memory Available Bytes (Minimum for Run) Memory Available Bytes (Max for Run) Intel[R] Network 82574L Connection 2,516,975,616 1,353,617,408 2,132,619,695 2,918,961,368 2,118,721,536 2,915,004,416 2,145,456,128 2,921,349,120 Gigabit _2 384.2 Bytes Received/sec Intel[R] Network 82574L Connection Gigabit _2 4,508.6 Bytes Sent/sec Intel[R] Network 82574L Connection Gigabit _2 Bytes Sent/sec (Average for 103,673 Run) Intel[R] Network 82574L Connection Gigabit _2 Bytes Sent/sec (Minimum for 4,482.4 Run) Học viên thực hiện: Mai Thùy Ngân – CB130040 – 13BMTTT Trang 55/69 Nghiên cứu ứng dụng kiểm thử web service Intel[R] Network 82574L Connection Gigabit _2 194,635 Bytes Sent/sec (Max for Run) Intel[R] Network 82574L Connection Gigabit _2 Bytes Received/sec (Average 122,977 for Run) Intel[R] Network 82574L Connection Gigabit _2 Bytes Received/sec (Minimum 384.2 for Run) Intel[R] Network 82574L Connection Gigabit _2 Bytes Received/sec (Max for 234,506 Run) Intel[R] 82574L Gigabit Network Connection Bytes 315.5 Received/sec Intel[R] 82574L Gigabit Network Connection Bytes 4,162.1 Sent/sec Intel[R] 82574L Gigabit Network Connection Bytes Received/sec (Average for 72,923.1 Run) Học viên thực hiện: Mai Thùy Ngân – CB130040 – 13BMTTT Trang 56/69 Nghiên cứu ứng dụng kiểm thử web service Intel[R] 82574L Gigabit Network Connection Bytes Received/sec (Minimum for 284.1 Run) Intel[R] 82574L Gigabit Network Connection Bytes 142,072 Received/sec (Max for Run) Intel[R] 82574L Gigabit Network Connection Bytes 101,057 Sent/sec (Average for Run) Intel[R] 82574L Gigabit Network Connection Bytes 4,134.5 Sent/sec (Minimum for Run) Intel[R] 82574L Gigabit Network Connection Bytes 191,393 Sent/sec (Max for Run) • Kiểm thử áp lực với 550 người sử dụng Tổng quan Học viên thực hiện: Mai Thùy Ngân – CB130040 – 13BMTTT Trang 57/69 Nghiên cứu ứng dụng kiểm thử web service Executed Test SD_ST_550 Active Users Completed Users 550 Total Users 550 Elapsed Time [H:M:S] 0:01:28 Run Status Complete Average Response Time For All Requests [ms] [for Run] Maximum Response Time For All Requests [ms] [for Run] 22.7 3,473 Minimum Response Time For All Requests [ms] 11 Học viên thực hiện: Mai Thùy Ngân – CB130040 – 13BMTTT Trang 58/69 Nghiên cứu ứng dụng kiểm thử web service [for Run] Response Time Standard Deviation For All Requests [ms] [for Run] All Hosts 127.5 Maximum Rate Request Success [per second] [for Run] Minimum Rate Request Success [per second] [for Run] Maximum Rate Request Fail [per second] [for Run] Minimum Rate Request Fail [per second] [for Run] Maximum Rate Request Timeout [per second] [for Run] Minimum Rate Request Timeout [per second] [for Run] 51.6 0 0 Thời gian phản hồi Học viên thực hiện: Mai Thùy Ngân – CB130040 – 13BMTTT Trang 59/69 Nghiên cứu ứng dụng kiểm thử web service • Tải người dùng Tài nguyên hệ thống demo-web Học viên thực hiện: Mai Thùy Ngân – CB130040 – 13BMTTT demo-db Trang 60/69 Nghiên cứu ứng dụng kiểm thử web service _Total Free Megabytes 28,359 47,505 28,359 47,505 28,359 47,505 28,359 47,505 0 2.79 3.44 0 7.58 7.01 Memory Available Bytes 3,435,999,232 3,058,470,912 Memory Committed Bytes 941,051,904 1,205,620,736 3,459,717,803 3,059,457,638 3,422,535,680 3,056,472,064 Memory Available Bytes 3,533,426,688 3,063,209,984 _Total Free Megabytes (Average for Run) _Total Free Megabytes (Minimum for Run) _Total Free Megabytes (Max for Run) _Total % Processor Time _Total % Processor Time (Average for Run) _Total % Processor Time (Minimum for Run) _Total % Processor Time (Max for Run) Memory Available Bytes (Average for Run) Memory Available Bytes (Minimum for Run) Học viên thực hiện: Mai Thùy Ngân – CB130040 – 13BMTTT Trang 61/69 Nghiên cứu ứng dụng kiểm thử web service (Max for Run) Memory Committed Bytes (Average for Run) Memory Committed Bytes (Minimum for Run) Memory Committed Bytes (Max for Run) Intel[R] Network 82574L Connection 934,481,920 1,205,234,688 891,953,152 1,201,201,152 966,750,208 1,210,081,280 Gigabit _2 349.2 Bytes Received/sec Intel[R] Network 82574L Connection Gigabit _2 4,323.7 Bytes Sent/sec Intel[R] Network 82574L Connection Gigabit _2 Bytes Sent/sec (Average for 104,965 Run) Intel[R] Network 82574L Connection Gigabit _2 Bytes Sent/sec (Minimum for 4,323.3 Run) Intel[R] Network 82574L Connection Gigabit _2 218,048 Bytes Sent/sec (Max for Run) Học viên thực hiện: Mai Thùy Ngân – CB130040 – 13BMTTT Trang 62/69 Nghiên cứu ứng dụng kiểm thử web service Intel[R] Network 82574L Connection Gigabit _2 Bytes Received/sec (Average 124,821 for Run) Intel[R] Network 82574L Connection Gigabit _2 Bytes Received/sec (Minimum 349.2 for Run) Intel[R] Network 82574L Connection Gigabit _2 Bytes Received/sec (Max for 265,465 Run) Intel[R] 82574L Gigabit Network Connection Bytes 285.2 Received/sec Intel[R] 82574L Gigabit Network Connection Bytes 4,150.8 Sent/sec Intel[R] 82574L Gigabit Network Connection Bytes Received/sec (Average for 76,170.7 Run) Intel[R] 82574L Gigabit Network Connection Bytes Received/sec (Minimum 285.2 for Học viên thực hiện: Mai Thùy Ngân – CB130040 – 13BMTTT Trang 63/69 Nghiên cứu ứng dụng kiểm thử web service Run) Intel[R] 82574L Gigabit Network Connection Bytes 155,561 Received/sec (Max for Run) Intel[R] 82574L Gigabit Network Connection Bytes 106,644 Sent/sec (Average for Run) Intel[R] 82574L Gigabit Network Connection Bytes 4,150.7 Sent/sec (Minimum for Run) Intel[R] 82574L Gigabit Network Connection Bytes 217,104 Sent/sec (Max for Run) Học viên thực hiện: Mai Thùy Ngân – CB130040 – 13BMTTT Trang 64/69 Nghiên cứu ứng dụng kiểm thử web service Báo cáo chi tiết kiểm thử bảo mật Học viên thực hiện: Mai Thùy Ngân – CB130040 – 13BMTTT Trang 65/69 Nghiên cứu ứng dụng kiểm thử web service Học viên thực hiện: Mai Thùy Ngân – CB130040 – 13BMTTT Trang 66/69 Nghiên cứu ứng dụng kiểm thử web service Học viên thực hiện: Mai Thùy Ngân – CB130040 – 13BMTTT Trang 67/69 Nghiên cứu ứng dụng kiểm thử web service Học viên thực hiện: Mai Thùy Ngân – CB130040 – 13BMTTT Trang 68/69 Nghiên cứu ứng dụng kiểm thử web service Học viên thực hiện: Mai Thùy Ngân – CB130040 – 13BMTTT Trang 69/69 ... án kiểm thử dịch vụ web demo Phương pháp nghiên cứu Phương pháp nghiên cứu lý thuyết: + Nghiên cứu tổng quan dịch vụ web; Trang 9/99 Nghiên cứu ứng dụng kiểm thử web service + Tìm hiểu kiểm thử. .. 2/99 Nghiên cứu ứng dụng kiểm thử web service 2.2.2 Các kiểu kiểm thử phần mềm 37 2.3 Kiểm thử dịch vụ web 38 2.3.1 Tổng quan kiểm thử dịch vụ web 38 2.3.2 Kiểm thử. .. cụ phục vụ kiểm thử hiệu Trang 33/99 Nghiên cứu ứng dụng kiểm thử web service 2.1.3 Quy trình kiểm thử Phần dễ trình kiểm thử thực kiểm thử Tuy nhiên, để có hiệu quả, kế hoạch kiểm thử bao gồm