Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 22 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
22
Dung lượng
693,89 KB
Nội dung
ĐẠ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 TÓM TẮT 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 MỤC LỤC 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 Một số hương h iể thử gia diện người d ng Chương 3: Kiểm thử giao diện người dùng sử dụng Ranorex 13 3.1 Giới thiệu Ranorex 13 Tính bật 13 Chương 4: Ứng dụng thực nghiệm 15 4.1 Giới thiệu phần mềm Keepass 15 4.2 Thực nghiệm 15 Chương Kết uận 19 TÀI LIỆU THAM KHẢO 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ề có bước phát triển lớn quy mô chất ượng, đóng vai trị quan trọng vào phát triển hầu hết mặt c c nước Nếu trước đây, hần mềm máy tính sử dụng để tính tốn khoa học kỹ thuật xử lý liệu, ngày nay, ứng dụng vào mặt đời sống hàng ngày c n 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 điện thoại, máy giặt, ti vi, tủ lạnh đến ứng dụng lớn ch nhiều người dùng sử dụng 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 ượng phần mềm ngày phải nâng ca để đ ứ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 hông thể lúc viết đ ạ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ă ta ước ượng việc kiể công việc phải dịng ệnh Người tra để tìm lỗi chiếm phân nửa khối ượng để có phần mềm hoạt động [1] Do vậy, kiểm thử phần mềm khâu quan trọng sản phẩ trước đưa 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ề thường chiếm tới bốn cho dự án phát triển phần mề ươi hần tră tổng chi phí Đối với phần mềm lớn, chi phí cịn tăng ê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ẩ thiết kế tốt hông thể tránh khỏi sai sót Kiểm thử hiệu phát sai sót này, tránh lỗi trước phát hành sản phẩm Kiểm thử đứng vai trò người sử dụng, giúp cho sản phẩm có thích ứng phù hợ 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 sử dụng Ran rex, QTP, Se eniu , v v Đề tài tìm hiểu cơng cụ hỗ trợ kiểm thử tương t c gia diện cho ứng dụng sâu nghiên cứu cơng cụ Ranorex có nhiều ưu điể hỗ trợ đa tảng, hỗ trợ nhiều ứng dụng Web, Desktop, Mobile Ranorex có khả x c định x c c c đối tượng có UI Hơn nữa, công cụ hỗ trợ chế “ghi chạy lại” ị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ế c c đ ạn mã nhằ tăng tính inh h ạ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ủ 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ó ậ trình ng đợi hay không [2] 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 ích thước hình hình ảnh nội dung hông co lại cắt hay chồng chéo lên [2] Để đạt 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ụ Ran rex để kiểm thử phần mềm bảo mật password Keepass nhằm phát số lỗi tương t c gia diện cho ứng dụng 1.2 Nội dung luận văn Với mục đích trên, uận văn có nội dung 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 ca suất, chất ượng hoạt động kiểm thử phần mềm Luận văn giới thiệu số công cụ hỗ trợ kiểm thử giao diện tự động tr ng tì hiểu sâu cơng cụ Ranorex Luận văn mô tả bước trình áp dụng kiểm thử giao diện tự động với cơng cụ Ranorex từ giú hần mềm giảm bớt chi phí kiểm thử tiết kiệ thời gian nhân lực kiểm thử kiểm thử viên Tr nh lỗi làm dự án dự án lớn địi hỏi xác cao 1.3 Cấu trúc luận văn Phần lại luận văn cấu trúc sau Chương giới thiệu tổng quan kiểm thử, kiểm thử giao diện người dùng khái niệ 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ố hương h hỗ trợ kiểm thử giao diện người dùng Tiế đến, kiểm thử giao diện người dùng sử dụng Ranorex mô tả tr ng Chương Tr ng chương giới thiệu chi tiết công cụ kiểm thử giao diện tự động Ranorex Cơ chế hoạt động sinh kịch bản, chạy kịch xuất kết công cụ, giới thiệu tính ứng dụng bật cơng cụ Từ đó, uận văn tổng kết tính bật sử dụng công cụ Ranoex dự án lớn Chương việc ứng dụng thực nghiệm Công cụ kiểm thử giao diện tự động đưa ứng dụng thực tế tr ng chương trình hần mềm bảo mật password Keepass nhằm minh chứng cho khả vận dụng kiến thức tìm hiểu học viên Cuối cùng, tổng kết kết đạt luận văn hướng nghiên cứu trình bày tr ng Chương Chương 2: Tổng quan kiểm thử giao diện người dùng tự động Hiện nay, phần mề sử dụng rộng rãi nhiều ĩnh vực khoa học, kinh tế xã hội Vì vậy, việc đảm bảo phần mề đ ứng mong muốn người sử dụng quan trọng Kiểm thử phần mềm lúc trở thành hoạt động cần thiết nhằ đảm bảo chất ượng phần mềm 2.1 Kiểm thử phần mềm Kiểm thử phần mềm có nhiều c ch định nghĩa h c nhau, nhiên chúng bao trùm hai nội dung phát lỗi đ nh gi chất ượng phần mề Định nghĩa Glenford J Myers: “Kiểm thử phần mềm trình thực thi chương trình với mục đích tìm lỗi” [3] xe đơn giản sử dụng nhiều Mục đích kiểm thử phát lỗi thực tế phần mề nà có lỗi Theo Myers, kiểm thử mà khơng phát lỗi coi không thành công [4] Lỗi phần mềm cần tìm sớm để sản phẩ đến tay người dùng tốn nhiều thời gian tiền bạc để sửa lỗi D đó, iểm thử phần mềm thực trình phát triển phần mề trước sản phẩm đến tay người dùng 2.2 Kiểm thử tự động phần mềm Phương h iểm thử thủ công vừa tốn nhiều thời gian, công sức để thực hiện, vừa úc nà có hiệu việc tìm kiếm lớp lỗi Vì vậy, kiểm thử tự động cung cấp khả để thực loại kiểm thử cách hiệu Kiểm thử tự động trình thực cách tự động c c bước kịch kiểm thử Kiểm thử tự động sử dụng phần mềm kiểm thử (khác biệt với kiểm thử tay) để kiểm soát việc thực kiểm tra so sánh kết thực tế với kết dự đ n Mục đích kiểm thử tự động tăng độ tin cậy, tăng tính hiệu quả, giảm thời gian, cơng sức, kinh phí, giảm nhàm chán cho kiểm thử viên trình kiểm thử 2.3 Kiểm thử giao diện người dùng Gia diện người d ng User Interface - UI) c n người với c c thiết bi, vực h t triển hần y ột hương thức gia tiế óc chương trình ề , UI thiết ế nhằ y tính Tr ng ĩnh ục đích giú c n người điều hiển, sử dụng, tương t c với c c chương trình hần ề để đạt ục đích sử dụng người d ng Tr ng ịch sử h t triển, UI chia thành nhiều dạng Tr ng đó, hai dạng UI sử dụng phổ biến ngày gia diện dòng ệnh C and-line interface) gia diện đồ họa người d ng (Graphical user interface - GUI) 24 ộ iể hương h gia iền iể iể gia iện người thử viên Kiể iện người ng ng hủ công: Dựa tri thức, hiểu biết thử viên tậ trung iể thử c c chức quan trọng hệ thống hay c c ịch gây ỗi Tuy nhiên, nhiều ịch quan trọng bị bỏ sót hi iể ột nhó thử thủ cơng Tr ng thực tế, thường có c c chuyên gia tậ trung giải vấn đề c ch đ nh gi qua inh nghiệ , tì giải h qua thử nghiệ rút bớt huyết điể Một ỹ thuật h c sử dụng qua có nhận thức C gnitive wa thr ugh) Kiể thử viên ần ượt sử dụng c c chức chương trình, c c hành động hản hồi ghi ại để đối chiếu với ục tiêu vọng Cuối c ng, c c điể tiến, sửa chữa ghi ại Ng ài ra, việc iể trình iể h t nhiên, hương h thử tính d sử dụng chương thử viên tiến hành thủ công Kiể ột số ỗi iể cần cải thử UI thủ cơng thử tự động hơng thể h t Tuy yêu cầu nhiều chi hí thời gian nhân ực Đồng thời, độ hủ đạt hông ca thử thủ công giải h Đối với c c hệ thống có UI hức tạ , iể hông thi iể gia iện người ng ựa n h nh: Mơ hình mô tả đồ họa hành vi hệ thống Nó giúp hiểu dự đ n hành vi hệ thống Qu trình iểm thử UI tự động dựa hình ba gồ ba giai đ ạn sau: Mơ hình hóa hệ thống từ c c đặc tả thiết kế hệ thống: Hệ thống hình hóa sử dụng cơng cụ hình hóa c ng với c c đặc tả, hân tích thiết ế từ h ch hàng Việc giú hiểu r hệ thống cần iể thử UI hệ thống Sinh kịch tương t c UI từ hình hệ thống: T y thuộc tiêu chí thuật t n sinh ịch tương t c UI số ượng ịch sinh h c Nhìn chung, ỹ thuật sinh ịch tương t c UI từ hình ch số ượng ịch độ hủ ớn nhiều s với c c ỹ thuật iể thử UI h c Đây ột ưu điể đ ng ỹ thuật s với c c ỹ thuật ại Chạy c c ịch tương t c UI chương trình cần iể thử để thu ết C c dự đ n ết iể thử, gi tri đầu ng uốn đưa trước để s s nh với gi tri ết thực tế sau hi chạy nhằ x c định kịch tương t c UI nà thành cơng Pha chạy tự động sử dụng c c công cụ hỗ trợ nhằ Tr ng nă hình h hợ ch iể giả gần có nhiều nghiên cứu việc sử dụng c c thử UI tự động Tr ng đó, sử dụng hổ biến để Mơ hình thiểu chi hí hình đồ thị ơ hình hình hóa UI chương trình cần iể thử ô tả t àn c c chuỗi tha t c người d ng thực với c c đối tượng có UI Một số dạng đồ thi sử dụng để xây dựng ô đồ thi dịng iện, đồ thị tương t c iện, v.v iể ương gia iện người ng ng h ghi v h i ị h n : Kiểm tra GUI thực cơng cụ tự động hóa Việc thực thành hai trình Trong trình ghi lại, c c bước kiể tra bắt công cụ tự động hóa Trong q trình phát lại, c c bước kiể tra ghi lại thực ứng dụng chạy thử 25 ộ ng ụ iể gia iện người ng ự động Selenium Selenium1 công cụ kiểm tra phần mề quy Regressi n Testing) Se eniu Web Nă 2004, Se eniu sử dụng để kiểm tra hồi d ng để kiểm thử ứng dụng phát triển ThoughtWorks với tên ban đầu JavaScri tTestRunner Đến nă 2007, tác giả Jason Huggins rời ThoughtWorks gia nhập Selenium Team (thuộc Google), từ tiếp tục phát triển Se eniu Đây cấp chức h t ại thu â ột công cụ kiểm tra mã nguồn mở cung để kiểm tra hồi quy Bên cạnh mã nguồn mở, Selenium hỗ trợ loạt ngôn ngữ bao gồm Java, Python, PHP, C#, Ruby, chí Java Script túy Selenium cơng cụ mã nguồn mở mạnh mẽ có sẵn dựa Java script giới hạn lớn Nó phù hợ ch hương h triển kiểm thử Tính ghi ại Se eniu h t triển nhanh việc phát thực ột phần thêm vào trình duyệt Firefox, cho phép ghi lại, chỉnh sửa gỡ rối kịch kiểm thử HP Quick Test Pro (QTP) HPE Unified Functional Testing (UFT) Quick Test Professional2 (QTP) công cụ kiểm thử tự động thiết kế Mercury Interactive sau mua lại HP QTP giúp người kiểm thử (tester) tiến hành kiểm tra cách tự động để x c định lỗi khác với kết mong muốn ứng dụng, phần mềm hay chức v v ta kiểm tra [10] QTP sử dụng rộng rãi để kiểm tra chức Functi na Testing) tiến hành hoạt động kiểm thử hồi quy (Regression Testing), giải ứng dụng phần mề Để đơn giản hóa việc tạo bảo trì thử nghiệm, sử dụng khái niệm kiểm tra từ khóa https://www.seleniumhq.org/ http://shivaquicktestpro.blogspot.com/ Ranorex Ranorex3 cung cấp loạt công cụ tự động hóa y tính để bàn, Web di động sử dụng để nâng cao chất ượng phần mềm cơng ty Nó thực thi kiểm thử chức phi chức ôi trường Win Web, hỗ trợ tất trình duyệt hành Kiểm thử Mobile hệ điều hành Android, IOS Ranorex khơng có ngơn ngữ lập trình riêng nó, thay đó, d ng ngơn ngữ lậ trình C# VB Net Cơng cụ hỗ trợ số dạng kiểm thử đây: người d ng ên c c hần tử Bảng 2.1 liệt kê điểm bật Ranorex so với Selenium QTP Về vấn đề cài đặt cài đặt Selenium phức tạ việc cài đặt công cụ QTP Ran rex Đối với người chưa có iến thức lập trình cảm thấy hó hăn hi cài đặt thiết lậ trường Selenium Cịn với Ranorex QTP cần tải the c c bước cài đặt thơng thường sử dụng Bảng 2.1 So sánh mức độ thân thiện sử dụng công cụ QTP, Selenium Ranorex Selenium QTP Ranorex C i đặt cấu hình D dàng cài đặt ch người khơng phải lập trình viên Kh o trì D dàng bảo trì Dễ dàng thực thi cho https://www.ranorex.com/ Selenium QTP Ranorex người D dàng thực thi với việc chạy tệp exe Dịch vụ hỗ trợ chuyên nghiệp Tăng cường hỗ trợ đà tạo việc thực dự án Hỗ trợ cá nhân Giấy phép Mi n phí Ranorex d dàng chạy cho tệp exe khả nhận diện đối tượng mạnh Dịch vụ hỗ trợ sử dụng QTP Ran rex cung cấp hỗ trợ khách hàng chuyên nghiệp chúng có hỗ trợ đà tạo việc thực dự án hỗ trợ cá nhân làm việc, cịn Selenium khơng hỗ trợ người dùng thức nà hi cung cấp dịch vụ Nhưng mặt giấy phép sử dụng Selenium cơng cụ mã nguồn mở nên sử dụng hoàn toàn mi n phí, với QTP muốn sử dụng phải mua giấy phép với chi phí khoảng 8000 USD cịn với Ranorex chi phí khoảng 3500 USD/nă sử dụng Đây hạn chế Ranorex nên Ran rex thường sử dụng dự án lớn với nhiều kinh phí Bảng 2.2 So sánh tính sử dụng Selenium, QTP Ranorex Selenium QTP Ranorex Công nghệ hỗ trợ Ứng dụng desktop 10 Ứng dụng web Ứng dụng mobile Chụp ch y l i Ghi lại hành động Bảng hành động cho việc chỉnh sửa c c bước sau ghi Kh rộng Thực thi kiểm tra song song Cơng cụ tự động hóa thử nghiệm X Thiết lập cấu hình d dàng Tạo kiểm tra mà không cần lập trình Đã ba gồ Cấu trúc thử nghiệm mô-đun t i sử dụng So sánh dựa hình ảnh Báo c Nhận dạng đối tượng mạnh mẽ Kh ưu trữ đối tượng chia sẻ Trình chỉnh sửa đồ đối tượng UI Hỗ trợ ch ID động Đồng hóa đối tượng UI tự động đầy đủ IDE tích hợp sẵn định qu n lý phần tử UI Bảng 2.3 Một số tính chuyên sâu Selenium, QTP Ranorex Selenium X định đ i ượng 11 QTP Ranorex Selenium Sử dụng Xpath4 QTP Ranorex Chỉnh sửa Xpath hình giao diện Đồng hóa đối tượng giao diện tự động X định qu n lý phần tử UI Nhận dạng đối tượng mạnh mẽ Kh ưu trữ đối tượng chia sẻ Trình chỉnh sửa đồ đối tượng UI Hỗ trợ ch ID động Đồng hóa đối tượng UI tự động Tệp thử nghiệm thực thi để tích hợ đơn giản với máy chủ CI5 Tích hợp với Visual Studio Tự động tạ c c b thích JUnit Hội nhập c tương XPath định nghĩa đường dẫn XML Nó cú pháp ngơn ngữ để tìm kiếm bất k phần tử trang web cách sử dụng biểu thức XML path XPath sử dụng để tìm vị trí bất k phần tử trang web cách sử dụng cấu trúc DOM HTML Continuous Integration thực hành việc liên tục tích hợp thay đổi tạo với project test lại hàng ngày thường xuyên 12 Chương 3: iểm 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 tr ng nhấn mạnh kiểm thử giao diện tự động Khung kiểm thử giao diện tự động tập hợp giả định, khái niệm công cụ cung cấ để hỗ trợ cho quy trình kiểm thử tự động Nó hệ thống tích hợp thiết lập qui tắc tự động hóa sản phẩm cụ thể chủ yếu giao diện sản phẩm Vì giao diện sản phẩ phần quan trọng sản phẩ coi đó, hần gần mà khách hàng quan tâm sử dụng Với mục tiêu áp dụng kiểm thử giao diện tự động tr ng chương trình bày công cụ kiểm thử tự động Ranorex Và chương mơ tả c c tính bật Ranorex 3.1 Giới thiệu Ranorex Nói kiểm tra UI, tất mà bạn phải làm viết kịch thử nghiệm, vài kịch cho trường tẻ nhạt Và bạn khơng muốn thử nghiệm thất bại Vì vậy, việc bạn phải sửa lại kịch viết kịch có nâng cấp nút thay đổi, hộp thoại, văn thay đổi, di chuyển hay điều thay đổi sản phẩm Những thay đổi vài giờ, thay đổi tập lệnh vấn đề tất nhiên thay đổi nhiều úc việc kiểm thử tay khiến bạn phải đau đầu Khi việc sử dụng công cụ tự động nhiều so với việc dùng thử nghiệm tay Tính bật Dễ dàng sử dụng cho người bắt đầu, ứng dụng mạnh mẽ cho chuyên gia Với áp lực thời gian kiểm thử hồi quy tay đa tảng, công cụ kiểm thử tự động thứ thiếu Nhiều cơng cụ kiểm thử tự động địi hỏi kỹ ã hóa nâng ca , giới hạn số tảng định yêu cầu tích hợp phức tạ để tự động hóa giao diện người dùng Ranorex 13 Studio giải thách thức với công cụ d sử dụng để tự động hóa thử nghiệm khơng cần sử dụng mã Tính nhận dạng đối tượng mạnh mẽ nhận dạng phân tích yếu tố giao diện người dùng Windows, Web ứng dụng di động Chỉnh sửa ghi hành động d dàng tạo dự án tự động hóa thử nghiệm mà khơng cần mã hóa D dàng ghi lại phát lại quy trình tự động hóa thử nghiệm trình ghi Ranorex Chỉnh sửa mã tạo kịch tự động hóa thử nghiệm linh hoạt ngơn ngữ lập trình chuẩn Vì thư viện Ranorex dựa Microsoft.NET framework, làm việc với Ranorex không yêu cầu phải học ngôn ngữ kịch độc quyền, ột lợi cho kiểm thử viên (tester) Trực tiếp tích hợp Ranorex vào nhiều hệ thống kiểm soát nguồn Ranorex tích hợp trực tiếp với hệ thống điều khiển phiên TFS, Git SVN Tích hợp Ranorex vào môi trường phát triển kiểm thử tự động điều cần thiết cho nhà phát triển người kiểm thử Ranorex Studio cung cấp tất điều kiện cần thiết để đảm bảo nhà phát triển người kiểm thử làm việc liền mạch với dự án kiểm thử tự động Kiểm tra trình dut chéo (tích hợp Ranorex với Selenium) Selenium WebDriver tích hợp vào API lõi Ran rex để bạn tạo thử nghiệm qua trình duyệt cách sử dụng công cụ không mã hóa Ranorex Studio ngơn ngữ lập trình chuẩn C# VB.NET Báo cáo phân tích lỗi phân tích kỹ ưỡ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 14 Chương 4: Ứng dụng thực nghiệm Tr ng chương trình bày ứng dụng thực tế phần mề sử dụng công cụ Ran rex để test hầ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 việc sở hữu tài khoản cá nhân hơ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 ưu ỗi 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 Safe6 chương trình ã 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 mã hóa 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 [5] 4.2 Thực nghiệm Đầu tiên trước thực nghiệm cần mở chạy chương trình Kee ass Nhấn Start cửa sổ hiển thị 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ử 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 S rt 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 https://keepass.info/ 15 Hình 4.1 Giá trị an đầu thực thử nghiệm Sử dụng Ran rex để kiể và đầu ng tra test) chương trình dựa thử nghiệ đầu uốn kết khơng có lỗi nghĩa chương trình hơng thể thay đổi vị trí trỏ chuột ng báo cho lập trình viên sửa lỗi chương trình 16 uốn người dùng từ cần Hình 4.2 C h nh động ghi thực thử nghiệm Hình 4.2 thực thử nghiệm hành động 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 n è hình ảnh hiển thị Hình 4.3 Kết qu ch y thử nghiệm từ thử nghiệm Kết chạy thử nghiệm giống ết đầu vào mong muốn điều chứng tỏ chương trình có ỗi vị trí trỏ thị 17 ũi tên di chuyển cửa sổ hiển Hình 4.4 Đ n mã chứa lỗi Hình 4.4 hiển thị đ ạn mã chứa lỗi di chuyển trỏ tả Giờ lập trình viên sửa mã có chương trình thực khơng cón lỗi di chuyển trỏ ũi tên Toàn đ ạn ã c de) sử dụng comment đ ạn mã thể chức di chuyển trỏ giao diện phần mềm 18 Chương ế ận Tự động hóa qu trình iể người d ng xe ba gồ đả giải h thử nói chung iểm thử tương t c gia diện hiệu góp phần giải hai vấn đề bả chất ượng giả chương trình hần thực hóa ề chi hí, thời gian tr ng qu trình h t triển Đã có nhiều giải h ục tiêu iể công cụ đề xuất nhằ thử tương t c gia diện người dùng sử dụng công cụ Ran rex hay sử dụng c c công cụ ghi chạy ại c c ịch tương t c UI Tuy nhiên, chi hí để sử dụng cơng cụ Ranorex lớn, công cụ Ran rex hỗ trợ ghi chạy hông hỗ trợ sinh c c ị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ì hiểu số cơng cụ hỗ trợ kiểm thử tương t c gia 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 x c định c c đối tượng UI x c, Ran rex cịn cung cấ tính ch h iể thử viên chỉnh sửa ịch sử dụng c c đ ạn ã giú ch việc iể thử inh h ạt Ran rex công cụ kiểm thử giao diện người d ng cho trội mặt tính người sử dụng Luận văn ức độ thân thiện với 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 với kinh nghiệm kiến thức cơng nghệ cịn hạn chế nên luận văn hơng tr nh khỏi thiếu sót Sự áp dụng kiến thức tìm hiểu 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 chưa rộng 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ó phiên khác 19 Tuy nhiên, phiên áp dụng chứa số lỗi bản, với c c tình gây ỗi đối tượng gia diện textb x Luận văn tiế tục h t triển để xử với c c đối tượng h c butt n, dateandti e, chec b x, v v Ng ài ra, việc ch ột số tình gây ỗi h iể thử viên tự đinh nghĩa ới giú sở iệ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 h c kế hoạch kiểm thử (Test Plan), kịch 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ê ug-in) riêng 20 TÀI LIỆU THAM KHẢO Tiếng Anh [1] Boris Beizer and Van Nostrand Reinhold (1990), Software Testing Techniques, Second Edition [2] https://www.ranorex.com/ [3] Glenford J Myers, Corey Sandler, and Tom Badgett (2011), The Art of Software Testing (3rd ed.) Wiley Publishing [4] G enf rd J Myers 1979), “The Psych gy and Ec n Testing”, The art of software testing, pp 11 [5] ics f Pr gra http://thuthuatphanmem.vn/huong-dan-quan-ly-mat-khau-bang-keepass/ http://conganbackan.vn/bao-mat-may-tinh/trai-nghiem-keepass-trinh-quan- ly-mat-khau-an-tuong-24792.html 21