1. Trang chủ
  2. » Giáo Dục - Đào Tạo

BÀI tập lớn xây DỰNG ỨNG DỤNG WEB AN xây DỰNG ỨNG DỤNG WEB AN TOÀN đề tài KIỂM THỬ ỨNG DỤNG TRÊN nền WEB BẰNG CÔNG cụ KATALON STUDIO

210 36 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Kiểm Thử Ứng Dụng Trên Nền Web Bằng Công Cụ Katalon Studio
Tác giả Nguyễn Văn Minh Hoàng, Phạm Thị Thương Mến, Thiều Thùy Trang, Nữ Trần Võ Anh Thư, Phan Văn Sự
Người hướng dẫn ThS. Hoàng Thanh Nam
Trường học Học Viện Kỹ Thuật Mật Mã
Chuyên ngành Xây Dựng Ứng Dụng Web An Toàn
Thể loại Bài Tập Lớn
Năm xuất bản 2019
Thành phố TP. Hồ Chí Minh
Định dạng
Số trang 210
Dung lượng 5,57 MB

Cấu trúc

  • CHƯƠNG 1: KIỂM THỬ ỨNG DỤNG TRÊN NỀN WEB (12)
    • 1.1. Khái quát về kiểm thử ứng dụng trên nền Web (0)
      • 1.1.1. Khái quát (0)
      • 1.1.2. Các loại ứng dụng Web (12)
      • 1.1.3. Đặc điểm về chất lượng của một ứng dụng trên nền Web (14)
      • 1.1.5. Khái niệm về Ca kiểm thử (22)
      • 1.1.6. Các mức độ nghiêm trọng của lỗi (24)
    • 1.2. Kiểm thử tự động và kiểm thử thủ công (0)
      • 1.2.1. Khái niệm (25)
      • 1.2.2. Đặc điểm (0)
    • 1.3. Công việc chính khi kiểm thử ứng dụng Web (0)
      • 1.3.1. Kiểm thử chức năng 18 1.3.2.Kiểm thử khả năng sử dụng (29)
      • 1.3.3. Kiểm thử sự tương thích (33)
      • 1.3.4. Kiểm thử hiệu suất (34)
      • 1.3.5. Kiểm thử bảo mật (34)
    • 1.4. Một số công cụ hỗ trợ kiểm thử ứng dụng trên nền Web (35)
      • 1.4.1. Công cụ kiểm thử hiệu năng (0)
      • 1.4.2. Công cụ kiểm thử bảo mật (37)
      • 1.4.3. Công cụ kiểm thử chức năng (37)
  • STUDIO 25 2.1. Giới thiệu về Katalon Studio (38)
    • 2.2. Các tính năng chính của Katalon Studio (40)
    • 2.3. Làm việc với Katalon Studio (40)
    • 2.4. Quy trình làm việc của Katalon Studio (41)
    • 2.5. So sánh các công cụ kiểm thử tự động (42)
  • CHƯƠNG 3: TIẾN HÀNH CÀI ĐẶT VÀ DEMO THỰC NGHIỆM VỚI CÔNG CỤ KATALON STUDIO (49)
    • 3.1. Cài đặt và cấu hình (0)
      • 3.1.1. Cách cài đặt (0)
      • 3.1.2. Cấu hình (0)
    • 3.2. Một số chức năng trong Katalon Studio (53)
    • 3.3. Cách viết một kịch bản với Katalon Studio (0)
      • 3.3.1. Cách chụp đối tượng trên màn hình hay còn gọi là lấy ID của đối tượng (0)
      • 3.3.2. Cách chụp đối tượng trên màn hình hay còn gọi là lấy ID của đối tượng (0)
      • 3.3.3. Một số plugin hỗ trợ kiểm thử ứng dụng Web (60)
    • 3.4. Bài toán thực tế (0)
      • 3.4.1. Giới thiệu bài toán (64)
      • 3.4.2. Kiểm thử chức năng đăng ký, đăng nhập cho sử dụng Katalon Studio (65)
  • TÀI LIỆU THAM KHẢO (88)
  • PHỤ LỤC (89)
    • I. Danh sách các report trong quá trình kiểm thử (0)
    • I. Mã Script của các test case (0)

Nội dung

KIỂM THỬ ỨNG DỤNG TRÊN NỀN WEB

Kiểm thử tự động và kiểm thử thủ công

- Kiểm thử phần mềm tự động là thực hiện kiểm thử phần mềm bằng một chương trình đặc biệt với rất ít hoặc không có sự tương tác của con người, giúp cho người thực hiện việc kiểm thử phần mềm (tester) không phải lặp đi lặp lại các bước nhàm chán Công cụ kiểm thử tự động có thể lấy dữ liệu từ file bên ngoài (excel, csv…) nhập vào ứng dụng, so sánh kết quả mong đợi (từ file excel, csv…) với kết quả thực tế và xuất ra báo cáo kết quả kiểm thử

- Kiểm thử thủ công: là tester làm mọi công việc hoàn toàn bằng tay, từ viết test case đến thực hiện test, mọi thao tác như nhập điều kiện đầu vào, thực hiện một số sự kiện khác như click nút và quan sát kết quả thực tế, sau đó so sánh kết quả thực tế với kết quả mong muốn trong test case, điền kết quả test Hiện nay, phần lớn các tổ chức, các công ty phần mềm, hoặc các nhóm làm phần mềm đều thực hiện kiểm thử thủ công là chủ yếu

Hình 1 4 Kiểm thử thủ công 1 2 2 Đặặc điiểểm Ưu nhược điểm của hai quy trình:

Kiiểểm thhử Điiểểm mạạnnh Điiểểm yếếu

- Chho phhéép teesstteer thhựực - Tốn thời gian Đối với

Thủ công hiện việc kiểm thử khám mỗi lần relelease, người phá kiểm thử vẫn phải thực

- Thích hợp kiểm tra sản hiện lại một tập hợp các phẩm lần đầu tiên tesest case đã chạy dẫn

- Thhíícch hợợp kiiểểm thhử đến sự mệt mỏi và lãng trong trường hợp các test phí effort case chỉ phải thực hiện một số ít lần

- Giảm được chi phí ngắn hạn

- Thících hợp với trường hợp phải test nhiều lần cho một case, có tính ổng định và tin cậy cao hơn so với kiểm thử thủ - Tốn kém hơn kiểm thử công tự động, chi phí đầu tư

- Có thhể thhựực hiiệện các ban đầu lớn

Tự động thao tác lặp đi lặp lại - Kiiểểm thhử thhủ côônng là

(nnhhậập dữ liiệệuu, clliicckk,, không thể thay thế vì check kết quả ) giúp người ta không thể tự tester không phải làm động hóa mọi thứ những việc gây nhàm chán và dễ nhầm lẫn như vậy

- Giảm chi phí đầu tư dài hạn

Bảng 1 1 So sánh ưu nhược của kiểm thử thủ công và kiểm thử tự động

Hình 1 5 So sánh phạm vi test tự động về rủi ro chất lượng sản phẩm

Theo như bản đồ bên trên chỉ rõ tổng lượng kiểm tra (số hạng mục x thời gian) của test tự động và test bằng tay Đối với test tự động có thể nâng cao được hiệu qủa của việc kiểm tra, tổng số trường hợp kiểm tra chắc chắn được tăng lên.

Các kiểm nghiệm phù hợp và không phù hợp cho tự động hóa

Nhìn vào bản đồ dưới đây ta có thể so sánh sự thiệt hơn giữa kiểm thử tự động và kiểm thử thủ công

Chi phí ban đầu cho kiểm thử tự động cao hơn so với kiểm thử bằng tay nhưng theo thời gian thì giá trị này bị đổi ngược lại Tuy lợi ích mang lại là không nhỏ nhưng kiểm thử tự động cũng không hoàn toàn thay thế được kiểm thử bằng tay Kiểm tra không có lợi ích của tự động hóa có nghĩa là dù có tự động hóa thì cũng không có ý nghĩa Khi không mang lại ý nghĩa thì sẽ mang lại một kết quả không khả quan

