Nghiên cứu một số giảI pháp kiểm thử giao diện tự động sử dụng ranorex Nghiên cứu một số giảI pháp kiểm thử giao diện tự động sử dụng ranorex Nghiên cứu một số giảI pháp kiểm thử giao diện tự động sử dụng ranorex 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
ĐẠI HỌC QUỐC GIA HÀ NỘI TRƢỜNG ĐẠI HỌC CÔNG NGHỆ NGUYỄN THỊ THU HÀ NGHIÊN CỨU MỘT SỐ GIẢI PHÁP KIỂM THỬ GIAO DIỆN TỰ ĐỘNG SỬ DỤNG RANOREX LUẬN VĂN THẠC SĨ Hà Nội - 11/2018 ĐẠI HỌC QUỐC GIA HÀ NỘI TRƢỜNG ĐẠI HỌC CÔNG NGHỆ NGUYỄN THỊ THU HÀ NGHIÊN CỨU MỘT SỐ GIẢI PHÁP KIỂM THỬ GIAO DIỆN TỰ ĐỘNG SỬ DỤNG RANOREX 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Ĩ NGƢỜI HƢỚNG DẪN KHOA HỌC: PGS TS PHẠM NGỌC HÙNG Hà Nội - 11/2018 i MỤC LỤC LỜI CẢM ƠN ii LỜI CAM ĐOAN iii BẢNG CÁC TỪ VIẾT TẮT iv DANH MỤC HÌNH VẼ v DANH MỤC BẢNG BIỂU vi Chƣơng 1: Đặt vấn đề 1.1 Sự cần thiết đề tài 1.2 Nội dung luận văn 1.3 Cấu trúc luận văn Chƣơng 2: Tổng quan kiểm thử giao diện ngƣời dùng tự động 2.1 Kiểm thử phần mềm 2.2 Kiểm thử tự động phần mềm 2.3 Kiểm thử giao diện ngƣời dùng 10 Một số kỹ thuật kiểm thử giao diện ngƣời d ng 11 Chƣơng 3: Kiểm thử giao diện ngƣời dùng sử dụng Ranorex 24 3.1 Giới thiệu Ranorex 24 Tính bật 25 Chƣơng 4: Ứng dụng thực nghiệm 35 4.1 Giới thiệu phần mềm Keepass 35 4.2 Thực nghiệm 36 Chƣơng Kết luận 44 TÀI LIỆU THAM KHẢO 46 ii LỜI CẢM ƠN Lời đầu tiên, xin bày tỏ cảm ơn chân thành Thầy giáo PGS TS Phạm Ngọc Hùng - Giáo viên hƣớng dẫn trực tiếp Thầy H ng cho gợi ý dẫn quý báu trình nghiên cứu hồn thiện luận văn thạc sĩ Tơi xin gửi lời cảm ơn tới thầy cô khoa Công nghệ thông tin, trƣờng Đại học Công nghệ, Đại học Quốc gia Hà Nội hƣớng dẫn, bảo tạo điều kiện cho học tập nghiên cứu trƣờng suốt thời gian qua Tơi xin đƣợc cảm ơn gia đình, ngƣời thân, đồng nghiệp bạn bè quan tâm, động viên, giới thiệu tài liệu hữu ích thời gian học tập nghiên cứu luận văn tốt nghiệp Mặc d cố gắng hoàn thành luận văn nhƣng chắn không tránh khỏi sai sót, tơi kính mong nhận đƣợc thơng cảm bảo thầy cô bạn Tôi xin chân thành cảm ơn! iii LỜI CAM ĐOAN Tôi Nguyễn Thị Thu Hà, học viên lớp Kỹ Thuật Phần Mềm K23 xin cam đoan báo cáo luận văn đƣợc viết dƣới hƣớng dẫn thầy giáo, PGS TS Phạm Ngọc Hùng Tất kết đạt đƣợc luận văn q trình tìm hiểu, nghiên cứu riêng tơi Trong toàn nội dung luận văn, điều đƣợc trình bày kết cá nhân tơi đƣợc tổng hợp từ nhiều nguồn tài liệu khác Các tài liệu tham khảo có xuất xứ rõ ràng đƣợc trích dẫn hợp pháp Tơi xin hồn tồn chịu trách nhiệm chịu hình thức kỷ luật theo quy định cho lời cam đoan Hà Nội, ngày … tháng …… năm 2018 Ngƣời cam đoan Nguyễn Thị Thu Hà iv BẢNG CÁC TỪ VIẾT TẮT STT Từ viết tắt thuật ngữ API GUI IDE QTP Từ/Cụm từ đầy đủ Application programming Giao diện lập trình ứng interface dụng Graphical user interface Integrated Giải thích Development Environment Giao diện đồ họa ngƣời d ng Là phần mềm cung cấp môi trƣờng tích hợp cho lập trình viên Quick Test Pro Công cụ kiểm thử Hệ thống quản lý, kiểm SVN Subversion tra phiên mã nguồn TFS UI XML Team Foundation Server User Interface Extensible Language Sản phẩm quản lý mã nguồn thiết kế giao diện ngƣời dùng Marup Là ngôn ngữ đánh dấu mở rộng v DANH MỤC HÌNH VẼ Hình 2.1 Mơ hình chữ V Hình 2.2 Qui trình kiểm thử phần mềm Hình 2.3 Qui trình kiểm thử tự động phần mềm Hình 2.4 Kiểm thử giao diện thủ công 12 Hình Tính nhận dạng đối tƣợng mạnh mẽ 26 Hình 3.2 Hình ảnh chỉnh sửa hành động 27 Hình 3.3 Hình mơ tả hành động đƣợc ghi 28 Hình 3.4 Chỉnh sửa mã Ranorex 29 Hình 3.5 Tích hợp Visual Studio 30 Hình 3.6 Kết phân tích lỗi 33 Hình 3.7 Kích hoạt chế độ bảo trì 34 Hình 4.1 Mở chạy chƣơng trình thử nghiệm 36 Hình 4.2 Cửa sổ mật hiển thị 37 Hình 4.3 Giao diện chƣơng trình 37 Hình 4.4 Giá trị ban đầu thực thử nghiệm 38 Hình Các hành động đƣợc ghi thực thử nghiệm 39 Hình 4.6 Kết chạy thử nghiệm từ thử nghiệm 39 Hình Đoạn mã chứa lỗi 40 Hình 4.8 Giao diện hiển thị xếp phần tử 41 Hình 4.9 Hiển thị hành động thực thi chƣơng trình 41 Hình 4.10 Kết thực thi 42 Hình 11 Đoạn mã chƣơng trình gây lỗi 42 vi DANH MỤC BẢNG BIỂU Bảng 2.1 So sánh mức độ thân thiện sử dụng công cụ QTP, Selenium Ranorex 18 Bảng 2 So sánh tính sử dụng Selenium, QTP Ranorex 19 Bảng 2.3 Một số tính chuyên sâu Selenium, QTP Ranorex 21 Chƣơng 1: Đặt vấn đề 1.1 Sự cần thiết đề tài Trong vài thập kỉ qua, ngành công nghiệp phần mềm có bƣớc phát triển lớn quy mơ chất lƣợng, đóng vai trị quan trọng vào phát triển hầu hết mặt nƣớc Nếu nhƣ trƣớc đây, phần mềm máy tính đƣợc sử dụng để tính tốn khoa học kỹ thuật xử lý liệu, ngày nay, đƣợc ứng dụng vào mặt đời sống hàng ngày ngƣời Các ứng dụng phần mềm sống đa dạng từ ứng dụng nhỏ để điều khiển thiệt bị gia dụng nhƣ điện thoại, máy giặt, ti vi, tủ lạnh đến ứng dụng lớn cho nhiều ngƣời dùng sử dụng nhƣ hệ thống quản lý doanh nghiệp, hệ thống hƣớng dẫn giao thông, hệ thống quản lý việc khám chữa bệnh, v.v Điều đòi hỏi chất lƣợng phần mềm ngày phải đƣợc nâng cao để đáp ứng nhu cầu ngƣời sử dụng Tuy nhiên, trình tạo sản phẩm phần mềm sử dụng tốt khơng thể tránh khỏi lỗi phần mềm Chúng ta dù cố gắng đến mức thực tế lập trình viên xuất sắc lúc viết đƣợc đoạn mã khơng có lỗi Tính trung bình, lập trình viên loại tốt có từ đến ba lỗi trăm dòng lệnh Ngƣời ta ƣớc lƣợng việc kiểm tra để tìm lỗi chiếm phân nửa khối lƣợng cơng việc phải làm để có phần mềm hoạt động đƣợc [3] Do vậy, kiểm thử phần mềm khâu quan trọng sản phẩm trƣớc đƣa vào sử dụng, góp phần định thành công dự án phần mềm Tuy nhiên, kiểm thử công việc tiêu tốn nhiều thời gian, tiền bạc, cơng sức Chi phí kiểm thử phần mềm thƣờng chiếm tới bốn mƣơi phần trăm tổng chi phí cho dự án phát triển phần mềm Đối với phần mềm lớn, chi phí cịn tăng lên gấp bội có thay đổi, nâng cấp chức phần mềm, điều tránh khỏi phần mềm Một sản phẩm đƣợc thiết kế tốt nhƣng tránh khỏi sai sót Kiểm thử hiệu phát đƣợc sai sót này, tránh lỗi trƣớc phát hành sản phẩm Kiểm thử đứng dƣới vai trò ngƣời sử dụng, giúp cho sản phẩm có thích ứng phù hợp với thị hiếu nhu cầu ngày cao ngƣời dùng Trên thị trƣờng có nhiều công cụ kiểm thử tự động đƣợc sử dụng nhƣ Ranorex, QTP, Selenium, v.v Đề tài tìm hiểu công cụ hỗ trợ kiểm thử tƣơng tác giao diện cho ứng dụng sâu nghiên cứu cơng cụ Ranorex có nhiều ƣu điểm nhƣ hỗ trợ đa tảng, hỗ trợ nhiều ứng dụng Web, Desktop, Mobile Ranorex có khả xác định xác đối tƣợng có UI Hơn nữa, công cụ hỗ trợ chế “ghi chạy lại” kịch tƣơng tác UI mạnh mẽ Công cụ cho phép kiểm thử viên tùy chỉnh kịch tƣơng tác UI cách thêm trực tiếp đoạn mã nhằm tăng tính linh hoạt kiểm thử tự động Giao diện đồ họa ngƣời dùng (Graphical user interface – GUI) ngƣời dùng nhìn thấy Nếu bạn truy cập vào trang Web, bạn thấy trang chủ đƣợc gọi giao diện đồ họa ngƣời dùng trang Web Ngƣời dùng khơng nhìn thấy mã nguồn, giao diện ngƣời dùng tập trung vào cấu trúc thiết kế, hình ảnh hiển thị ngồi có nhƣ lập trình mong đợi hay khơng [11] Nếu phải làm thử nghiệm GUI, việc cần xác định xem hình ảnh trang Web lên giống trình duyệt khác Ngồi ra, kiểm thử GUI xác nhận liên kết nút hoạt động tốt hay không, ngƣời d ng thay đổi kích thƣớc hình hình ảnh nội dung không đƣợc co lại cắt hay chồng chéo lên [11] Để đạt đƣợc mục tiêu này, luận văn nghiên cứu kiểm thử giao diện tự động kiến thức liên quan Cuối luận văn áp dụng trực tiếp kiểm thử tự động giao diện sử dụng công cụ Ranorex vào để kiểm thử phần mềm bảo mật password Keepass nhằm phát số lỗi tƣơng tác giao diện cho ứng dụng 1.2 Nội dung luận văn Với mục đích nhƣ trên, luận văn có nội dung nhƣ sau: Luận văn tổng hợp lý thuyết kiểm thử phần mềm, kiểm thử tự động, kiểm thử giao diện tự động - giải pháp góp phần nâng cao suất, chất lƣợng hoạt động 32 hành động trình duyệt, ràng buộc cụ thể ngơn ngữ loạt trình điều khiển dành riêng cho trình duyệt Tại thời điểm, dự án Selenium bao gồm IDE với công cụ chụp phát lại (capture-and-replay) đơn giản cho trình duyệt Firefox Bằng cách so sánh, Ranorex Studio cơng cụ tự động hóa đầy đủ tính cho ứng dụng dành cho máy tính để bàn thiết bị di động nhƣ ứng dụng Web Nó cung cấp tất cơng cụ bạn cần cho kiểm thử web tự động, bao gồm chụp phát lại, IDE đầy đủ, khả báo cáo đƣợc tích hợp - với tồn sức mạnh trình quản lý Web Selenium đƣợc tích hợp vào API lõi Ranorex Bạn không cần phải chọn Selenium WebDriver Ranorex Studio nữa, nhƣng tận dụng tối đa hai Bằng cách bạn truy cập vào môi trƣờng Selenium mà không cần học mã Báo cáo phân tích lỗi phân tích kỹ lƣỡng lần chạy thử nghiệm với báo cáo thử nghiệm dựa XML cung cấp nhìn tổng quan tồn diện tồn luồng thực kiểm tra Một bƣớc thử nghiệm thất bại hay khơng, cần nhìn vào ảnh chụp hình báo cáo để dễ dàng truy xuất lại lỗi chỉnh sửa trực tiếp bƣớc không thành công báo cáo Bạn tùy chỉnh thêm báo cáo để chia sẻ xem máy Ranorex khơng đƣợc cài đặt trên, tích hợp báo cáo tƣơng thích Junit6 vào hệ thống CI để nâng cao tính minh bạch nhận phản hồi tức thời Gần nhƣ tất kết chạy ca kiểm thử đƣợc xuất Chƣơng trình báo ln có lỗi hay khơng có lỗi Có lỗi đƣợc bơi đỏ tồn phần gây lỗi có ảnh hiển thị rõ ràng để ta dễ ràng nhận vị trí báo lỗi mà khơng cần phải ngồi dị lại từ đầu Junit framework unit testing lập trình hƣớng đối tƣợng Java JUnit quan trọng phát triển test - driven lập trình viên ,và thành phần unit testing frameworks đƣợc gọi chung xUnit có nguồn gốc với JUnit 33 Hình 3.6 Kết phân tích lỗi Kết phân tích lỗi hiển thị kết ca kiểm thử Nếu ca kiểm thử có lỗi đƣợc báo lại màu đỏ hình ảnh lỗi đƣợc hiển thị để giúp kiểm thử viên dễ dàng kiểm tra Nếu ca kiểm thử thành cơng hình trịn màu xanh xuất kết báo ca kiểm thử thành công Cách hiển thị lỗi rõ ràng Ranorex điểm hẳn công cụ khác cách hiển thị lỗi có chút thay đổi phiên Ranorex khác Nhƣng màu đỏ báo lỗi màu xanh kiểm thử thành cơng Chế độ bảo trì chế độ bảo trì cho phép bạn nắm bắt giải lỗi định trình thực kiểm tra Sau đó, bạn áp dụng sửa lỗi cho thử nghiệm từ báo cáo Điều tiết kiệm thời gian bạn khơng phải để toàn thử nghiệm chạy qua để bắt đầu chẩn đốn sửa lỗi 34 Hình 3.7 Kích ho t chế độ bảo trì Kích hoạt chế độ bảo trì cách sử dụng cơng tắc chế độ xem kiểm tra Bây bạn chạy thử nghiệm bạn, đƣợc thực chế độ bảo trì Khi bạn đóng chế độ xem thử nghiệm mở lại, chế độ bảo trì bị tắt lần 35 Chƣơng 4: Ứng dụng thực nghiệm Trong chƣơng trình bày ứng dụng thực tế phần mềm đƣợc sử dụng cơng cụ Ranorex để test phần mềm Keepass phần mềm bảo vệ mật 4.1 Giới thiệu phần mềm Keepass Trong thời đại công nghệ phát triển nhƣ việc sở hữu tài khoản cá nhân khơng cịn đơn Mỗi cá nhân sử dụng nhiều tài khoản trang khác u cầu cơng việc giải trí Trƣờng hợp bạn sử dụng mật cho tất trang bị lấy cắp mật bạn hết tài khoản Trƣờng hợp bạn lƣu trang tài khoản nên sử dụng thêm phần mềm hỗ trợ quản lý mật KeePass Password Safe7 chƣơng trình mã nguồn mở nhỏ gọn để quản lý Password Windows Keepass phần mềm miễn phí sử dụng mã nguồn mở (chứng nhận OSI) Chƣơng trình d ng sở liệu đƣợc mã hóa (Encrypt) cho phép dùng khóa quan (key file) hay mã Password thay cho nhiều Password khác ngƣời dùng ứng dụng, cửa sổ khác [12] Một số tính phần mềm Keepass là: Bảo mật nhanh, nhiều khóa ngƣời dùng, trình tạo mật ngẫu nhiên, hỗ trợ đa ngơn ngữ v.v KeePass có hai phiên cài đặt (Installable) di động (Portable) Ngƣời sử dụng chép Portable vào USB đem sử dụng máy tính Tự động đăng nhập với tính TCATO (Two Channel Auto - Type Obfuscation): thực chất, điều quan trọng, ngăn chặn việc ngƣời khác sử dụng bàn phím trƣớc tiên để đăng nhập, thơng tin hồn tồn bị ghi nhớ chƣơng trình keylogger thơng thƣờng Mặt khác, TCATO đƣợc tích hợp đủ để khiến cho ứng dụng keylogger bị https://keepass.info/ 36 “nhầm lẫn” với việc sử dụng clipboard Windows để chuyển phần chuỗi ký tự auto – text ứng dụng Nhƣng có điểm bất tiện TCATO mặc định chƣa đƣợc kích hoạt, bạn chọn Entry > Auto-Type đánh dấu vào ô Two-channel auto-type obfuscation [13] Hoạt động tƣơng thích với tất trình duyệt mà khơng cần tới plug – in hỗ trợ: KeePass ứng dụng chạy độc lập, tính linh hoạt cao, ngƣời sử dụng không cần phải cài đặt bất k plugin 4.2 Thực nghiệm Đầu tiên trƣớc thực nghiệm cần mở chạy chƣơng trình Keepass Nhấn Start cửa sổ hiển thị Hình 4.1 phần mã nguồn ứng dụng hiển thị cơng cụ MS Visual Studio Vì Keepass phần mềm mã nguồn mở nên chỉnh sửa để có nhiều phiên khác trình kiểm thử Hình 4.1 Mở ch y chƣơng nh nghiệm 37 Hình 4.2 Cửa sổ mật hiển thị Tiếp theo, ngƣời dùng cần gõ mật bảo mật cho tồn chƣơng trình Đây mật mà ngƣời dùng cần nhớ sử dụng chƣơng trình sau nhấn OK cửa sổ giao diện đƣợc hiển thị nhƣ Hình 4.2 Khi mở chƣơng trình cửa sổ nhập mật hiển thị ta cần nhập mật lƣu trữ vào nhấn nút OK cửa sổ giao diện đƣợc hiển thị nhƣ Hình 4.3 Hình 4.3 Giao diện chƣơng nh 38 Thực nghiệm 1: Kiểm tra chức di chuyển trỏ tới phần tử yêu cầu Sau mở chƣơng trình thực nghiệm Bƣớc 1: vào View công cụ Bƣớc 2: chọn Sort by sau Bƣớc 3: click chuột vào mục Title Mong muốn kết đầu trỏ chuột thay đổi vị trí từ vị trí ban đầu mục User name chuyển sang mục Title Hình 4.4 Giá trị an đầu thực thử nghiệm Sử dụng Ranorex để kiểm tra (test) chƣơng trình dựa thử nghiệm đầu vào đầu nhƣ mong muốn kết khơng có lỗi nghĩa chƣơng trình khơng thể thay đổi vị trí trỏ chuột nhƣ mong muốn ngƣời dùng từ cần báo cho lập trình viên sửa lỗi chƣơng trình 39 Hình 4.5 C c h nh động đƣợc ghi thực thử nghiệm Hình 4.5 thực thử nghiệm hành động đƣợc ghi lại cách rõ ràng Ranorex Từng bƣớc click chuột hay giá trị đầu vào trƣơng chình ln kèm hình ảnh hiển thị Hình 4.6 Kết ch y thử nghiệm từ thử nghiệm 40 Kết chạy thử nghiệm giống nhƣ kết đầu vào mong muốn điều chứng tỏ chƣơng trình có lỗi vị trí trỏ mũi tên di chuyển cửa sổ hiển thị Hình 4.7 Đo n mã chứa lỗi Hình 4.7 hiển thị đoạn mã chứa lỗi di chuyển trỏ nhƣ mô tả Giờ lập trình viên sửa mã có đƣợc chƣơng trình thực khơng cón lỗi di chuyển trỏ mũi tên Toàn đoạn mã (code) đƣợc sử dụng comment đoạn mã thể chức di chuyển trỏ giao diện phần mềm Thực nghiệm 2: Kiểm tra chức hiển thị xếp cửa sổ hình chƣơng trình Khi cửa sổ giao diện chƣơng trình hiển thị Bƣớc 1: chọn View công cụ Bƣớc 2: chọn đến Window Layout cửa sổ kiểu Stacked Bƣớc 3: chuyển kiểu Side by Side (sắp xếp phần tử theo chiều 41 dọc hình) Nếu kết hiển thị mà không thay đổi thứ tự phần tử chƣơng trình có lỗi mong muốn kết báo Ranorex thành cơng Hình 4.8 Giao diện hiển thị xếp phần tử Hình 4.9 Hiển thị c c h nh động thực hi chƣơng nh 42 Ban đầu giao diện phân chia thứ tự phần tử xếp giống nhƣ Hình 4.8 nhƣng giao diện mong muốn kích chuột sang Side by Side kiểu xếp phần tử theo chiều dọc Hình 4.10 Kết thực thi Hình 4.11 Đo n mã chƣơng nh gây a ỗi Kết hiển thị thành cơng có nghĩa chƣơng trình có lỗi, khơng thay đổi kiểu xếp nhƣ mong muốn kích chuột Vấn đề đƣợc kiểm thử viên 43 thông báo lại với lập trình viên để lập trình viên tìm lỗi chƣơng trình chỉnh sửa lại chúng Hình 11 đoạn mã chứa lỗi xếp phần tử hiển thị đƣợc tìm Sử dụng cơng cụ kiểm thử viên khơng phải thiết kế tồn kịch tƣơng tác UI có Thay vào đó, họ cần tải tệp kịch ghi lên công cụ đề xuất Các kịch đƣợc sinh với vài bƣớc t y chỉnh tình mà kiểm thử viên muốn kiểm thử Cuối c ng kiểm thử viên cần đƣa toàn tệp mã nguồn kịch đƣợc sinh vào Ranorex để chạy lại thu đƣợc kết kiểm thử 44 Chƣơng ế uận Tự động hóa q trình kiểm thử nói chung kiểm thử tƣơng tác giao diện ngƣời dùng đƣợc xem giải pháp hiệu góp phần giải đƣợc hai vấn đề bao gồm đảm bảo chất lƣợng giảm chi phí, thời gian q trình phát triển chƣơng trình phần mềm Đã có nhiều giải pháp cơng cụ đƣợc đề xuất nhằm thực hóa mục tiêu nhƣ kiểm thử tƣơng tác giao diện ngƣời dùng sử dụng công cụ Ranorex hay sử dụng công cụ ghi chạy lại kịch tƣơng tác UI Tuy nhiên, chi phí để sử dụng cơng cụ Ranorex lớn, công cụ nhƣ Ranorex hỗ trợ ghi chạy mà không hỗ trợ sinh kịch tƣơng tác UI Luận văn tiến hành nghiên cứu kiểm thử tự động, kiểm thử tƣơng tác giao diện ngƣời dùng nhằm củng cố kiến thức tảng Luận văn sâu tìm hiểu số công cụ hỗ trợ kiểm thử tƣơng tác giao diện ngƣời dùng nhằm điểm bật hạn chế công cụ Từ khảo sát này, luận văn nhận thấy Ranorex công cụ có nhiều tính bật Ngồi khả xác định đối tƣợng UI xác, Ranorex cịn cung cấp tính cho ph p kiểm thử viên chỉnh sửa kịch sử dụng đoạn mã giúp cho việc kiểm thử linh hoạt Ranorex công cụ kiểm thử giao diện ngƣời d ng đƣợc cho trội mặt tính nhƣ mức độ thân thiện với ngƣời sử dụng Luận văn áp dụng kiến thức tìm hiểu thực kiểm thử số phiên cho ứng dụng phần mềm sử dụng công cụ Ranorex nhằm minh chứng cho hiểu biết nghiên cứu Mặc d có nhiều cố gắng thời gian thực luận văn nhƣng với kinh nghiệm kiến thức cơng nghệ cịn hạn chế nên luận văn khơng tránh khỏi thiếu sót Sự áp dụng kiến thức tìm hiểu đƣợc dừng lại ứng dụng nhỏ, mà chƣa thử áp dụng cho toán hay ứng dụng lớn Sự so sánh dừng lại ba công cụ Selenium, QTP, Ranorex 45 chƣa mở rộng đƣợc nhiều cơng cụ Trong q trình áp dụng thử nghiệm, học viên chủ động cấy lỗi cho ứng dụng để có đƣợc phiên khác Tuy nhiên, phiên áp dụng chứa số lỗi bản, với tình gây lỗi đối tƣợng giao diện textbox Luận văn đƣợc tiếp tục phát triển để xử l với đối tƣợng khác nhƣ button, dateandtime, checkbox, v.v Ngoài ra, việc cho ph p kiểm thử viên tự đinh nghĩa số tình gây lỗi giúp sở liệu đầy đủ Luận văn tiếp tục nghiên cứu thêm công cụ hỗ trợ kiểm thử tự động khác nhƣ kế hoạch kiểm thử (Test Plan), ca kiểm thử (Test Case) tiến hành tích hợp vào Ranorex, tối đa thuận tiện cho kiểm thử viên Luận văn cố gắng tạo giao diện mở với tài liệu đầy đủ để ngƣời dùng viết tính thêm vào (plug-in) riêng 46 TÀI LIỆU THAM KHẢO Tiếng Việt [1] Nguyễn Mạnh Hùng Phƣơng pháp hỗ trợ sinh kịch tƣơng tác giao diện cho kiểm thử tự động Khóa luận tốt nghiệp Đại học, Trƣờng Đại học Công nghệ, ĐHQGHN, 2017 [2] Lê Thị Kim Chung Cải tiến sử dụng công cụ kiểm thử Ranorex dự án phần mềm Luận văn Thạc sĩ kỹ thuật chuyên ngành Khoa học máy tính, Trƣờng Đại học Bách Khoa, Đại học Đà Nẵng, 2017 Tiếng Anh [3] Boris Beizer and Van Nostrand Reinhold (1990), Software Testing Techniques, Second Edition [4] Glenford J Myers, Corey Sandler, and Tom Badgett (2011), The Art of Software Testing (3rd ed.) Wiley Publishing [5] Glenford J Myers (1979), “The Psychology and Economics of Program Testing”, The art of software testing, pp 11 [6] Lakshay Sharma (2017), Selenium Webdriver, http://toolsqa.com/selenium-webdriver/selenium-grid/ Selenium Grid [7] Dinh Duong Tran, Duy Tung Nguyen, Pham Ngoc Hung (2018), A method for Automated User Interface Testing of Windows-based Applications, In Proceedings of the 9th International Symposium on Information and Communication Technology (SoICT 2018) (accepted) [8] Silviu Andrica and George Candea (2011), WaRR: A tool for high-fi delity web application record and replay In Dependable Systems & Networks (DSN), 2011 IEEE/IFIP 41st International Conference on IEEE, pp 403– 410 [9] https://www.ranorex.com/ [10] https://viblo.asia/p/tim-hieu-ve-qtp-phan-1-ORNZqwDn50n [11] https://securitybox.vn/2016/kiem-thu-gui-la-gi/ [12] http://thuthuatphanmem.vn/huong-dan-quan-ly-mat-khau-bang-keepass/ [13] http://conganbackan.vn/bao-mat-may-tinh/trai-nghiem-keepass-trinh-quanly-mat-khau-an-tuong-24792.html ... thử giao diện ngƣời dùng sử dụng Ranorex Trong kiểm thử giới thiệu khái niệm chung, kiểm thử tự động kiểm thử giao diện tự động nhấn mạnh kiểm thử giao diện tự động Khung kiểm thử giao diện tự. .. quan kiểm thử, kiểm thử giao diện ngƣời dùng khái niệm đƣợc sử dụng nghiên cứu luận văn Chƣơng chủ yếu giới thiệu kiểm thử, kiểm thử tự động kiểm thử giao diện tự động, số phƣơng pháp hỗ trợ kiểm. .. quan kiểm thử giao diện ngƣời dùng tự động 2.1 Kiểm thử phần mềm 2.2 Kiểm thử tự động phần mềm 2.3 Kiểm thử giao diện ngƣời dùng 10 Một số kỹ thuật kiểm thử giao diện