Ban đầu giao diện đang phân chia thứ tự các phần tử sắp xếp giống nhƣ Hình 4.8 nhƣng giao diện mong muốn khi kích chuột sang Side by Side là kiểu sắp xếp các phần tử theo chiều dọc.
Hình 4.10. Kết quả khi thực thi
Hình 4.11. Đo n mã chƣơng nh gây a ỗi
Kết quả hiển thị thành công có nghĩa chƣơng trình có lỗi, không thay đổi kiểu sắp xếp nhƣ mong muốn kích chuột. Vấn đề này sẽ đƣợc các kiểm thử viên
thông báo lại với các lập trình viên để lập trình viên có thể tìm ra lỗi của chƣơng trình và chỉnh sửa lại chúng.
Hình 4 11 là đoạn mã chứa lỗi sắp xếp phần tử hiển thị đƣợc tìm ra. Sử dụng công cụ kiểm thử viên sẽ không phải thiết kế toàn bộ kịch bản tƣơng tác UI có thể có Thay vào đó, họ chỉ cần tải các tệp kịch bản đã ghi lên công cụ đề xuất Các kịch bản mới sẽ đƣợc sinh ra chỉ với một vài bƣớc t y chỉnh các tình huống mà kiểm thử viên muốn kiểm thử Cuối c ng kiểm thử viên chỉ cần đƣa toàn bộ tệp mã nguồn kịch bản đƣợc sinh ra vào Ranorex để chạy lại và thu đƣợc kết quả kiểm thử.
Chƣơng 5 ế uận
Tự động hóa quá trình kiểm thử nói chung và kiểm thử tƣơng tác giao diện ngƣời dùng đƣợc xem là giải pháp hiệu quả góp phần giải quyết đƣợc hai vấn đề bao gồm đảm bảo chất lƣợng và giảm chi phí, thời gian trong quá trình phát triển chƣơng trình phần mềm Đã có nhiều giải pháp và công cụ đƣợc đề xuất nhằm thực hiện hóa mục tiêu này 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ác công cụ ghi và chạy lại các kịch bản tƣơng tác UI Tuy nhiên, chi phí để sử dụng công cụ Ranorex khá lớn, công cụ nhƣ Ranorex chỉ hỗ trợ ghi và chạy mà không hỗ trợ sinh các kịch bản tƣơng tác UI.
Luận văn đã tiến hành nghiên cứu về kiểm thử tự động, kiểm thử tƣơng tác giao diện ngƣời dùng nhằm củng cố các kiến thức nền tảng. Luận văn đi sâu tìm hiểu một số công cụ hỗ trợ kiểm thử tƣơng tác giao diện ngƣời dùng nhằm chỉ ra những điểm nổi bật và hạn chế của từng công cụ. Từ những khảo sát này, luận văn nhận thấy Ranorex là bộ công cụ có nhiều tính năng nổi bật nhất. Ngoài khả năng xác định các đối tƣợng UI chính xác, Ranorex còn cung cấp tính năng cho ph p kiểm thử viên chỉnh sửa kịch bản sử dụng các đoạn mã giúp cho việc kiểm thử linh hoạt hơn Ranorex là công cụ kiểm thử giao diện ngƣời d ng đƣợc cho là nổi trội nhất hiện nay cả về mặt tính năng cũng nhƣ mức độ thân thiện với ngƣời sử dụng.Luận văn cũng đã áp dụng kiến thức tìm hiểu thực hiện kiểm thử một số phiên bản cho một ứng dụng phần mềm sử dụng công cụ Ranorex nhằm minh chứng cho những hiểu biết đã nghiên cứu.
Mặc d đã có nhiều cố gắng trong thời gian thực hiện luận văn nhƣng với kinh nghiệm và kiến thức về công nghệ còn hạn chế nên luận văn không tránh khỏi những thiếu sót. Sự áp dụng những kiến thức tìm hiểu đƣợc mới chỉ dừng lại ở một ứng dụng nhỏ, mà vẫn chƣa thử áp dụng cho các bài toán hay ứng dụng lớn. Sự so sánh mới chỉ dừng lại ở ba công cụ Selenium, QTP, Ranorex
chứ chƣa mở rộng đƣợc nhiều công cụ. Trong quá trình áp dụng thử nghiệm, học viên sẽ chủ động cấy lỗi cho ứng dụng để có đƣợc các phiên bản khác nhau. Tuy nhiên, các phiên bản áp dụng hiện tại mới chỉ chứa một số lỗi cơ bản, với các tình huống có thể gây lỗi đối với đối tƣợng giao diện là textbox Luận văn đang đƣợc tiếp tục phát triển để xử l với các đố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 một số tình huống có thể gây lỗi mới giúp cơ sở dữ liệu đầy đủ hơn Luận văn cũng sẽ tiếp tục nghiên cứu thêm các 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) và tiến hành tích hợp vào Ranorex, tối đa sự thuận tiện cho kiểm thử viên. Luận văn cũng sẽ cố gắng tạo ra một giao diện mở với tài liệu đầy đủ để ngƣời dùng viết các tính năng thêm vào (plug-in) của riêng mình.
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 bản 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 và sử dụng công cụ kiểm thử Ranorex trong các 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, Selenium Grid. http://toolsqa.com/selenium-webdriver/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-quan- ly-mat-khau-an-tuong-24792.html