Hình 1 6 So sánh chi phí kiểm thử thủ công và kiểm thử tự động

- Kiểm tra thích hợp cho tự động hóa (hiệu quả mang lại lớn)

- Với những loại dưới đây thích hợp cho tự động hóa: Những kiểm tra cần thực hiện nhiều lần

Thực hiện kiểm tra ở nhiều môi trường Đặc điểm kĩ thuật được xác định, test màn hình ・ chức năng không thay đổi trong tương lai.

Thường xuyên thực hiện test xác nhận hoạt động cơ bản (chẳng hạn như di chuyển hệ thống)

Test sự kết hợp của nhiều giá trị đầu vào ở một bước nào đó

Kiểm tra nhiều màn hình của dữ liệu đầu vào Mục đầu vào ở nhiều màn hình đăng kí

- Kiểm thử không thích hợp cho tự động hóa (Không mang lại hiệu quả) Kiểm tra không có tính hồi quả

Kiểm tra những hoạt động như test độ tin cây, giới hạn, cạnh tranh…

- Việc thực hiện tự động không phải là ứng dụng cho tất cả các trường hợp test không thể tự động hóa cho tất cả các trường hợp thử nghiệm Với nhiều trường hợp test không yêu cầu hồi quy, đặc điểm kĩ thuật luôn thay đổi thì tự động hóa không mang lại chút hiệu quả nào

Nên sử dụng kiểm thử thủ công và thử nghiệm tự động khi:

Công việc chính khi kiểm thử ứng dụng Web

Kiểm thử thăm dò: Đây là loại kiểm thử đòi hỏi phải thử nghiệm của kiến thức, kinh nghiệm, phân tích / logic kỹ năng, sáng tạo và trực giác Xét nghiệm này được đặc trưng bởi các tài liệu ở đây kém bằng văn bản kỹ thuật, hoặc một thời gian ngắn để thực hiện Chúng ta cần những kỹ năng của con người để thực hiện quá trình kiểm thử trong kịch bản này Usability Testing: Đây là một lĩnh vực mà bạn cần để đo độ thân thiện, hiệu quả, hoặc thuận tiện phần mềm hoặc sản phẩm cho người dùng cuối Ở đây, quan sát con người là yếu tố quan trọng nhất, do đó, một phương pháp thủ công là một lợi thế

Kiểm thử Ad-hoc: Trong kịch bản này, không có phương pháp cụ thể Nó là một phương pháp hoàn toàn không có kế hoạch kiểm thử nơi sự hiểu biết và cái nhìn sâu sắc của các thử nghiệm là yếu tố quan trọng duy nhất

- Kiểm thử tự động là phù hợp nhất với các khu vực / kịch bản sau đây:

Kiểm thử hồi quy: Ở đây, kiểm thử tự động là phù hợp vì các thay đổi mã thường xuyên và khả năng chạy các hồi quy một cách kịp thời Kiểm thử tải trọng: tự động kiểm thử cũng là cách tốt nhất để hoàn thành các thử nghiệm có hiệu quả khi nó đi kèm để tải thử nghiệm

Thực hiện lặp đi lặp lại: Thử nghiệm mà đòi hỏi phải thực hiện lặp đi lặp lại một công việc được tự động tốt nhất

Thử nghiệm tính năng: Tương tự như vậy, thử nghiệm mà đòi hỏi sự mô phỏng của hàng ngàn người dùng đồng thời đòi hỏi tự động hóa

1.3 Công việc chínính khi kiểm thử ứng dụng Web

Kiểm thử chức năng yêu cầu kiểm thử viên thực hiện kiểm thử tất cả các link trong trang Web, định dạng được sử dụng trong các trang Web để gửi và nhận các thông tin cần thiết từ người dùng Ngoài ra còn có kết nối cơ sở dữ liệu, kiểm tra cookie và xác minh HTML/CSS, v.v.

Kiểm thử giao diện: Trước khi lập trình viên bắt tay vào xây dựng mã nguồn sẽ luôn có một bản thiết kế UI quy định giao diện của ứng dụng Web Mỗi thành phần textbox, button, image, link và bố cục trên ứng dụng Web đều được chỉ ra một cách cụ thể trong tài liệu này Bản thiết kế UI thường sẽ kèm theo file PSD – bản vẽ giao diện của ứng dụng Web sử dụng phần mềm Photoshop để lập trình viên dễ dàng xây dựng cũng như khách hàng có thể biết trước ứng dụng của mình sẽ hiển thị ra sao Đây cũng là tài liệu không thể thiếu cho kiểm thử viên so sánh, đối chiếu giữa thiết kế và nội dung thực tế của ứng dụng hiển thị trên trình duyệt

Kiểm thử các liên kết và menu:

Trong một ứng dụng Web có 2 loại liên kết: liên kết nội bộ (internal link) và liên kết ngoại bộ (external link) Cả 2 loại liên kết trên đều cần được kiểm tra xem chúng có hoạt động không? Có trỏ đến địa chỉ mong muốn không? Cần đảm bảo rằng các liên kết không tự trỏ đến vị trí của chính nó Ngoài ra cũng cần xem xét thuộc tính “target” của các liên kết xem chúng có hoạt động đúng như bản thiết kế yêu cầu hay không.

Kiểm thử các form nhập dữ liệu:

Cần đảm bảo các trường nhập liệu được thiết kế đúng kiểu loại, có bộ lọc kiểm tra tính đúng đắn của dữ liệu nhập vào (validation) trước khi gửi đi (submit) tránh việc hacker có thể tận dụng lỗ hổng SQL Injection từ chính các form nhập liệu trên ứng dụng Web Ngoài ra cũng cần đảm bảo sự toàn vẹn dữ liệu trong quá trình truyền tải thông tin từ trình duyệt tới server, nhất là đối với các ứng dụng thương mại điện tử, ngân hàng, v.v.

Kiểm thử lỗi cú pháp HTML/CSS: Ở bước tiếp theo, người kiểm thử cần xác định các thẻ CSS bị lỗi hoặc các thuộc tính, id, class được viết trong thẻ HTML không hợp lệ hoặc không thuộc bất kỳ thẻ CSS nào.

Kiểm thử cookie và session:

Kiểm thử các ứng dụng đăng nhập trong phiên bằng cách cho phép và vô hiệu hóa các tập tin cookie Có thể thử đưa lỗi vào ứng dụng Web bằng cách sử dụng một tên miền không phù hợp như cố tình truyền sai, thiếu tham số, v.v Ngoài ra, cần kiểm tra khả năng bảo mật của ứng dụng Web bằng cách xóa các tập tin cookie có chọn lọc khi kiểm thử Kiểm thử nội dung đa ngôn ngữ:

Bước kiểm thử này đặc biệt cần thiết với những ứng dụng Web hỗ trợ đa ngôn ngữ để đảm bảo thông tin khi dịch sang các ngôn ngữ khác nhau luôn được sát nghĩa, không bị tràn dòng khi dịch, các yếu tố về chính tả được tuân thủ

Kiểm thử cơ sở dữ liệu (database):

Kiểm tra kết nối tới cơ sở dữ liệu và các lỗi truy vấn có thể gặp phải, đảm bảo dữ liệu được cung cấp chính xác khi các chức năng xem thông tin, thêm, sửa, xoá, v.v hoạt động.

1.3.2 Kiểm thử khả năng sử dụng

Chúng ta cần đảm bảo nội dung trong ứng dụng được sắp xếp hợp lý và dễ hiểu với người dùng, không mắc các lỗi chính tả, các hình ảnh hiển thị chính xác về vị trí, kích thước Ngoài ra cũng cần chú trọng tới màu sắc, font chữ phù hợp với mọi đối tượng sử dụng

Kiểm thử lôgíc các liên kết và hướng dẫn: Đối với người dùng lần đầu tiên truy cập một ứng dụng Web, họ luôn gặp những khó khăn nhất định trong việc sử dụng Vì vậy cần kiểm tra xem các hướng dẫn, liên kết, thông báo đã được bố trí đầy đủ trên ứng dụng hay chưa? Tuy nhiên, việc xuất hiện quá nhiều hướng dẫn, thông báo ở mọi nơi trên ứng dụng cũng khiến người dùng rối mắt, không thoải mái khi sử dụng Tốt nhất nên đảm bảo các hướng dẫn, thông báo đưa ra hết sức ngắn gọn nhưng đủ ý ngay tại nơi người dùng có thể gặp khó khăn khi sử dụng

