Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 58 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
58
Dung lượng
1,41 MB
Nội dung
ĐẠI HỌC QUỐC GIA HÀ NỘI TRƯỜNG ĐẠI HỌC CÔNG NGHỆ NGUYỄN THỊ HỒNG VÂN PHƯƠNG PHÁP PHÂN TÍCH SỰ ẢNH HƯỞNG CỦA CÁC THÀNH PHẦN VÀ ỨNG DỤNG CHO KIỂM THỬ HỒI QUY TRONG CÁC DỰ ÁN JAVA EE LUẬN VĂN THẠC SĨ CÔNG NGHỆ THÔNG TIN Hà Nội – 2018 ĐẠI HỌC QUỐC GIA HÀ NỘI TRƯỜNG ĐẠI HỌC CÔNG NGHỆ NGUYỄN THỊ HỒNG VÂN PHƯƠNG PHÁP PHÂN TÍCH SỰ ẢNH HƯỞNG CỦA CÁC THÀNH PHẦN VÀ ỨNG DỤNG CHO KIỂM THỬ HỒI QUY TRONG CÁC DỰ ÁN JAVA EE Ngành: Công nghệ thông tin Chuyên ngành: Kỹ Thuật Phần Mềm Mã số: 8480103.01 LUẬN VĂN THẠC SĨ CÔNG NGHỆ THÔNG TIN NGƯỜI HƯỚNG DẪN KHOA HỌC: PGS TS PHẠM NGỌC HÙNG Hà Nội – 2018 i MỤC LỤC MỤC LỤC i LỜI CAM ĐOAN iii LỜI CẢM ƠN iv DANH MỤC THUẬT NGỮ VIẾT TẮT v DANH MỤC HÌNH VẼ vi DANH MỤC BẢNG viii Chương Giới thiệu Chương Phương pháp phân tích ảnh hưởng JCIA .11 2.1 Bộ công cụ JCIA 11 2.2 Phân tích phụ thuộc 17 2.2.1 Tiền xử lý mã nguồn .17 2.2.2 Phân tích phụ thuộc cho Struts 17 2.2.3 Phân tích phụ thuộc Java Core 19 2.2.4 Phân tích phụ thuộc cho cơng nghệ kết nối sở liệu JDBC 20 2.2.5 Phân tích phụ thuộc cho Hibernate 24 2.3 Quản lý phiên 27 Chương Phương pháp phân tích ảnh hưởng thành phần giao diện phân loại kiểm thử hồi quy .28 3.1 Phương pháp phân tích ảnh hưởng thành phần giao diện .28 3.1.1 Phân tích kiến trúc Java Servlet 28 3.1.2 Phương pháp phân tích ảnh hưởng .31 3.2 Phương pháp phân loại kiểm thử hồi quy .35 3.2.1 Kiểm thử hồi quy 35 3.2.2 Phân loại kiểm thử hồi quy 35 3.2.3 Quy trình kiểm thử hồi quy dựa phương pháp đề xuất 36 Chương Thực nghiệm triển khai 36 4.1 Giới thiệu công cụ JCIA mở rộng 38 4.2 Thực nghiệm 39 4.3 Ý nghĩa công cụ thực nghiệm 39 Chương Kết luận 53 ii TÀI LIỆU THAM KHẢO 56 iii LỜI CAM ĐOAN Tôi xin cam đoan nghiên với đề tài “Phương pháp phân tích ảnh hưởng thành phần ứng dụng cho kiểm thử hồi quy dự án Java EE” trình bày luận văn cơng trình nghiên cứu riêng hướng dẫn thầy giáo PGS TS Phạm Ngọc Hùng, không chép lại người khác Tất nguồn tài liệu tham khảo, cơng trình nghiên cứu liên quan trích dẫn cụ thể Tơi xin chịu hồn tồn trách nhiệm có phát chép mà khơng có trích dẫn tài liệu tham khảo iv LỜI CẢM ƠN Đầu tiên, xin gửi lời cảm ơn chân thành tới thầy giáo PGS TS Phạm Ngọc Hùng - người hướng dẫn tận tình, bảo đóng góp ý kiến q báu cho tơi suốt q trình học tập làm khóa luận Trong quãng thời gian thầy hướng dẫn, học hỏi nhiều kinh nghiệm phương pháp nghiên cứu, kỹ trình bày Thầy cịn tiếp thêm cho tơi niềm tin vượt qua khó khăn giúp trưởng thành sống Tôi xin gửi lời cảm ơn chân thành đến thầy cô giáo khoa Công nghệ thông tin trường Đại học Công nghệ - Đại học Quốc gia Hà Nội tận tình truyền đạt kiến thức quý báu, tạo điều kiện tốt cho suốt thời gian học tập nghiên cứu Tiếp theo, xin gửi lời cảm ơn đến gia đình người thân bên cạnh động viên, cổ vũ chỗ dựa vững để yên tâm học hành suốt năm qua Tôi xin gửi lời cảm ơn chân thành đến Bùi Quang Cường Ngô Hải Yến tạo điều kiện giúp đỡ để nghiên cứu công cụ JCIA Mặc dù cố gắng luận văn chắn không tránh khỏi thiếu sót, tơi mong nhận ý kiến đánh giá phê bình từ phía Thầy Cơ để luận văn hồn thiện Tơi xin chân thành cảm ơn! Hà Nội, tháng 10 năm 2018 Học viên Nguyễn Thị Hồng Vân v DANH MỤC THUẬT NGỮ VIẾT TẮT STT Từ viết tắt Từ đầy đủ Ý nghĩa AST Abstract Syntax Tree Cây cấu trúc trừu tượng CIA Change Impact Analysis Phân tích ảnh hưởng thay đổi DAO Data Access Object Đối tượng truy cập liệu ERD Entity Relationship Diagram Biểu đồ quan hệ thực thể Java EE Java Enterprise Edition Java phiên doanh nghiệp JCIA Java Change Impact Analysis Phân tích ảnh hưởng thay đổi mã nguồn dự án Java JDBC Java Database Connectivity Giao diện tương tác với sở liệu quan hệ Java JDG Java Dependency Graph Đồ thị phụ thuộc Java EE MVC Model - View - Controller Mơ hình thiết kế ứng dụng Web 10 ORM Object Relational Mapping Ánh xạ quan hệ đối tượng vi DANH MỤC HÌNH VẼ Hình 2.1 Giao diện công cụ JCIA 13 Hình 2.2 Màn hình Project View 13 Hình 2.3 Màn hình Dependency View 14 Hình 2.4 Change Impact View .15 Hình 2.5 Hiển thị mã nguồn 15 Hình 2.6 Change Set View 16 Hình 2.7 Impact Set View 16 Hình 2.8 Mơ hình ứng dụng Struts2 .17 Hình 2.9 Quy trình phân tích phụ thuộc cho ứng dụng Struts 18 Hình 2.10 Ví dụ minh họa đồ thị chuỗi 22 Hình 2.11 Quá trình xây dựng dự đốn câu truy vấn 23 Hình 2.12 Q trình phân tích phụ thuộc cho Hibernate .24 Hình 2.13 So sánh cấu trúc hai phiên mã nguồn 27 Hình 3.1 Kiến trúc Java Servlet 28 Hình 3.2 Vòng đời Java Servlet .29 Hình 3.3 Mã nguồn sử dụng tảng Java Servlet 30 Hình 3.4 Phân loại kiểm thử hồi quy 35 Hình 3.5 Quy trình kiểm thử hồi quy đề xuất 36 Hình 4.1 Kiến trúc cơng cụ JCIA 38 Hình 4.2 Kết đầu công cụ 39 Hình 4.3 Ứng dụng Web quản lý bệnh viện 40 Hình 4.4 Lỗi xảy phiên 49 Hình 4.6 Yêu cầu thêm cho giao diện quản lý bệnh nhân 50 Hình 4.7 Nghiệp vụ liên quan đến Health Insurance 50 Hình 4.8 Kết tập thay đổi ảnh hưởng cho kiểm thử đơn vị 51 Hình 4.9 Kết tập thay đổi ảnh hưởng cho kiểm thử giao diện 51 Hình 4.10 Kết kiểm thử hồi quy giao diện với Ranorex .52 Hình 4.11 Kết tập thay đổi ảnh hưởng cho kiểm thử tích hợp 52 vii viii DANH MỤC BẢNG Bảng 2.1 Ý nghĩa kiểu cạnh đồ thị chuỗi .24 Bảng 2.2 Các phương thức truy xuất CSDL có sẵn Hibernate 26 Bảng 4.1 Mô tả yêu cầu chức quản lý nhân viên 41 Bảng 4.2 Mô tả yêu cầu chức quản lý phòng 42 Bảng 4.3 Mô tả yêu cầu chức quản lý dịch vụ 42 Bảng 4.4 Mô tả yêu cầu chức quản lý bệnh nhân 43 Bảng 4.5 Mô tả yêu cầu chức đặt phòng .43 Bảng 4.6 Mô tả yêu cầu chức quản lý thuốc .44 Bảng 4.7 Mô tả yêu cầu chức quản lý bán thuốc 44