Kiểm thử văn hoá khu vực và đối tượng sử dụng: Điều này bắt nguồn từ đặc điểm riêng của từng lĩnh vực (ví dụ y khoa thường dùng màu sáng để thể hiện sự sạch sẽ), hoặc văn hóa riêng từng khu vực (người châu Á thường chuộng tông màu nóng và thiết kế cầu kỳ hơn châu Âu)

Thêm vào đó, trong quá trình kiểm thử phải luôn bảo đảm rằng chuẩn thiết kế ứng dụng Web của mình có thể được tìm thấy phổ biến ở nhiều ứng dụng Web khác cùng loại Ví dụ như button Đăng nhập, Đăng xuất thường nằm ở góc trên bên phải và menu chính luôn nằm ở trên cho tất cả trang Web con Nếu một ứng dụng Web trong lĩnh vực khoa học lại trình bày bằng font chữ cách điệu lòe loẹt, tiêu đề chạy ngang dọc, hoặc một ứng dụng Web dành cho trẻ em lại chỉ dùng 2 tông màu đen trắng buồn tẻ thi nên góp ý với bộ phận thiết kế

1.3.3 Kiểm thử sự tương thích

Một ứng dụng Web thường hỗ trợ nhiều thiết bị, môi trường khác nhau

Vì vậy kiểm thử độ tương thích của ứng dụng Web là một điều không dễ dàng khi công nghệ của các nền tảng thay đổi quá nhanh chóng

Kiểm thử tương thích theo thiết bị, hệ điều hành:

Một số công cụ hỗ trợ kiểm thử ứng dụng trên nền Web

Công việc cần làm đối với một kiểm thử viên kiểm thử ứng dụng trên nền Web như đã nói ở phần trước là rất nhiều Những công cụ kiểm thử ra đời để hỗ trợ cho các kiểm thử viên thực hiện công việc một cách nhanh chóng, bớt nhàm chán và giảm thiểu chi phí kiểm thử Đồ án này sẽ giới thiệu một số công cụ hỗ trợ kiểm thử ứng dụng trên nền Web, phân loại dựa trên mục đích sử dụng

1.4.1 Công cụ kiểm thử hiệiệu năng

Dưới đây là danh sách một số công cụ kiểm thử hiệu năng được sử dụng rộng rãi nhất để đo hiệu suất ứng dụng Web và khả năng chịu tải của chúng Các công cụ kiểm tra tải này sẽ đưa ra đánh giá về hiệu suất của ứng dụng trong thời gian có lưu lượng truy cập cao điểm

WebLoad: Cho phép thực hiện kiểm thử khả năng chịu tải và độ chịu lỗi của ứng dụng Web bằng cách sử dụng Ajax, Adobe Flex, NET, Oracle Forms, HTML5 và nhiều công nghệ khác Điểm mạnh của WebLoad là là dễ sử dụng với các tính năng như cho phép ghi/phát lại dựa trên DOM, tương quan tự động và ngôn ngữ kịch bản Javascript Công cụ này hỗ trợ thử nghiệm hiệu suất quy mô lớn với các kịch bản phức tạp và đưa ra những phân tích rõ ràng Apache JMeter: Đây là một công cụ phát triển trên mã nguồn mở Apache Jmeter được coi như một công cụ kiểm thử hiệu năng, có khả năng tích hợp với kế hoạch kiểm thử Ngoài việc kiểm thử hiệu năng, Apache JMeter còn có thể sử dụng để kiểm tra các chức năng của ứng dụng Web

NeoLoad: Công cụ sử dụng để đo và phân tích hiệu suất của ứng dụng Web NeoLoad phân tích hiệu suất của ứng dụng Web bằng cách tăng lưu lượng truy cập vào ứng dụng Nhờ đó, kiểm thử viên có thể biết được năng lực chịu tải của ứng dụng Công cụ này được viết trên nền Java, tương thích với nhiều hệ điều hành khác nhau và hỗ trợ hai ngôn ngữ: Tiếng Anh và tiếng Pháp

LoadStorm: Là một công cụ kiểm thử cho các ứng dụng Web và mobile Điểm mạnh là nó có thể kiểm tra hiệu năng của ứng dụng dựa trên số lượng người dùng và lưu lượng truy cập LoadStorm cũng có khả năng chịu tải rất tốt khi mà nó có thể giả lập hàng trăm nghìn đến hàng triệu user để tìm kiếm các breaking point (điểm dừng) trong ứng dụng Các kịch bản kiểm thử của LoadStorm có thể được chỉnh sửa bởi kiểm thử viên

1.4.2 Công cụ kiểm thử bảo mật

Burp Suite: Là một công cụ kiểm tra lỗ hổng bảo mật cho ứng dụng Web Nó có nhiều công cụ tích hợp trong đó hai công cụ chính trong phiên bản miễn phí là Spider and Intruder Spider được sử dụng để thu thập thông tin các trang của ứng dụng và Intruder được sử dụng để thực hiện các cuộc tấn công tự động trên ứng dụng Web Burp có một công cụ bổ sung hiện nay được gọi là Burp Scanner được dùng trong việc quét các lỗ hổng có trong ứng dụng

OWASP Zed Attack Proxy: Tương tự như Burp Suite, OWASP Zed Attack Proxy là công cụ để thâm nhập, đánh giá an ninh mạng, bảo mật của các ứng dụng Web.

Nikto: Công cụ đánh giá hệ thống Nikto là một máy quét lỗ hổng máy chủ Web mã nguồn mở Nó phát hiện việc cài đặt phần mềm và cấu hình đã lỗi thời, các tệp tin có khả năng nguy hiểm, v.v

Exploit-Me: Là một công cụ kiểm tra bảo mật ứng dụng Web có thể tích hợp trên trình duyệt Firefox được thiết kế nhỏ gọn, dễ sử dụng Exploit-

Me bao gồm các gói: XSS-Me và SQL Inject-Me Cross-Site Scripting

(XSS) là một lỗ hổng được tìm thấy trong nhiều ứng dụng Web hiện nay

Lỗ hổng XSS có thể gây ra thiệt hại nghiêm trọng cho một ứng dụng Web XSS-Me là công cụ giúp phát hiện ra các lỗ hổng XSS này Trong khi đó, SQL Inject- Me được sử dụng để kiểm tra các lỗ hổng SQL Injection trong ứng dụng Web 1.4.3 Công cụ kiểm thử chức năng

Ranorex: Công cụ kiểm thử tự động cho các ứng dụng Web, desktop và di động Chỉ với một tài khoản, người dùng có thể sử dụng Ranorex để kiểm thử cho 3 loại ứng dụng kể trên Việc tích hợp này sẽ giúp rút ngắn thời gian khi kiểm thử ứng dụng được thiết kế chạy trên nhiều nền tảng khác nhau Tuy nhiên, bản trả phí của Ranorex khá đắt, lên tới 3500$/năm

Selenium: Là một trong những công cụ kiểm thử tự động ứng dụng Web mạnh mẽ nhất hiện nay Selenium script có thể chạy trên hầu hết các trình duyệt hiện nay như IE, Chrome, Firefox, Safari, Opera và các hệ điều hành phổ biến như Windows, Mac, Linux Trong thực tế, người ta thường sử dụng Selenium dưới dạng Add-on tích hợp trong trình duyệt Firefox, kết hợp cùng với Firebug để kiểm thử ứng dụng Web một cách hiệu quả nhất Tuy chỉ có thể ghi lại (Record) hành động trên trình duyệt Firefox, nhưng có thể phát lại (Playback) trên nhiều trình duyệt phổ biến khác Vì là công cụ mã nguồn mở nên Selenium có ưu thế lớn so với các công cụ kiểm thử tự động khác: có cộng đồng hỗ trợ mạnh mẽ và không phải trả phí bản quyền Công cụ này hỗ trợ khá nhiều ngôn ngữ lập trình Web phổ biến hiện nay Ngoài ra, Selenium được phát triển bởi Selenium team từ Google nên người dùng hoàn toàn yên tâm về chất lượng và độ tin cậy của Selenium

Katalon Studio: cũng như Selenium - là một công cụ miễn phí dành cho cộng đồng kiểm thử phần mềm tự động Nếu Katalon Studio được xây dựng từ Selenium/Appium, tại sao chúng ta không dùng trực tiếp hai công cụ phổ biến trong cộng động kiểm thử này mà cần phải dùng đến Katalon

2.1 Giới thiệu về Katalon Studio

Các tính năng chính của Katalon Studio

Triển khai đơn giản (Simple deployment): gói triển khai duy nhất, gắn kết chứa mọi thứ cần để triển khai một công cụ kiểm thử tự động mạnh mẽ Cài đặt nhanh chóng và dễ dàng (Quick & easy set-up): không chỉ cung cấp cài đặt đơn giản, Katalon Studio còn giúp tester dễ dàng thiết lập môi trường Người kiểm thử có thể chạy kịch bản kiểm thử đầu tiền của họ khá nhanh chóng bằng cách sử dụng các mẫu và tập lệnh kiểm thử dựng sẵn của nó, chẳng hạn như kho đối tượng và thư viện từ khóa

Kết quả nhanh hơn và tốt hơn (Faster & Better results): các mẫu dựng sẵn với hướng dẫn rõ ràng giúp người kiểm tra nhanh chóng xây dựng và chạy các kịch bản kiểm thử tự động Có thể thực hiện từng bước một tốc độ và hiệu quả, từ thiết lập dự án, tạo kiểm thử, thực hiện, tạo báo cáo và bảo trì.

Chế độ linh hoạt (Flexible modes): có thể sử dụng bản ghi và từ khóa để xây dựng bài kiểm thử tự động, trong khi có IDE đầy đủ để xây dựng tập lệnh nâng cao.

Dễ sử dụng (Ease of use): ngay cả thủ công với kinh nghiệm lập trình tối thiểu cũng có thể khai thác lợi ích của nó một cách dễ dàng Ứng dụng đa trình duyệt (Cross-browser application): Katalon Studio hỗ trợ nhiều nền tảng: Windows 32 và 64 (7, 8, và 10) và OS X 10.5+.

Làm việc với Katalon Studio

Katalon Studio là một giải pháp tự động hóa sâu sắc, thân thiện với người dùng, được đặc trưng bởi sự đơn giản và tốc độ Nó rất hữu ích cho các nhóm và cá nhân người kiểm thử tự động dành ít nỗ lực nhất từ việc thiết lập một dự án mới đến thực hiện các kiểm thử và sau đó giám sát kết quả thực hiện Mỗi quy trình công việc được cung cấp rất nhiều khả năng và tùy chỉnh để bảo trì dễ dàng và mở rộng dự án:

Cấu trúc được xác định trước (Pre-defined structure): test cases, test suites, test objects, reports Người kiểm tra không cần phải dành hàng giờ để xác định và duy trì chúng sau này.

Từ khóa (Custom keywords) tùy chỉnh cung cấp tính linh hoạt trong việc thêm các từ khóa bổ sung để kiểm tra AUT hiệu quả cho các mục đích thử nghiệm cụ thể và phức tạp

Hỗ trợ các nhu cầu kiểm thử chính: web, mobile và API.

Thực hiện nhiều bộ kiểm thử cùng một lúc với bộ sưu tập bộ kiểm thử.

Mở rộng dòng CI hiện tại một cách dễ dàng với việc thực hiện chế độ bàn điều khiển mà không cần nỗ lực Thực hiện dòng lệnh có thể được tạo ra nhanh chóng bằng cách sử dụng tính năng'Generate Command Line for console mode'

Giám sát kết quả thực hiện dễ dàng với chế độ xem bảng hoặc chế độ xem cây trong/ sau khi thực hiện.

Báo cáo chi tiết bộ kiểm thử giảm thời gian phân tích kết quả Có thể xuất nó sang các định dạng khác nhau như CSV, PDF, HTML và lưu trữ để sử dụng sau.

Quy trình làm việc của Katalon Studio

Điều hành một luồng công việc tuyến tính:

Các mẫu dự án tích hợp: bằng cách cung cấp các mẫu dựng sẵn để tổ chức các trường hợp kiểm thử, kho lưu trữ đối tượng và từ khóa, Katalon Studio giúp việc kiểm thử dễ dàng hơn cho người kiểm tra.

Nhiều khả năng: hỗ trợ đầy đủ kiểm thử cho Web, Android, iOS, và API trên tất cả các hệ điều hành.

Tích hợp trên công cụ không rắc rối: dễ dàng kết hợp với Jenkins, GIT và JIRA với các plug-in gốc.

Tạo kiểm thử tự động: ghi lại các hành động và tạo các kịch bản tự động bằng các từ khóa tích hợp.

Tập lệnh Hi-end: cho phép xây dựng kịch bản kiểm thử nâng cao hoặc từ khóa tùy chỉnh dễ dàng và hiệu quả.

Thu thập thông tin đối tượng: máy ghi âm tiên tiến phát hiện các thuộc tính đối tượng một cách hiệu quả để tối đa hóa nhận dạng

Thực hiện kiểm thử (Test execution) mạnh mẽ: chạy các trường hợp kiểm thử hoặc bộ kiểm thử bằng cách sử dụng nhiều cấu hình và bộ dữ liệu

Tính linh hoạt trong thực thi: cung cấp bảng điều khiển tích hợp CI với các tham số khác nhau để thực hiện từ xa Chạy thử nghiệm trên nhiều trình duyệt và hệ điều hành OS cục bộ hoặc với Sauce Labs và BrowserStack

Xử lí lỗi linh hoạt và thực hiện lại tự động: bao gồm các quy tắc thời gian chạy để tự động xử lý các luồng thực thi phức tạp

Báo cáo có sẵn trong một số định dạng: với ghi nhật kí nâng cao, dữ liệu gỡ lỗi và ảnh chụp màn hình.

Báo cáo thực hiện Bespoke: được tích hợp với quy trình thông báo của bạn

Nhật kí Selenium và Appium cải tiến: với các tính năng phân tích được cải tiến để cải thiện chiến lược tự động hóa.

Bảo trì đối tượng kiểm thử thông minh: tự động cập nhật tất cả các trường hợp và bộ kiểm thử liên quan khi các đối tượng được thay đổi

Tổ chức kiểm thử hiệu quả: cho phép dễ dàng quản lý và bảo trì các bài kiểm thử, dữ liệu và từ khóa.

So sánh các công cụ kiểm thử tự động

- Katatalolon Studio ẩn tất cả các sự phức tạp về mặt kỹ thuật đằng sau hiện trường và cung cấp giao diện thân thiện với chế độ thủ công (người dùng có thể kéo-thả, chọn từ khóa và thử nghiệm các đối tượng để tạo thành các bước thử nghiệm) nhưng vẫn giữ vũ khí cần thiết cho những người dùng kỹ thuật mạnh mẽ sâu hơn vào mã hóa với chế độ kịch bản hỗ trợ đầy đủ các tiện ích phát triển như làm nổi bật cú pháp, đề xuất mã và gỡ lỗi

- Với Selenium, người dùng phải đi qua các hướng dẫn kỹ thuật cho API của họ và tích hợp chúng vào với một IDE và một ngôn ngữ lập trình ưa thích

Ngược lại, Katalon Studio được xây dựng như là một gói thống nhất bao gồm hầu như tất cả những thứ cần thiết như Java, Android SDK, trình điều khiển Web để điều khiển trình duyệt và yêu cầu phụ thuộc Tất cả bạn phải làm là tải về và cài đặt

Tíínnh năănng Seelleenniiuum QTTPP//UUFFT Kaattaallon Sttuuddiio

Crroosss-pllaattffoorrm phát triển kiểm thử

Java, C#, Perl, Ngôn ngữ Python, kịch bản JavaScript, Ruby,

Kĩ năng lập cần thiết để tích trình hợp cho các công cụ khác nhau.

Dễ cài đặt và và tích hợp các sử dụng công cụ khác nhau

Lưu trữ và bảo trì đối XPath, bản đồ UI tượng

Windows desktop, Web, Mobile apps, API/ Web services

Không yêu cầu Đề xuất cho các kịch bản nâng cao

Dễ dàng cài đặt và chạy

Kho lưu trữ đối tượng tích hợp, phát hiện và điều chỉnh

Web, Mobile, API/ Web services

Không yêu cầu Đề xuất cho các kịch bản nâng cao

Dễ dàng cài đặt và chạy

Kho lưu trữ đối tượng tích hợp, XPath, nhận

Tíínnh năănng Seelleenniiuum QTTPP//UUFFT Kaattaallon Sttuuddiio đối tượng thông dạng lại đối minh tượng

Yêu cầu cài đặt Hỗ trợ tích hợp, dựa trên hình thư viện bổ sung nhận dạng đối tượng Hỗ trợ tích hợp ảnh dựa trên hình ảnh

Khhôônng Khhôônng Katalon phân tích Analytics

Loại giấy Mã nguồn mở

Bản quyền Phần mềm phép (Apache 2.0) miễn phí

Phhí Miiễễn phhí Phí giấy phép và

Bảng 2 1 So sánh tính năng Katalon Studio với công cụ khác

Bảng so sánh trên chủ yếu tập trung vào các tính năng phổ biến của một công cụ kiểm thử tự động Bảng sau sẽ trình bày một quan điểm khác bằng cách chọn và so sánh các điểm mạnh và hạn chế chính của các công cụ

Côônng cụ Điiểểm mạạnnh Hạạn chhế

Katalon - Không có phí cấp phép và bảo trì cần - Giải pháp mới nổi với một Studio thiết (dịch vụ hỗ trợ chuyên dụng có trả cộng đồng phát triển nhanh phí có sẵn nếu cần) chóng.

- Tích hợp các framework và tính năng - Bộ tính năng vẫn đang phát cần thiết để tạo và thực hiện các trường triển. hợp kiểm thử nhanh - Thiếu các lựa chọn cho các

- Được xây dựng dựa trên Selenium ngôn ngữ kịch bản: chỉ hỗ nhưng loại bỏ nhu cầu về các kĩ năng trợ Java/ Groovy. lập trình nâng cao cần thiết choSelenium.

Côônng cụ Điiểểm mạạnnh Hạạn chhế

Selenium - Mã nguồn mở, không có phí cấp phép - Các nhóm kiểm thử cần và bảo trì phải có kĩ năng và kinh

- Cộng đồng người dùng và phát triển nghiệm lập trình tốt để thiết lớn và tích cực để kịp với các công nghệ lập và tích hợp với phần mềm Selenium với các công cụ

- Mở để tích hợp các công cụ và các và framework khác framework khác để tăng cường khả năng

- Hỗ trợ chậm từ cộng đồng của nó.

QTP/UFT- Các tính năng kiểm thử tự động toàn diện được tích hợp vào một hệ thống duy nhất

- Hỗ trợ người dùng chuyên dụng với một cộng đồng người dùng lớn được thành lập.

- Chỉ yêu cầu các kĩ năng lập trình cơ bản để bắt đầu với việc tạo và thực thi kiểm thử.

Bảng 2 2 So sánh ưu nhược điểm của Katalon Studio với một số công cụ Đánh giá:

Không có công cụ nào phù hợp cho tất cả để kiểm thử tự động Rất khuyến khích người dùng kiểm thử đánh giá các công cụ khác nhau để chọn ra những gì sẽ đáp ứng tốt nhất nhu cầu kiểm thử tự động của họ Các ngôn ngữ lập trình và công nghệ được sử dụng để phát triển phần mềm tiếp tục phát triển, cũng như các công cụ kiểm thử tự động, khiến chi phí trở thành một yếu tố quan trọng trong việc lựa chọn công cụ Các nhà cung cấp thương mại thường tính phí nâng cấp công cụ, có thể là dáng kể nếu phần mềm của bạn sử dụng các công nghệ mới nổi và thường xuyên thay đổi

- Chi phí cao để nâng cấp và các module bổ sung

- Giải pháp tốn kém: giấy phép và phí bảo trì cao đáng kể.

Mặt khác, các công cụ mã nguồn mở và phi thương mại không phải chịu phí bổ sung mà đòi hỏi nỗ lực và chuyên môn để tích hợp các nâng cấp mới Thật khó để tìm thấy sự hỗ trợ và chuyên môn cần thiết để tích hợp các công cụ và framework khác nhau vào các giải pháp mã nguồn mở Các công cụ mới nổi tích hợp với các framework mã nguồn mở, như Katalon, cung cấp một giải pháp thay thế khả thi cho cả các giải pháp kiểm thử tự động mã nguồn mở và thương mại.

TIẾN HÀNH CÀI ĐẶT VÀ DEMO THỰC NGHIỆM VỚI CÔNG CỤ KATALON STUDIO

Một số chức năng trong Katalon Studio

Phần này của đồ án sẽ giải thích và hướng dẫn cách sử dụng một số chức năng trong Katalon Studio

Hình 3 3 Giải thích một số chức năng trong Katalon Studio

Khởi tạo quá trình test manual trên web

Khởi tạo quá trình test manual trên Mobile (có

Spy Mobile nhiều lựa chọn test trên IOS, android hoặc Kobiton Ghi lại các thao tác trong ca kiểm thử trên Web

Ghi lại các thao tác trong ca kiểm thử trên Mobile Khởi động ca kiểm thử đang thực thi

Tạm dừng ca kiểm thử đang thực thi.Sửa lỗi ca kiểm thử đang thực thi.

Danh sách các ca kiểm thử

Tập hợp các test case Trình log viewer

Thêm một ca kiểm thử

Xóa một ca kiểm thử Thêm thuộc tính cho object Danh sách plugin

Textbox Input Giá trị đầu vào cho thao tác trong ca kiểm thử

Textbox Object Đối tượng đến của thao tác

Textbox Item Các hành động (action) trong ca kiểm thử

Bảng 3 4 Một số chức năng trong Katalon Studio 3.3 Cách viết một kịch bản với Katalon Studio

3.3.1.Cách chụụp đối tượng trên màn hình hay còn gọi là lấy ID của đối tượng.

Hình 3 4 Giao diện khởi chạy Katalon Studio Bước 2: Chọn biểu tượng Spy Web:

Hình 3 5 Thêm URL của website cần test

Thử thực nghiệm với trang web nào thì nhấp liên kết của trang web đó vào ô URL, như trong hình là web thực hiện build trên local Sau đó click Start trên

46 trình duyệt Chrome Katalon sẽ điều hướng đến trang web mà bạn điền link Lúc này bạn có thể thực hiện chụp các đối tượng trên màn hình

Chụp các đối tượng bằng cách chỉ con trỏ chuột vào đối tượng đó rồi nhấn tổ hợp phím alt + ~ Hình minh họa như sau:

Hình 3 6 Sử dụng phím tắt để bắt đối tượng

Sau khi chụp các đối tượng, ID của các đối tượng này sẽ được lưu trong Object Repository, ấn Lưu bằng cách chọn nút Save

Hình 3 7 Lưu kết quả sau khi bắt đối tượng trong Katalon Studio

3.3.2.Cách chụụp đối tượng trên màn hình hay còn gọi là lấy ID của đối tượng.

- Katalon Studio hỗ trợ người dùng 2 chế độ để thiết lập kịch bản test: Manual view và Script view:

Manual view Ở chế độ manual view này, click vào các đối tượng trong mục Object Repository

Hình 3 8 Lựa chọn đối tượng trong Object Repository - Thả các ID vào mục Object

Hình 3 9 Kéo thả ID vào mục Object

- Ở chế độ này, Katalon Studio cho phép nhập các câu lệnh để thực hiện chạy kịch bản test.

- Đầu tiên, cần bật trình duyệt với câu lệnh là: openBrowser

- Tiếp theo thực hiện câu lệnh điều hướng đến trang web nào: navigateToUrl

- Tiếp theo, sau khi điều hướng đến trình duyệt bạn cần đăng nhập, click vào button "Đăng nhập" bằng câu lệnh: click ('tên đối tượng')

- Màn hình sẽ hiển thị ra các textbox cho phép nhập email và password: ở đây chúng ta sẽ sử dụng câu lệnh setText để gán text cho các đối tượng.

- Tiếp theo sẽ click vào button "Đăng nhập" để thực hiện đăng nhập vào hệ thống Ở bước này, mình đã dùng câu lệnh: verifyMatch để xem trang sau khi đăng nhặp hệ thống có đúng hay không

- Sau khi thực hiện tạo case kiểm thử xong chọn nút Start trên thanh công cụ để Katalon Studio khởi chạy tự động và kiểm tra

3.3.3 Một số plugin hỗ trợ kiểm thử ứng dụng Web

Basic Report là một Custom Keyword thay thế cho tính năng report hiện tại của Katalon Studio Kể từ phiên bản 6.1.5, tính năng Báo cáo đã được di chuyển sang plugin Báo cáo cơ bản Người dùng cần cài đặt plugin này để tiếp tục sử dụng tính năng này.

Tạo báo cáo tự động từ báo cáo Test Suite sau mỗi lần thực hiện thử nghiệm với các định dạng khác nhau: HTML, CSV, JUnit và PDF

Cho phép người dùng xuất thủ công báo cáo bộ sưu tập Test Suite và Test Suite sang HTML, CSV, JUnit và PDF Nhấp chuột phải vào báo cáo và chọn Xuất dưới dạng bất kỳ.

Hình 3 11 Basic Report 3.3.3.2 Text Encoder for Katatalon Studio

Text Encoder for Katalon Studio cho phép bạn mã hóa / giải mã văn bản bằng các thuật toán khác nhau Bộ mã hóa bao gồm:

Sau khi tải xuống plugin, nhấp vào biểu tượng Encoder hóa dưới thanh công cụ

Sẽ có một cửa sổ bật lên hiển thị Mã hóa văn bản

Hình 3 13 Text Encoder Pop upTrên chế độ 'Thời gian thực', Đầu ra sẽ được tạo tự động sau khi bạn nhập văn bản mong muốn

Hình 3 14 Text Encoder Realtime mode

Trên chế độ 'Bình thường', để mã hóa hoặc giải mã văn bản, bạn phải nhấp vào biểu tượng 'Chuyển đổi'

Hình 3 15 Text Encoder Normal mode Ngoài ra còn nhiều plugin hỗ trợ trong Katalon Studio như:

Excel Keywords: viết kiểm tra tự động hóa bằng cách sử dụng tệp excel (.xls và xlsx) dễ dàng hơn

Read and Write Gmail Messages Keywords: kết nối tài khoản email và thao tác nội dung thư theo yêu cầu kiểm tra

Get Authorization Value Form API Keywords: Plugin này rất hữu ích để nhận giá trị Ủy quyền từ API

Jira Integration: Đồng bộ hóa các trường hợp kiểm tra và nội dung Gherkin của BDD từ các vấn đề của Jira

Tự động tạo các trường hợp thử nghiệm thông qua Ngôn ngữ truy vấn Jira (JQL) trong Katalon Studio.

Slack Integration: plugin này hiện đang hỗ trợ cả kênh riêng và kênh công cộng.

Kata là một trang web cơ bản được tạo ra để phục vụ cho đồ án môn học này.

Hình 3 16 Giao diện trang web Kata

Một user người dùng có thể truy cập vào trang cá nhân của mình và chỉ có quyền hạn chỉnh sửa thông tin cá nhân của user đó

User admin có quyền truy cập vào trang quản trị để xem danh sách user thông thường, chỉnh sửa thông tin cá nhân của họ, xóa, sửa, tìm kiếm một user bất kỳ trong danh sách user có sẵn Trong khuôn khổ đồ án, do hạn chế về kinh nghiệm và thời gian tìm hiểu công cụ, em sẽ trình bày quá trình kiểm thử chức năng đăng ký, đăng nhập tài khoản, admin chỉnh sửa tài khoản trong website

“Kata” được xây dựng trên localhost Quá trình kiểm thử sẽ diễn ra như công việc thực tế của một kiểm thử viên, trong đó có: sinh ca kiểm thử, tiến hành kiểm thử trên công cụ kiểm thử tự động và sử dụng Katalon Studio 6.3.1 cài đặt trên trình duyệt Chorme phiên bản

54.0.1 64-bit, sử dụng plugin Basic Report để tạo báo cáo bằng pdf và HTML

3.4.2 Kiểm thử chức năng đăng ký, đăng nhập cho sử dụng Katalon Studio Thông tin về website:

- Khi đăng ký tài khoản tại website, người dùng được yêu cầu nhập vào các thông tin: username (tên tài khoản), password (mật khẩu), email

- Khi đăng nhập tài khoản, người dùng được yêu cầu nhập vào thông tin username, password đã đăng ký.

Người dùng thông thường: có thể chỉnh sửa thông tin cá nhân trong tài khoản của mình

Người dùng là quản trị viên (admin): có thể xem danh sách người dùng thông thường, xóa, sửa, tìm kiếm danh sách người dùng Đồ án sẽ sử dụng kỹ thuật kiểm thử đoán lỗi để kiểm tra các trường hợp:

Người dùng đăng ký tài khoản thiếu thông tin đăng ký (không nhập tên tài khoản, mật khẩu, email).

Người dùng đăng nhập sai thông tin

Kiểm thử trường hợp bị lỗi giao diện

Người dùng Admin tiến hành đăng ký tài khoản, đăng nhập và tạo user bất kỳ, với danh sách các user được import từ file excel thành công

3.4.2.1 Ca kiểểm thử trường hợp nhập thiiếu tên đăng ký

Mở sẵn trình chức năng đăng ký khi duyệt Truy

Chức năng đăng người cập trang

GUI đăng ký tài ký thiếu thông tin dùng nhập khoản thiếu thông trên trình tin (tên duyệt đăng nhập)

Stteepps Daatta Result Result Sttaattuus Coommmmeennt

1 Truy Truy cập cập Truy cập website Trang đăng website trang thành công ký mở thành pass sign up công.

Nhập tên tài Tên tài khoản Hiển thị Hiển thị pass khoản (sheet2/username) username username hợp lệ

Ký tự ngẫu nhiên tên mật Nhập thành Nhập thành khẩu công công Pass

4 Email người dùng Nhập thành Nhập thành pass

Click nút Button Sign Up chữ chữ

"Sign Up "Sign Up pass

Bảng 3 5 Ca kiểm thử trường hợp nhập thiếu tên đăng ký

Tiến hành tạo Test Case với Katalon Studio với dữ liệu người dùng đăng ký được import từ file excel có tên là sign_up_account, thực hiện trên test suite Sign Up User.

Hình 3 17 Tạo Test case với Ca thử nghiệm Sign

Up Dữ liệu người dùng tại file excel (để trống password)

Hình 3 18 Data cho ca thử nghiệm Sign Up Để import file dữ liệu excel, ta làm như sau:

Bước 2: Tạo 1 test suite cho phần đăng ký này Sau đó thêm mục test case đã tạo Sign Up (click Add).

Bước 3: Chọn Show Data Binding và thêm file excel cần import

Hình 3 20 Các bước import data từ file excelSau khi import data từ file excel ta tiến hành chạy thử nghiệm với công cụ, ta thu được kết quả sau

Hình 3 21 Thực thi ca thử nghiệm Sign Up

Kết quả: Ca thử nghiệm với Katalon Studio thực thi 2 trường hợp pass 2 Trong trường hợp này do người kiểm thử đã thiết kế test case bắt lỗi trong khi người dùng không nhập password và người lập trình có bắt lỗi không nhập thông tin trong form nên quá trình thực thi thành công Nếu người lập trình không lập trình để đưa ra thông báo thì kết quả thực thi là lỗi với trường hợp không nhập mật khẩu

Ca kiểm thử trường hợp đăng nhập sai thông tin

Kiiểểm trra Mở sẵẵn chhứức năănng trrììnnh duyyệệt

Chức năng đăng đăng nhập Truy cập nhập sai thông tin khi người trang đăng dùùnng nhhậập nhhậập tàài saai thhôônng tiin khhooảản

1 Truy Truy cập cập Truy cập website Trang đăng website trang thành công nhập mở thành pass sign up công.

(sheet1/username) Hiển thị Hiển thị khoản username username pass hợp lệ

3.Nhập ký tự ngẫu nhiên

Nhập thành Nhập thành pass 1 pass 1 fail tên mật khẩu (sheet1/password) công công fail 1 1 hợp lệ

Chuyển về Chuyển về nút Button Sign In pass trang Home trang Home Sign In

5 Click Thấy dòng Thấy dòng nút Log Button Log out chữ chữ pass out "Home" "Home"

Bảng 3 6 Ca kiểm thử trường hợp nhập sai thông tin đăng nhập

Tiến hành tạo Test Case với Katalon Studio với dữ liệu người dùng đăng ký được import từ file excel có tên là User tại test suite Sign In User

Hình 3 22 Tạo Test case với Ca thử nghiệm Sign In

Dữ liệu người dùng tại file excel, trong đó user “men” có password không đúng với thông tin đã đăng ký, password chính xác là “men”

Hình 3 23 Data cho ca thử nghiệm Sign InSau khi import data từ file excel ta tiến hành chạy thử nghiệm với hai trường hợp user trên, ta thu được kết quả sau

Kết quả: Ca thử nghiệm với Katalon Studio thực thi 2 trường hợp pass 1 và fail

1 Công cụ bắt lỗi khi người dùng nhập thông tin đăng nhập sai (mật khẩu), kết quả trả về không đúng với test case mong muốn Kiểm tra ca chức năng đăng nhập thành công.

3.4.2.3 Ca kiểm thử lỗi llàm thay đổi giiao diiện người dùng

- Trong trường hợp này, tiến hành kiểm thử một phần giao diện người dùng được thiết kế không đúng với mô tả mong đợi Có thể đặt trong trường hợp website bị attacker tấn công làm thay đổi với giao diện ban đầu hoặc do lỗ hổng khiến một người dùng có thể thay đổi tới giao diện website Sau khi tiến hành kiểm thử lại, phát hiện một phần giao diện hoặc một phần tử không đúng

Bài toán thực tế

Read and Write Gmail Messages Keywords: kết nối tài khoản email và thao tác nội dung thư theo yêu cầu kiểm tra

Get Authorization Value Form API Keywords: Plugin này rất hữu ích để nhận giá trị Ủy quyền từ API

Jira Integration: Đồng bộ hóa các trường hợp kiểm tra và nội dung Gherkin của BDD từ các vấn đề của Jira

Tự động tạo các trường hợp thử nghiệm thông qua Ngôn ngữ truy vấn Jira (JQL) trong Katalon Studio.

Slack Integration: plugin này hiện đang hỗ trợ cả kênh riêng và kênh công cộng.

Kata là một trang web cơ bản được tạo ra để phục vụ cho đồ án môn học này.

Hình 3 16 Giao diện trang web Kata

Một user người dùng có thể truy cập vào trang cá nhân của mình và chỉ có quyền hạn chỉnh sửa thông tin cá nhân của user đó

User admin có quyền truy cập vào trang quản trị để xem danh sách user thông thường, chỉnh sửa thông tin cá nhân của họ, xóa, sửa, tìm kiếm một user bất kỳ trong danh sách user có sẵn Trong khuôn khổ đồ án, do hạn chế về kinh nghiệm và thời gian tìm hiểu công cụ, em sẽ trình bày quá trình kiểm thử chức năng đăng ký, đăng nhập tài khoản, admin chỉnh sửa tài khoản trong website

“Kata” được xây dựng trên localhost Quá trình kiểm thử sẽ diễn ra như công việc thực tế của một kiểm thử viên, trong đó có: sinh ca kiểm thử, tiến hành kiểm thử trên công cụ kiểm thử tự động và sử dụng Katalon Studio 6.3.1 cài đặt trên trình duyệt Chorme phiên bản

54.0.1 64-bit, sử dụng plugin Basic Report để tạo báo cáo bằng pdf và HTML

3.4.2 Kiểm thử chức năng đăng ký, đăng nhập cho sử dụng Katalon Studio Thông tin về website:

- Khi đăng ký tài khoản tại website, người dùng được yêu cầu nhập vào các thông tin: username (tên tài khoản), password (mật khẩu), email

- Khi đăng nhập tài khoản, người dùng được yêu cầu nhập vào thông tin username, password đã đăng ký.

Người dùng thông thường: có thể chỉnh sửa thông tin cá nhân trong tài khoản của mình

Người dùng là quản trị viên (admin): có thể xem danh sách người dùng thông thường, xóa, sửa, tìm kiếm danh sách người dùng Đồ án sẽ sử dụng kỹ thuật kiểm thử đoán lỗi để kiểm tra các trường hợp:

Người dùng đăng ký tài khoản thiếu thông tin đăng ký (không nhập tên tài khoản, mật khẩu, email).

Người dùng đăng nhập sai thông tin

Kiểm thử trường hợp bị lỗi giao diện

Người dùng Admin tiến hành đăng ký tài khoản, đăng nhập và tạo user bất kỳ, với danh sách các user được import từ file excel thành công

3.4.2.1 Ca kiểểm thử trường hợp nhập thiiếu tên đăng ký

Mở sẵn trình chức năng đăng ký khi duyệt Truy

Chức năng đăng người cập trang

GUI đăng ký tài ký thiếu thông tin dùng nhập khoản thiếu thông trên trình tin (tên duyệt đăng nhập)

Stteepps Daatta Result Result Sttaattuus Coommmmeennt

1 Truy Truy cập cập Truy cập website Trang đăng website trang thành công ký mở thành pass sign up công.

Nhập tên tài Tên tài khoản Hiển thị Hiển thị pass khoản (sheet2/username) username username hợp lệ

Ký tự ngẫu nhiên tên mật Nhập thành Nhập thành khẩu công công Pass

4 Email người dùng Nhập thành Nhập thành pass

Click nút Button Sign Up chữ chữ

"Sign Up "Sign Up pass

Bảng 3 5 Ca kiểm thử trường hợp nhập thiếu tên đăng ký

Tiến hành tạo Test Case với Katalon Studio với dữ liệu người dùng đăng ký được import từ file excel có tên là sign_up_account, thực hiện trên test suite Sign Up User.

Hình 3 17 Tạo Test case với Ca thử nghiệm Sign

Up Dữ liệu người dùng tại file excel (để trống password)

Hình 3 18 Data cho ca thử nghiệm Sign Up Để import file dữ liệu excel, ta làm như sau:

Bước 2: Tạo 1 test suite cho phần đăng ký này Sau đó thêm mục test case đã tạo Sign Up (click Add).

Bước 3: Chọn Show Data Binding và thêm file excel cần import

Hình 3 20 Các bước import data từ file excelSau khi import data từ file excel ta tiến hành chạy thử nghiệm với công cụ, ta thu được kết quả sau

Hình 3 21 Thực thi ca thử nghiệm Sign Up

Kết quả: Ca thử nghiệm với Katalon Studio thực thi 2 trường hợp pass 2 Trong trường hợp này do người kiểm thử đã thiết kế test case bắt lỗi trong khi người dùng không nhập password và người lập trình có bắt lỗi không nhập thông tin trong form nên quá trình thực thi thành công Nếu người lập trình không lập trình để đưa ra thông báo thì kết quả thực thi là lỗi với trường hợp không nhập mật khẩu

Ca kiểm thử trường hợp đăng nhập sai thông tin

Kiiểểm trra Mở sẵẵn chhứức năănng trrììnnh duyyệệt

Chức năng đăng đăng nhập Truy cập nhập sai thông tin khi người trang đăng dùùnng nhhậập nhhậập tàài saai thhôônng tiin khhooảản

1 Truy Truy cập cập Truy cập website Trang đăng website trang thành công nhập mở thành pass sign up công.

(sheet1/username) Hiển thị Hiển thị khoản username username pass hợp lệ

3.Nhập ký tự ngẫu nhiên

Nhập thành Nhập thành pass 1 pass 1 fail tên mật khẩu (sheet1/password) công công fail 1 1 hợp lệ

Chuyển về Chuyển về nút Button Sign In pass trang Home trang Home Sign In

5 Click Thấy dòng Thấy dòng nút Log Button Log out chữ chữ pass out "Home" "Home"

Bảng 3 6 Ca kiểm thử trường hợp nhập sai thông tin đăng nhập

Tiến hành tạo Test Case với Katalon Studio với dữ liệu người dùng đăng ký được import từ file excel có tên là User tại test suite Sign In User

Hình 3 22 Tạo Test case với Ca thử nghiệm Sign In

Dữ liệu người dùng tại file excel, trong đó user “men” có password không đúng với thông tin đã đăng ký, password chính xác là “men”

Hình 3 23 Data cho ca thử nghiệm Sign InSau khi import data từ file excel ta tiến hành chạy thử nghiệm với hai trường hợp user trên, ta thu được kết quả sau

Kết quả: Ca thử nghiệm với Katalon Studio thực thi 2 trường hợp pass 1 và fail

1 Công cụ bắt lỗi khi người dùng nhập thông tin đăng nhập sai (mật khẩu), kết quả trả về không đúng với test case mong muốn Kiểm tra ca chức năng đăng nhập thành công.

3.4.2.3 Ca kiểm thử lỗi llàm thay đổi giiao diiện người dùng

- Trong trường hợp này, tiến hành kiểm thử một phần giao diện người dùng được thiết kế không đúng với mô tả mong đợi Có thể đặt trong trường hợp website bị attacker tấn công làm thay đổi với giao diện ban đầu hoặc do lỗ hổng khiến một người dùng có thể thay đổi tới giao diện website Sau khi tiến hành kiểm thử lại, phát hiện một phần giao diện hoặc một phần tử không đúng

- Nguyên nhân có dẫn tới có thể do lỗ hổng trong chức năng của các form đăng ký, đăng nhập không lọc input đầu vào hoặc do người lập trình viên không ngăn chặn được hết các trường hợp mà attacker có thể lợi dụng từ các chức năng cơ bản của ứng dụng Ở đây nhóm tác giả không đề cập tới cách thức thay đổi giao diện của một website (do lỗ hổng) và đặt trường hợp website đã bị thay đổi một element trên giao diện, tiến hành kiểm tra lại element thông qua công cụ Katalon Studio

Teesst Tiittlle Deessccrriippttiioon Pre- Condition

Truy cập Kiểm tra lỗi giao các element

GUI trang đăng diện trên trang

Home ký tài khoản trên trình duyệt

1 Trruuy cậập Truy cập website website website trang chủ thành công thành thành pass công công.

Sign in/ Sign up Menu hiển Menu hiển menu thị thị pass

Slide hiển thị Slide hiển Slide hiển pass

WEELLCCOOMME faaiil trong Studio slide

3.2.Kiểm tra thẻ H1 Hoomme Hoomme Hoomme paasss trong slide

Slide hiển thị Slide hiển Slide hiển

5 block 5 block hình block trong Hình ảnh và text pass hình ảnh ảnh slide

Video Video background background background pass

Hình 3 25 Ca kiểm thử trường hợp lỗi giao diện

Sử dụng test Case TestVul với Katalon Studio với dữ liệu người dùng đăng ký, đăng nhập được import từ file excel có tên là SignInInputVul tại Sheet5

Hình 3 26 Test case kiểm thử

Hình 3 27 Giao diện ban đầu của Website Đặt trường hợp Websbsitite bị thay đổi về Text trong slide 1, từ KATALON STUDIO trở thành WEBSITE WAS CHANGED và title Home bị thay đổi thành Hacked, sử dụng công cụ để bắt lỗi trong trường hợp này

Hình 3 28 Lỗi về giao diện

Hình 3 29 Thực thi ca thử nghiệm Tesy Vul

Kết quả: Vì đoạn text bị thay đổi không đúng với mục đích ban đầu nên công cụ Katalon Studio thực thi bắt lỗi ngay tại đoạn text “Website was changed” bị thay đổi

Kết luận: Công cụ vừa được sử dụng để tiến hành kiểm thử chức năng của ứng dụng web mặt khác được sử dụng nhằm mục đích tấn công web

3.4.2.4.Ca kiểm thử trường hợp đăng nhập, tạo user thành công cho tài khoản Admin

Tyyppe Teesst Tiittlle Deessccrriippttiioon Pre-Coonnddiittiioon

Kiểm tra chức năng đăng nhập

Chức năng đăng khi người dùng Mở sẵn trình nhập các thông duyệt Truy cập nhập và sửa user

GUI tin trang đăng ký thành công cho hợp lệ, hoàn tất tài khoản account Admin việc đăng nhập trên trình duyệt và sửa user thành công

Truy cập website cập trang thành công Sign In

2 Nhập tên tài admin khoản hợp lệ

3.Nhập têên mậật admin khẩu hợp

4 Clicklệ nút Sign Button Sign In

6 Click nút edit Icon Edit User user

Trang đăng Truy cập website thành nhập mở công.

Hiển thị Hiển thị username username

Nhập thành Nhập thành công công

Chuyển sang Chuyển sang trang Home trang Home

Chuyển sang Chuyển sang trang Admin trang Admin

Chuyển sang Chuyển sang trang Edit.php trang Edit.php

Hiển thị Hiển thị Nothing to Nothing to change Click change Click here to here to comeback comeback.

Sttaattuus pass pass pass pass pass pass pass

66 chuyển sang trang Admin 6.2 Click

Chuyển sang Chuyển sang nút edit Icon Edit User trang Edit.php trang Edit.php user

Hiển thị Hiển thị Nhập tên nunu username username tài khoản

Nhập thành Nhập thành Nhập mật nunu công công khẩu

Nhập tên nunu@gmail.com Nhập thành Nhập thành email công công hợp lệ pass pass pass pass

6.2.4.1 Update Success, Update click here to Success, click

Click nút Button Update pass

Update watch the here to watch change the change

Click nút Button Back pass back trang Admin trang Admin

Bảng 3 7 Ca kiểm thử trường hợp đăng nhập và sửa tài khoản

Sử dụng test case với Katalon Studio với dữ liệu người dùng Admin đăng nhập, sửa tài khoản được.

Hình 3 30 Test case cho ca kiểm thử đăng nhập và tạo tài khoản cho Admin Tạo Test Suite gồm 1 test case:

Hình 3 31 Test Suite cho ca kiểm thử đăng nhập và sửa tài khoản cho Admin

Hình 3 32 Thực thi với Katalon Studio

Xem báo cáo các ca kiểm thử tại Katalon Analysis hoặc tại Report của Basic Report

Hình 3 33 Báo cáo Katalon Analysis

KẾT LUẬN 1 Kếết quuả đạạt đưượợc

- Đã tìm hiểu, nghiên cứu và trình bày được tổng quan về lĩnh vực kiểm thử phần mềm nói chung và lĩnh vực web nói riêng

- Trìnình bày đầy đủ tổng quan về phần mềm, lỗi phần mềm, đặc tả yêu cầu phần mềm, chất lượng và độ tin cậy của phần mềm cũng như các vấn đề liên quan tới kiểm thử phần mềm

- Chỉ ra được sự khác biệt của công việc kiểm thử ứng dụng trên nền Web với công việc kiểm thử trên các môi trường khác

- Đồ án có thể xem như tài liệu hướng dẫn sử dụng Katalon Studio một cách cơ bản nhất bằng tiếng Việt để tham khảo.

Do trình độ, khả năng và thời gian còn hạn chế nên báo cáo của nhóm còn tồn tại một số điểm hạn chế :

Ngày đăng: 05/12/2022, 06:22

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w