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

HVKTMM ATTT xay dng ng dng web kim t

81 6 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

Định dạng
Số trang 81
Dung lượng 3,72 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 (12)
      • 1.1.1. Khái quát (12)
      • 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 (13)
      • 1.1.5. Khái niệm về Ca kiểm thử (18)
      • 1.1.6. Các mức độ nghiêm trọng của lỗi (20)
    • 1.2. Kiểm thử tự động và kiểm thử thủ công (21)
      • 1.2.1. Khái niệm (21)
      • 1.2.2. Đặc điểm (21)
    • 1.3. Công việc chính khi kiểm thử ứng dụng Web (25)
      • 1.3.1. Kiểm thử chức năng (25)
      • 1.3.2. Kiểm thử khả năng sử dụng (27)
      • 1.3.3. Kiểm thử sự tương thích (28)
      • 1.3.4. Kiểm thử hiệu suất (29)
      • 1.3.5. Kiểm thử bảo mật (29)
    • 1.4. Một số công cụ hỗ trợ kiểm thử ứng dụng trên nền Web (30)
      • 1.4.1. Công cụ kiểm thử hiệu năng (30)
      • 1.4.2. Công cụ kiểm thử bảo mật (31)
      • 1.4.3. Công cụ kiểm thử chức năng (31)
  • CHƯƠNG 2: KIỂM THỬ ỨNG DỤNG TRÊN NỀN WEB BẰNG CÔNG CỤ KATALON (32)
    • 2.1. Giới thiệu về Katalon Studio (32)
    • 2.2. Các tính năng chính của Katalon Studio (33)
    • 2.3. Làm việc với Katalon Studio (33)
    • 2.4. Quy trình làm việc của Katalon Studio (34)
    • 2.5. So sánh các công cụ kiểm thử tự động (35)
  • CHƯƠNG 3: TIẾN HÀNH CÀI ĐẶT VÀ DEMO THỰC NGHIỆM VỚI CÔNG CỤ KATALON (40)
    • 3.1. Cài đặt và cấu hình (40)
      • 3.1.1. Cách cài đặt (40)
      • 3.1.2. Cấu hình (41)
    • 3.2. Một số chức năng trong Katalon Studio (43)
    • 3.3. Cách viết một kịch bản với Katalon Studio (44)
      • 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 (44)
      • 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 (46)
      • 3.3.3. Một số plugin hỗ trợ kiểm thử ứng dụng Web (48)
    • 3.4. Bài toán thực tế (52)
      • 3.4.1. Giới thiệu bài toán (52)
      • 3.4.2. Kiểm thử chức năng đăng ký, đăng nhập cho sử dụng Katalon Studio (53)
  • TÀI LIỆU THAM KHẢO (71)
  • PHỤ LỤC (72)
    • I. Danh sách các report trong quá trình kiểm thử (72)
    • I. Mã Script của các test case (75)

Nội dung

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

Khái quát về kiểm thử ứng dụng trên nền Web

Với sự phát triển mạnh mẽ của Internet, việc thiết kế website và ứng dụng web trở nên cần thiết để doanh nghiệp chiếm lĩnh thị trường và tiếp cận khách hàng hiệu quả Các ứng dụng web không chỉ phát triển nhanh chóng mà còn đóng vai trò quan trọng trong việc kết nối và trao đổi thông tin giữa các doanh nghiệp.

Để đạt được thành công, các ứng dụng web cần đảm bảo chất lượng cao và hiệu năng tốt, đồng thời chú trọng đến giao diện và trải nghiệm người dùng Ứng dụng web có những đặc thù khác biệt so với ứng dụng di động và desktop, vì chúng được thiết kế để hoạt động trên nhiều nền tảng khác nhau như điện thoại thông minh, máy tính và máy tính bảng Mỗi nền tảng yêu cầu cấu hình, độ phân giải và thao tác riêng, tạo ra thách thức lớn cho các nhà phát triển phần mềm trong việc duy trì chất lượng Do đó, việc xây dựng một chiến lược kiểm thử hiệu quả là cần thiết để giảm thiểu rủi ro và nâng cao chất lượng cho ứng dụng web.

1.1.2 Các loại ứng dụng Web

Ứng dụng Web tĩnh là loại ứng dụng hiển thị nội dung hạn chế và thiếu tính linh hoạt, thường được xây dựng từ HTML, CSS và Javascript Vì không có cơ sở dữ liệu và công cụ quản lý nội dung, người quản trị cần kiến thức cơ bản về HTML và CSS để thực hiện chỉnh sửa Ưu điểm của website tĩnh là nội dung đơn giản, dễ xây dựng mà không cần xử lý câu lệnh phức tạp Tuy nhiên, việc cập nhật thông tin trở nên khó khăn và có thể tốn kém khi cần thay đổi nội dung.

Web tĩnh thường được sử dụng cho các trang giới thiệu công ty, tổ chức, sản phẩm và khóa học, nơi thông tin ít có nhu cầu cập nhật.

Web động phức tạp hơn web tĩnh về mặt kỹ thuật, sử dụng cơ sở dữ liệu để hiển thị nội dung và cho phép người dùng tương tác Nó bao gồm hai phần chính: back-end cho quản trị viên cập nhật nội dung và front-end cho người dùng truy cập Nhiều ngôn ngữ lập trình như Java, PHP, ASP.NET, và Ruby được sử dụng để xây dựng web động Việc cập nhật nội dung trên web động rất đơn giản, và một số hệ thống lớn cho phép quản trị viên thay đổi giao diện mà không cần can thiệp vào mã nguồn, điều này lý giải tại sao web động ngày càng phổ biến hơn web tĩnh.

1.1.3 Đặc điểm về chất lượng của một ứng dụng trên nền Web

Kiểm thử phần mềm trước đây chủ yếu tập trung vào ứng dụng desktop, nhưng hiện nay đã mở rộng ra nhiều nền tảng khác nhau như ứng dụng trên điện thoại thông minh, máy tính bảng và ứng dụng web Mỗi loại ứng dụng đều có những đặc trưng riêng về chất lượng, độ tin cậy, chức năng và yêu cầu người dùng, điều này dẫn đến việc kiểm thử cũng phải được thực hiện khác nhau cho từng loại Do đó, một chuyên gia kiểm thử ứng dụng trên điện thoại thông minh hay desktop chưa chắc đã đủ khả năng thực hiện kiểm thử hiệu quả cho ứng dụng web.

Ứng dụng web thường gặp khó khăn khi hoạt động trên nhiều trình duyệt khác nhau, như Google Chrome, Mozilla Firefox và Safari, do mỗi trình duyệt được xây dựng trên kiến trúc riêng biệt Mặc dù các trình duyệt đang nỗ lực thiết lập các chuẩn chung để hỗ trợ lập trình viên, nhưng sự khác biệt trong cách khởi chạy ứng dụng vẫn gây ra nhiều lo ngại về tính tương thích và hiệu suất.

Để đảm bảo ứng dụng web hoạt động tốt trên nhiều trình duyệt khác nhau, lập trình viên và người làm kiểm thử cần thực hiện kiểm tra độ tương thích Việc ghi chú “Website chạy tốt nhất trên trình duyệt X” không phải là giải pháp hiệu quả, vì người dùng có thể không muốn cài đặt trình duyệt được khuyến nghị Do đó, người làm kiểm thử cần triển khai ca kiểm thử trên nhiều trình duyệt để phát hiện lỗi và giúp lập trình viên điều chỉnh ứng dụng, nhằm mang lại trải nghiệm tốt nhất cho người dùng.

Ứng dụng Web có lượng truy cập lớn thường phải đối mặt với nguy cơ quá tải server khi nhiều người sử dụng cùng một lúc Đối với các ứng dụng có lượng người truy cập trung bình hoặc ít, vấn đề này không nghiêm trọng Tuy nhiên, để đảm bảo hiệu suất và khả năng chịu lỗi của ứng dụng, kiểm thử hộp trắng trở nên cần thiết Việc kiểm thử mã nguồn giúp loại bỏ các dòng lệnh không hợp lý, tiết kiệm tài nguyên hệ thống và cải thiện khả năng đáp ứng của ứng dụng trước lượng truy cập cao.

Sự phụ thuộc vào tốc độ và độ ổn định của đường truyền Internet là yếu tố quan trọng ảnh hưởng đến hiệu suất của các ứng dụng Web Hầu hết các ứng dụng này cần kết nối Internet để tải dữ liệu và hiển thị trên trình duyệt Khi đường truyền ổn định, việc duyệt Web diễn ra thuận lợi, nhưng thực tế, tốc độ và độ ổn định thường không đồng nhất giữa các khu vực, gây khó khăn cho việc vận hành ứng dụng Hơn nữa, việc mất kết nối đột ngột trong quá trình truy vấn có thể dẫn đến những hậu quả nghiêm trọng, đặc biệt đối với các ứng dụng nhạy cảm như ngân hàng, hệ thống ERP và phần mềm kế toán.

Sự cần thiết của SEO Web là rất quan trọng, đặc biệt đối với các ứng dụng trên nền Web, vì việc tối ưu SEO giúp nâng cao thứ hạng trên các công cụ tìm kiếm như Google và Bing, từ đó tăng cường khả năng tiếp cận của người dùng Chủ sở hữu website mong muốn quảng bá ứng dụng của mình một cách hiệu quả hơn so với ứng dụng di động hay desktop Do đó, bên cạnh việc kiểm thử chức năng, hiệu năng và giao diện, kiểm thử viên cần chú trọng đến việc tối ưu SEO Tuy nhiên, việc này gặp nhiều khó khăn do thuật toán của các máy tìm kiếm thường xuyên thay đổi và yêu cầu chất lượng nội dung cao để thu hút sự chú ý.

1.1.4 Quy trình kiểm thử một ứng dụng web/một phần mềm

Kiểm thử phần mềm là một quá trình phức tạp bao gồm nhiều giai đoạn và sự phối hợp giữa các bên liên quan, không chỉ đơn thuần là một hoạt động đơn lẻ Để đảm bảo hiệu quả, cần thiết lập quy trình kiểm thử phần mềm rõ ràng, xác định các bước kiểm thử, người chịu trách nhiệm và thời điểm thực hiện trong toàn bộ quy trình phát triển phần mềm Quy trình này bao gồm chuỗi các hoạt động cần thiết để tiến hành kiểm thử, được thể hiện qua sơ đồ tổng quát.

Hình 1 1 Quy trình kiểm thử phần mềm

Nhóm kiểm thử sẽ tiến hành phân tích yêu cầu bằng cách tương tác với các bên liên quan để làm rõ những yêu cầu cụ thể cần thiết cho quá trình kiểm thử Việc hiểu rõ các yêu cầu này, bao gồm cả chức năng và tính năng, là rất quan trọng để đảm bảo chất lượng sản phẩm cuối cùng.

9 năng (xác định phần mềm cần phải làm những gì) hoặc phi chức năng (hiệu năng, tính bảo mật hệ thống, màu sắc, v.v.)

▪ Xác định loại kiểm thử sẽ thực hiện

▪ Tổng hợp chi tiết về và mức độ tập trung thứ tự ưu tiên

Chuẩn bị RTM (Requirement Traceability Matrix) là một tài liệu dạng bảng, giúp theo dõi các yêu cầu của khách hàng và kiểm tra mức độ đáp ứng của những yêu cầu này RTM đóng vai trò quan trọng trong việc đảm bảo rằng tất cả các yêu cầu đã được thực hiện đầy đủ, từ đó nâng cao chất lượng sản phẩm và sự hài lòng của khách hàng.

▪ Xác định môi trường kiểm thử

▪ Phân tích khả năng sử dụng kiểm thử tự động

▪ Báo cáo về khả năng sử dụng kiểm thử tự động (nếu cần)

Lên kế hoạch kiểm thử, hay còn gọi là chiến lược thử nghiệm, là giai đoạn quan trọng trong quy trình kiểm thử phần mềm Tại đây, trưởng nhóm kiểm thử sẽ ước lượng chi phí cho dự án và chuẩn bị một kế hoạch kiểm thử chi tiết, đảm bảo rằng mọi khía cạnh của quá trình kiểm thử đều được xem xét kỹ lưỡng.

▪ Lựa chọn công cụ kiểm thử (test tool)

▪ Lên kế hoạch về nhân sự và ấn định vai trò trách nhiệm cho từng người trong nhóm

▪ Phổ biến cho mọi người trong nhóm kiểm thử về yêu cầu dự án

▪ Bản kế hoạch kiểm thử

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

Kiểm thử phần mềm tự động là quá trình thực hiện kiểm thử thông qua các chương trình đặc biệt, giảm thiểu sự can thiệp của con người, giúp tester tránh lặp lại các bước kiểm thử nhàm chán Các công cụ kiểm thử tự động có khả năng lấy dữ liệu từ các file bên ngoài như Excel hoặc CSV, nhập vào ứng dụng, so sánh kết quả mong đợi với kết quả thực tế và xuất ra báo cáo kiểm thử chi tiết.

Kiểm thử thủ công là quy trình mà tester thực hiện tất cả các công việc bằng tay, bao gồm việc viết test case, nhập điều kiện đầu vào, thực hiện các sự kiện như nhấp nút và quan sát kết quả thực tế Sau đó, họ so sánh kết quả thực tế với kết quả mong muốn trong test case và ghi lại kết quả kiểm thử Hiện nay, kiểm thử thủ công vẫn là phương pháp chủ yếu được áp dụng bởi hầu hết các tổ chức, công ty phần mềm và các nhóm phát triển phần mềm.

Hình 1 4 Kiểm thử thủ công

1.2.2 Đặc điểm Ưu nhược điểm của hai quy trình:

Kiểm thử Điểm mạnh Điểm yếu

- Cho phép tester thực hiện việc kiểm thử khám phá

- Thích hợp kiểm tra sản

- Tốn thời gian Đối với mỗi lần release, người kiểm thử vẫn phải thực hiện lại một tập hợp các

- Thích hợp kiểm thử trong trường hợp các test case chỉ phải thực hiện một số ít lần

- Giảm được chi phí ngắn hạn test case đã chạy dẫn đến sự mệt mỏi và lãng phí effort

- Thí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ủ công

Các thao tác lặp đi lặp lại như nhập dữ liệu, nhấp chuột và kiểm tra kết quả có thể được tự động hóa, giúp tester tránh những công việc nhàm chán và dễ gây nhầm lẫn.

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

- Tốn kém hơn kiểm thử tự động, chi phí đầu tư ban đầu lớn

- Kiểm thử thủ công là không thể thay thế vì người ta không thể tự động hóa mọi thứ

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 bản đồ trên, tổng lượng kiểm tra (số hạng mục x thời gian) cho cả test tự động và test bằng tay được chỉ rõ Việc áp dụng test tự động không chỉ nâng cao hiệu quả kiểm tra mà còn đảm bảo tổng số trường hợp kiểm tra được gia tăng đáng kể.

• 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 thường cao hơn so với kiểm thử bằng tay, nhưng giá trị này sẽ thay đổi theo thời gian Mặc dù kiểm thử tự động mang lại nhiều lợi ích, nó không thể hoàn toàn thay thế kiểm thử bằng tay Việc kiểm tra không có lợi ích từ tự động hóa có thể dẫn đến những kết quả không khả quan, cho thấy rằng tự động hóa cần phải có ý nghĩa để mang lại hiệu quả thực sự.

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…

Tự động hóa không phù hợp cho mọi trường hợp thử nghiệm, đặc biệt là những tình huống không yêu cầu hồi quy hoặc khi đặc điểm kỹ thuật liên tục thay đổi Trong những trường hợp này, việc tự động hóa có thể không mang lại hiệu quả như mong đợi.

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

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

Kiểm thử thăm dò là một loại kiểm thử yêu cầu người thực hiện phải có kiến thức, kinh nghiệm, kỹ năng phân tích và logic, cùng với sự sáng tạo và trực giác Loại kiểm thử này thường thiếu tài liệu kỹ thuật chi tiết và có thời gian thực hiện ngắn, do đó, kỹ năng con người đóng vai trò quan trọng trong quá trình kiểm thử.

Usability Testing là lĩnh vực quan trọng để đánh giá mức độ thân thiện, hiệu quả và sự tiện lợi của phần mềm hoặc sản phẩm đối với người dùng cuối Quan sát hành vi của người dùng là yếu tố then chốt trong quá trình này, vì vậy việc áp dụng phương pháp thủ công mang lại lợi ích đáng kể.

• Kiểm thử Ad-hoc: Trong kịch bản này, không có phương pháp cụ thể

Phương pháp này hoàn toàn không có kế hoạch kiểm thử, trong đó 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 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 là một phương pháp quan trọng, trong đó kiểm thử tự động trở nên cần thiết do sự thay đổi mã thường xuyên và khả năng thực hiện các kiểm thử hồi quy một cách kịp thời.

Kiểm thử tải trọng là phương pháp hiệu quả nhất để thực hiện các thử nghiệm tự động, đặc biệt khi kết hợp với 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.

Công việc chí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 kiểm tra tất cả các liên kết trên trang web, cũng như định dạng sử dụng để gửi và nhận thông tin từ người dùng Bên cạnh đó, việc kết nối cơ sở dữ liệu, kiểm tra cookie và xác minh HTML/CSS cũng cần được thực hiện để đảm bảo tính năng hoạt động hiệu quả.

Kiểm thử giao diện là bước quan trọng trước khi lập trình viên bắt đầu mã nguồn, với bản thiết kế UI chi tiết cho ứng dụng Web Mỗi thành phần như textbox, button, image, link và bố cục đều được mô tả cụ thể trong tài liệu thiết kế, thường kèm theo file PSD từ phần mềm Photoshop Tài liệu này không chỉ giúp lập trình viên xây dựng ứng dụng dễ dàng mà còn giúp khách hàng hình dung rõ ràng giao diện cuối cùng Ngoài ra, đây là tài liệu thiết yếu cho kiểm thử viên để so sánh giữa thiết kế và nội dung thực tế 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, việc kiểm tra liên kết nội bộ và liên kết ngoại bộ là rất quan trọng để đảm bảo chúng hoạt động hiệu quả Cần xác minh rằng các liên kết trỏ đến địa chỉ mong muốn và không tự trỏ về chính nó Đồng thời, thuộc tính “target” của các liên kết cũng cần được xem xét để đảm bảo chúng hoạt động đúng như thiết kế yêu cầu.

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

Để bảo vệ ứng dụng web khỏi các cuộc tấn công như SQL Injection, cần thiết kế các trường nhập liệu đúng kiểu và áp dụng bộ lọc kiểm tra tính đúng đắn của dữ liệu trước khi gửi Đồng thời, cần đảm bảo tính toàn vẹn của dữ liệu trong quá trình truyền tải từ trình duyệt đến server, đặc biệt là trong các ứng dụng thương mại điện tử và ngân hàng.

Kiểm thử lỗi cú pháp HTML/CSS là bước quan trọng, trong đó người kiểm thử cần xác định các thẻ CSS không hợp lệ cũng như các thuộc tính, id và class được viết trong thẻ HTML không đúng quy định hoặc không thuộc về 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 có thể được thực hiện bằng cách cho phép và vô hiệu hóa các tập tin cookie Bên cạnh đó, có thể thử nghiệm việc đưa lỗi vào ứng dụng Web để đánh giá tính bảo mật và hiệu suất của nó.

Kiểm tra tên miền không phù hợp có thể dẫn đến việc truyền tải thông tin sai lệch và thiếu tham số cần thiết Bên cạnh đó, việc đánh giá khả năng bảo mật của ứng dụng web là rất quan trọng, trong đó có việc xóa các tập tin cookie có chọn lọc trong quá trình thử nghiệm.

• Kiểm thử nội dung đa ngôn ngữ:

Kiểm thử ứng dụng web đa ngôn ngữ là bước quan trọng để đảm bảo tính chính xác của thông tin khi dịch sang các ngôn ngữ khác nhau Quá trình này giúp ngăn ngừa tình trạng tràn dòng và đảm bảo các yếu tố chính tả được tuân thủ, từ đó nâng cao chất lượng trải nghiệm người dùng.

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

Kiểm tra kết nối đến cơ sở dữ liệu và các lỗi truy vấn là rất quan trọng để đảm bảo dữ liệu được cung cấp chính xác trong quá trình thực hiện các chức năng như xem thông tin, thêm, sửa và xóa.

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

Để cải thiện trải nghiệm người dùng, nội dung trong ứng dụng cần được sắp xếp hợp lý và dễ hiểu, đồng thời tránh các lỗi chính tả Hình ảnh phải được hiển thị chính xác về vị trí và kích thước Bên cạnh đó, việc lựa chọn màu sắc và font chữ phù hợp với mọi đối tượng sử dụng cũng rất quan trọng.

Kiểm thử lôgíc các liên kết và hướng dẫn là rất quan trọng đối với người dùng lần đầu truy cập ứng dụng Web, vì họ thường gặp khó khăn trong việc sử dụng Cần kiểm tra sự bố trí đầy đủ của các hướng dẫn, liên kết và thông báo trên ứng dụng Tuy nhiên, quá nhiều hướng dẫn và thông báo có thể gây rối mắt và làm người dùng cảm thấy không thoải mái Do đó, nên đảm bảo rằng các hướng dẫn và thông báo được trình bày ngắn gọn, súc tích và xuất hiện ở những vị trí mà người dùng có thể gặp khó khăn.

Kiểm thử văn hóa khu vực và đối tượng sử dụng là yếu tố quan trọng trong thiết kế, vì mỗi lĩnh vực có những đặc điểm riêng, chẳng hạn như y khoa thường sử dụng màu sáng để biểu thị sự sạch sẽ Ngoài ra, văn hóa của từng khu vực cũng ảnh hưởng đến sở thích màu sắc và thiết kế, ví dụ, người châu Á thường ưa chuộng tông màu nóng và thiết kế cầu kỳ hơn so với người châu Âu.

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

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

Kiểm thử độ tương thích của ứng dụng Web là một thách thức lớn do sự hỗ trợ cho nhiều thiết bị và môi trường khác nhau, cùng với sự thay đổi nhanh chóng của công nghệ nền tảng.

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

Khó có ứng dụng Web nào hoạt động hoàn hảo trên mọi môi trường, do đó, người kiểm thử cần xác định và ưu tiên các môi trường hỗ trợ để tiết kiệm thời gian trong quá trình kiểm thử.

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

Kiểm thử viên ứng dụng web phải thực hiện nhiều nhiệm vụ quan trọng, và việc sử dụng các công cụ kiểm thử giúp họ làm việc hiệu quả hơn, giảm thiểu sự nhàm chán và tiết kiệm chi phí Bài viết này sẽ giới thiệu một số công cụ hỗ trợ kiểm thử ứng dụng web, được phân loại theo mục đích sử dụng.

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

Dưới đây là danh sách các công cụ kiểm thử hiệu năng phổ biến nhất, giúp đo lường hiệu suất ứng dụng web và khả năng chịu tải của chúng Những công cụ này cung cấp đánh giá chính xác về hiệu suất của ứng dụng trong các thời điểm lưu lượng truy cập cao.

WebLoad là công cụ kiểm thử khả năng chịu tải và độ chịu lỗi của ứng dụng Web, hỗ trợ nhiều công nghệ như Ajax, Adobe Flex, NET, Oracle Forms và HTML5 Với giao diện dễ sử dụng, WebLoad cung cấp các tính năng 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 phù hợp cho thử nghiệm hiệu suất quy mô lớn với các kịch bản phức tạp và cung cấp phân tích rõ ràng, giúp người dùng đánh giá hiệu suất ứng dụng một cách hiệu quả.

Apache JMeter là một công cụ mã nguồn mở mạnh mẽ, chủ yếu được sử dụng để kiểm thử hiệu năng Nó cho phép tích hợp dễ dàng vào kế hoạch kiểm thử và không chỉ dừng lại ở việc kiểm tra hiệu suất, mà còn hỗ trợ kiểm tra các chức năng của ứng dụng Web.

NeoLoad là công cụ hiệu quả để đo lường và phân tích hiệu suất của ứng dụng Web, giúp kiểm thử viên đánh giá khả năng chịu tải của ứng dụng thông qua việc tăng lưu lượng truy cập Được phát triển trên nền tảng Java, NeoLoad tương thích với nhiều hệ điều hành và hỗ trợ hai ngôn ngữ chính là Tiếng Anh và Tiếng Pháp.

LoadStorm là một công cụ kiểm thử hiệu suất dành cho ứng dụng web và di động, nổi bật với khả năng đánh giá hiệu năng dựa trên số lượng người dùng và lưu lượng truy cập Công cụ này cũng có khả năng chịu tải rất tốt, giúp đảm bảo ứng dụng hoạt động ổn định dưới áp lực cao.

LoadStorm cho phép giả lập hàng trăm nghìn đến hàng triệu người dùng để xác định các điểm dừng (breaking point) trong ứng dụng Các kịch bản kiểm thử có thể được tùy chỉnh bởi các kiểm thử viên, giúp nâng cao hiệu quả kiểm tra hiệu suất.

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

Burp Suite là một công cụ mạnh mẽ với nhiều tính năng tích hợp, trong đó hai công cụ chính trong phiên bản miễn phí là Spider và Intruder Spider giúp thu thập thông tin từ các trang của ứng dụng, trong khi Intruder thực hiện các cuộc tấn công tự động trên ứng dụng web Ngoài ra, Burp còn cung cấp Burp Scanner, một công cụ bổ sung hữu ích để quét và phát hiện các lỗ hổng bảo mật 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 tích hợp trên trình duyệt Firefox, được thiết kế nhỏ gọn và dễ sử dụng Công cụ này bao gồm các gói XSS-Me và SQL Inject-Me, giúp phát hiện các lỗ hổng bảo mật phổ biến Cross-Site Scripting (XSS) là một lỗ hổng nghiêm trọng trong nhiều ứng dụng Web hiện nay, có thể gây thiệt hại lớn XSS-Me là công cụ chuyên dụng để phát hiện các lỗ hổng XSS, trong khi SQL Inject-Me giúp phát hiện các lỗ hổng SQL.

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 là công cụ kiểm thử tự động đa năng, hỗ trợ kiểm thử cho các ứng dụng Web, desktop và di động chỉ với một tài khoản Việc tích hợp kiểm thử cho cả ba loại ứng dụng này giúp tiết kiệm thời gian và nâng cao hiệu quả trong quá trình phát triển phần mềm.

25 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, cho phép chạy script trên hầu hết các trình duyệt như IE, Chrome, Firefox, Safari và Opera, cùng với các hệ điều hành phổ biến như Windows, Mac và Linux Thường được sử dụng dưới dạng Add-on tích hợp trong trình duyệt Firefox kết hợp với Firebug, Selenium cho phép ghi lại hành động trên Firefox và phát lại trên nhiều trình duyệt khác Là công cụ mã nguồn mở, Selenium có lợi thế lớn với cộng đồng hỗ trợ mạnh mẽ và không yêu cầu phí bản quyền Hơn nữa, công cụ này hỗ trợ nhiều ngôn ngữ lập trình Web và được phát triển bởi nhóm Selenium từ Google, đảm bảo chất lượng và độ tin cậy.

Katalon Studio là một công cụ miễn phí cho cộng đồng kiểm thử phần mềm tự động, tương tự như Selenium Mặc dù Katalon Studio được phát triển dựa trên Selenium và Appium, nhưng nó mang lại nhiều lợi ích vượt trội, giúp người dùng dễ dàng hơn trong việc thực hiện kiểm thử tự động mà không cần phải sử dụng trực tiếp hai công cụ phổ biến này.

KIỂM THỬ ỨNG DỤNG TRÊN NỀN WEB BẰNG CÔNG CỤ KATALON

Giới thiệu về Katalon Studio

Katalon Studio là một bộ công cụ toàn diện để kiểm thử tự động ứng dụng

Công cụ Web và Mobile cung cấp một gói tính năng mạnh mẽ giúp vượt qua những thách thức trong kiểm thử tự động giao diện người dùng web, như cửa sổ bật lên, iFrame và thời gian chờ Giải pháp này không chỉ thân thiện và linh hoạt mà còn hỗ trợ người kiểm tra làm việc hiệu quả hơn, từ đó giúp khởi chạy phần mềm chất lượng cao nhờ vào sự thông minh trong toàn bộ quy trình kiểm thử tự động.

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ẽ

Katalon Studio mang đến khả năng cài đặt nhanh chóng và dễ dàng, giúp người kiểm thử thiết lập môi trường một cách đơn giản Với các mẫu và tập lệnh kiểm thử có sẵn, người dùng có thể nhanh chóng chạy kịch bản kiểm thử đầu tiên của mình, bao gồm kho đối tượng và thư viện từ khóa.

Kết quả nhanh chóng và chất lượng hơn nhờ vào các mẫu dựng sẵn cùng với hướng dẫn chi tiết, giúp người kiểm tra dễ dàng xây dựng và thực hiện các kịch bản kiểm thử tự động Quy trình được thực hiện từng bước một với tốc độ và hiệu quả cao, từ việc thiết lập dự án, tạo kiểm thử, thực hiện, cho đến việc tạo báo cáo và bảo trì.

Chế độ linh hoạt cho phép người dùng sử dụng bản ghi và từ khóa để tạo bài kiểm thử tự động, đồng thời cung cấp một IDE đầy đủ nhằm xây dựng tập lệnh nâng cao.

Dễ sử dụng: Ngay cả những người có kinh nghiệm lập trình tối thiểu cũng có thể dễ dàng khai thác lợi ích của nó, cho thấy tính thân thiện và khả năng tiếp cận của công cụ này.

✓ Ứ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 mạnh mẽ và thân thiện với người dùng, nổi bật với sự đơn giản và tốc độ Nó hỗ trợ các nhóm và cá nhân kiểm thử tự động, giúp giảm thiểu nỗ lực từ việc thiết lập dự án đến thực hiện kiểm thử và giám sát kết quả Mỗi quy trình công việc đều cung cấp nhiều khả năng và tùy chỉnh, giúp dễ dàng bảo trì và mở rộng dự án.

Cấu trúc được xác định trước bao gồm các thành phần như test cases, test suites, test objects và báo cáo, giúp người kiểm tra tiết kiệm thời gian và công sức trong việc xác định và duy trì chúng sau này.

Từ khóa tùy chỉnh mang lại sự linh hoạt trong việc thêm các từ khóa bổ sung, giúp kiểm tra hiệu quả AUT 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 trở nên dễ dàng với chế độ bàn điều khiển, giúp người dùng không phải tốn nhiều công sức Việc tạo dòng lệnh có thể được thực hiện nhanh chóng thông qua 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 về bộ kiểm thử giúp giảm thời gian phân tích kết quả, cho phép xuất dữ liệu sang các định dạng như CSV, PDF, và HTML, đồng thời hỗ trợ lưu trữ để sử dụng sau này.

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:

Katalon Studio cung cấp các mẫu dự án tích hợp với các mẫu dựng sẵn để tổ chức trường hợp kiểm thử, kho lưu trữ đối tượng và từ khóa, giúp người kiểm tra thực hiện quy trình kiểm thử một cách dễ dàng và hiệu quả hơn.

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 được thể hiện qua bảng điều khiển tích hợp CI, cho phép điều chỉnh các tham số khác nhau để thực hiện từ xa Người dùng có thể chạy thử nghiệm trên nhiều trình duyệt và hệ điều hành cục bộ hoặc thông qua các nền tảng như Sauce Labs và BrowserStack.

Xử lý lỗi linh hoạt và thực hiện lại tự động là quy trình quan trọng, bao gồm các quy tắc thời gian chạy nhằm tự động quản 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ào quy trình thông báo của bạn, giúp nâng cao hiệu quả quản lý Đồng thời, nhật ký Selenium và Appium đã được cải tiến với các tính năng phân tích mới, nhằm tối ưu hóa chiến lược tự động hóa của bạn.

Bảo trì đối tượng kiểm thử thông minh giúp 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ó sự thay đổi ở các đối tượng.

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

Katalon Studio đơn giản hóa các phức tạp kỹ thuật bằng cách cung cấp giao diện thân thiện cho người dùng không chuyên, cho phép kéo-thả, chọn từ khóa và thử nghiệm các đối tượng để xây dựng các bước thử nghiệm Đồng thời, nó cũng hỗ trợ người dùng kỹ thuật với chế độ kịch bản, cung cấp 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, giúp họ dễ dàng hơn trong việc mã hóa.

Với Selenium, người dùng cần thực hiện các bước hướng dẫn kỹ thuật để tích hợp API vào môi trường phát triển tích hợp (IDE) cùng với ngôn ngữ lập trình mà họ ưa thích.

Katalon Studio là một gói phần mềm toàn diện, bao gồm tất cả các thành phần cần thiết như Java, Android SDK, trình điều khiển Web và các yêu cầu phụ thuộc Người dùng chỉ cần tải về và cài đặt để bắt đầu sử dụng.

Tính năng Selenium QTP/UFT Katalon Studio

Nền tảng phát triển kiểm thử

Cross-platform Window Cross-platform

Application under test Web apps

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

Web, Mobile, API/ Web services

Java, C#, Perl, Python, JavaScript, Ruby,

Kĩ năng nâng cao cần thiết để tích hợp cho các công cụ khác nhau

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

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

Dễ cài đặt và sử dụng

Yêu cầu cài đặt và tích hợp các công cụ khác nhau

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

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

Thời gian tạo kịch bản Chậm Nhanh

Hỗ trợ Katalon Recorder Lưu trữ và bảo trì đối tượng

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

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

Tính năng Selenium QTP/UFT Katalon Studio đối tượng thông minh dạng lại đối tượng Kiểm thử dựa trên hình ảnh

Yêu cầu cài đặt thư viện bổ sung

Hỗ trợ tích hợp, nhận dạng đối tượng dựa trên hình ảnh

Kiểm thử phân tích Không Không Katalon

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

Phí Miễn phí Phí giấy phép và bảo trì Miễn phí

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 này tập trung vào các tính năng phổ biến của công cụ kiểm thử tự động, trong khi bảng tiếp theo sẽ đưa ra một cái nhìn khác bằng cách phân tích và so sánh những điểm mạnh cũng như hạn chế chính của các công cụ này.

Công cụ Điểm mạnh Hạn chế

- Không có phí cấp phép và bảo trì cần thiết (dịch vụ hỗ trợ chuyên dụng có trả phí có sẵn nếu cần)

- Tích hợp các framework và tính năng cần thiết để tạo và thực hiện các trường hợp kiểm thử nhanh

- Được xây dựng dựa trên Selenium nhưng loại bỏ nhu cầu về các kĩ năng lập trình nâng cao cần thiết cho

- Giải pháp mới nổi với một cộng đồng phát triển nhanh chóng

- Bộ tính năng vẫn đang phát triển

- Thiếu các lựa chọn cho các ngôn ngữ kịch bản: chỉ hỗ trợ Java/ Groovy

Công cụ Điểm mạnh Hạn chế

Selenium - Mã nguồn mở, không có phí cấp phép và bảo trì

- Cộng đồng người dùng và phát triển lớn và tích cực để kịp với các công nghệ phần mềm

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

- Các nhóm kiểm thử cần phải có kĩ năng và kinh nghiệm lập trình tốt để thiết lập và tích hợp với

Selenium với các công cụ và framework khác

- Hỗ trợ chậm từ cộng đồng

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ử

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

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

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ụ kiểm thử tự động nào phù hợp cho tất cả người dùng, vì vậy việc đánh giá và thử nghiệm các công cụ khác nhau là rất quan trọng để tìm ra giải pháp tối ưu cho nhu cầu cụ thể Sự phát triển liên tục của các ngôn ngữ lập trình và công nghệ phần mềm cũng ảnh hưởng đến các công cụ kiểm thử tự động, khiến chi phí trở thành yếu tố quyết định trong việc lựa chọn Các nhà cung cấp thương mại thường áp dụng phí nâng cấp cho công cụ, điều này có thể trở thành gánh nặng nếu phần mềm của bạn sử dụng các công nghệ mới và thường xuyên thay đổi.

Các công cụ mã nguồn mở và phi thương mại không yêu cầu phí bổ sung nhưng cần nỗ lực và chuyên môn để tích hợp các nâng cấp mới Việc tìm kiếm sự hỗ trợ và chuyên môn để kết hợp các công cụ và framework khác nhau vào giải pháp mã nguồn mở gặp nhiều khó khăn Tuy nhiên, các công cụ mới nổi như Katalon, tích hợp với các framework mã nguồn mở, mang đến giải pháp thay thế khả thi cho cả 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

Cài đặt và cấu hình

Bước 1: Mở trình duyệt và download Katalon Studio tại https://www.katalon.com/

Có 4 phiên bản có thể download: Windows 64, Windows 32, macOS, Linux

64 Tùy vào hệ điều hành của máy bạn cài mà có thể tải đúng phiên bản cho hệ điều hành Trước khi download cần tạo một tài khoản trên trang chủ để có thể sử dụng dịch vụ

Hình 3 1 Chọn phiên bản cài đặt Katalon Studio

Bước 2: Kiểm tra xem trình duyệt đã được them tiện ích Katalon Studio hay chưa, nếu chưa có thì tiên hành them addon Katalon Studio vào trình duyệt

Hình 3 2 Thêm addon Katalon Studio vào trình duyệt

Các yêu cầu hệ thống

Hệ điều hành Windows 7, Windows 8, Windows 10, macOS 10.11+, Linux

(Ubuntu based) CPU Bộ xử lí 1 Ghz hoặc nhanh hơn 32 bit (x86) hoặc 64 bit (x64)

Bộ nhớ Tối thiểu 1 GB RAM (32 bit) hoặc 4 GB RAM (64 bit)

Để đảm bảo hiệu suất tối ưu, khuyến nghị sử dụng 4 GB RAM cho hệ điều hành 32 bit và 8 GB RAM cho hệ điều hành 64 bit Ngoài ra, cần có ít nhất 1 GB dung lượng ổ cứng khả dụng, và dung lượng ổ cứng cần thiết có thể tăng lên tùy thuộc vào mã nguồn của dự án cũng như các báo cáo được tạo ra trong quá trình thực hiện.

Bảng 3 1 Các yêu cầu hệ thống khi cài đặt Katalon Studio

Explorer 9, 10, 11 N/A Cấu hình IE bắt buộc: cấu hình Internet Explorer

Tham khảo trang này để biết trạng thái hiện tại của Edge WebDriver: https://docs.microsoft.com/en- us/microsoft-edge/webdriver

Firefox 56+ Để sử dụng Firefox 57 với Katalon Studio, vui lòng sử dụng Katalon Studio v5.1 + Google

Bảng 3 2 Danh sách trình duyệt hỗ trợ Katalon Studio

1.8 YES NO YES iOS Không có sẵn

Bảng 3 3 Danh sách mobile hỗ trợ Katalon Studio

Cấu hình Katalon Studio trên trình duyệt Chrome

Trong bài viết này, nhóm tác giả sẽ hướng dẫn cách cấu hình Katalon Studio với trình duyệt Chrome, do Chrome là trình duyệt được sử dụng phổ biến nhất hiện nay.

Để chụp các đối tượng trên trình duyệt web và thực hiện ghi - phát lại, bạn cần cài đặt tiện ích mở rộng Katalon Auto Recorder cho Chrome.

(Record & Playback) là: Katalon Automation Recorder.

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

Spy Mobile cho phép khởi tạo quá trình kiểm thử thủ công trên các nền tảng Mobile, bao gồm nhiều lựa chọn như iOS, Android và Kobiton Người dùng có thể ghi lại các thao tác trong ca kiểm thử trên Web, cũng như trên Mobile Ngoài ra, hệ thống hỗ trợ khởi động ca kiểm thử đang thực thi một cách hiệu quả.

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ử bao gồm một tập hợp các test case, cho phép người dùng dễ dàng quản lý và theo dõi Trình log viewer hỗ trợ việc xem xét các bản ghi kiểm thử Người dùng có thể thêm hoặc xóa một ca kiểm thử theo nhu cầu, cũng như thêm thuộc tính cho object để nâng cao tính năng Bên cạnh đó, danh sách plugin cung cấp các công cụ bổ sung hữu ích cho quá trình kiểm thử.

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

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ực hiện thử nghiệm với một trang web, bạn chỉ cần nhấp vào liên kết của trang web đó và dán vào ô URL Ví dụ, trong hình minh họa, trang web được xây dựng trên môi trường local Sau đó, bạn chỉ cần nhấn nút "Start" để bắt đầu.

39 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:

40 Ở 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ị các textbox để người dùng nhập email và mật khẩu Chúng ta sẽ sử dụng câu lệnh setText để gán giá trị cho các đối tượng này.

Để đăng nhập vào hệ thống, hãy nhấn vào nút "Đăng nhập" Sau khi thực hiện bước này, tôi đã sử dụng câu lệnh verifyMatch để kiểm tra tính chính xác của trang hiển thị sau khi đăng nhập.

- 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

42 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

Người dùng có thể xuất thủ công báo cáo bộ sưu tập Test Suite sang các định dạng HTML, CSV, JUnit và PDF Để thực hiện, chỉ cần nhấp chuột phải vào báo cáo và chọn tùy chọn "Xuất dưới dạng".

3.3.3.2 Text Encoder for Katalon 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 up

Trê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ư:

Việc kiểm tra tự động hóa trở nên dễ dàng hơn khi sử dụng tệp Excel (.xls và xlsx), cho phép đọc, viết và so sánh các tệp Excel một cách hiệu quả.

• 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

Tích hợp Jira cho phép đồng bộ hóa các trường hợp kiểm tra và nội dung Gherkin từ các vấn đề của Jira Bằng cách sử dụng Ngôn ngữ truy vấn Jira (JQL) trong Katalon, người dùng có thể tự động tạo các trường hợp thử nghiệm một cách hiệu quả.

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

Bài toán thực tế

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 đó

Người quản trị người dùng có quyền truy cập vào trang quản trị, cho phép họ xem danh sách người dùng, chỉnh sửa thông tin cá nhân, cũng như xóa, sửa và tìm kiếm bất kỳ người dùng nào trong danh sách có sẵn.

Trong đồ án này, tôi sẽ trình bày quá trình kiểm thử chức năng đăng ký và đăng nhập tài khoản, cũng như chỉnh sửa tài khoản admin trên website “Kata” được xây dựng trên localhost Quá trình kiểm thử sẽ được thực hiện như một kiểm thử viên thực thụ, bao gồm việc tạo ca kiểm thử và tiến hành kiểm thử bằng công cụ tự động Katalon Studio 6.3.1, cài đặt trên trình duyệt Chrome phiên bản 54.0.1 64-bit Đặc biệt, tôi sẽ sử dụng plugin Basic Report để tạo báo cáo dưới định dạ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

- 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 với quyền quản trị viên (admin) có khả năng quản lý danh sách người dùng thông thường, bao gồm các chức năng như xem, xóa, sửa đổi và tìm kiếm Đồ án sẽ áp dụng kỹ thuật kiểm thử đoán lỗi nhằm kiểm tra các trường hợp liên quan.

❖ 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 thiếu tên đăng ký

Type Test Title Description Pre-

GUI Chức năng đăng ký thiếu thông tin

Kiểm tra chức năng đăng ký khi người dùng nhập thiếu thông tin (tên đăng nhập)

Mở sẵn trình duyệt Truy cập trang đăng ký tài khoản trên trình duyệt

1 Truy cập trang sign up

Truy cập website thành công

Truy cập website thành công pass

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

Tên tài khoản (sheet2/username)

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

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

Create test cases using Katalon Studio with user registration data imported from an Excel file named "sign_up_account," executed within the Sign Up test suite.

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 1: Thêm data tại mục data files

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 excel

Sau 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ả thử nghiệm với Katalon Studio cho thấy hai trường hợp đều thành công Điều này xảy ra do người kiểm thử đã thiết kế test case để kiểm tra lỗi khi người dùng không nhập mật khẩu, và lập trình viên cũng đã xử lý lỗi này trong form Nếu lập trình viên không thông báo lỗi khi mật khẩu không được nhập, kết quả sẽ là lỗi.

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

Type Test Title Description Pre-

GUI Chức năng đăng nhập sai thông tin

Kiểm tra chức năng đăng nhập khi người dùng nhập sai thông tin

Truy cập trang đăng nhập tài khoản

1 Truy cập trang sign up

Truy cập website thành công

Truy cập website thành công pass

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

(sheet1/username) Hiển thị username

3.Nhập tên mật khẩu hợp lệ ký tự ngẫu nhiên (sheet1/password)

Nhập thành công pass 1 fail 1 pass 1 fail

Button Sign In Chuyển về trang Home

Chuyển về trang Home pass

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

Create test cases in Katalon Studio by importing user registration data from an Excel file named "User " within the Sign In User test suite.

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 In

Sau 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

Hình 3 24 Thực thi ca thử nghiệm Sign In

Kết quả thử nghiệm với Katalon Studio cho thấy có 2 trường hợp: 1 trường hợp thành công và 1 trường hợp thất bại Công cụ phát hiện lỗi khi người dùng nhập sai thông tin đăng nhập (mật khẩu), dẫn đến kết quả không khớp với mong đợi trong test case Đồng thời, cũng đã kiểm tra chức năng đăng nhập thành công.

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

Trong trường hợp giao diện người dùng không đúng với mô tả mong đợi, việc kiểm thử là cần thiết Điều này có thể xảy ra khi website bị tấn công, dẫn đến sự thay đổi giao diện ban đầu, hoặc do lỗ hổng bảo mật cho phép người dùng can thiệp vào giao diện Sau khi thực hiện kiểm thử, có thể phát hiện ra rằng một phần giao diện hoặc một số phần tử không đúng với yêu cầu ban đầu.

Nguyên nhân dẫn đến lỗ hổng bảo mật có thể xuất phát từ việc các form đăng ký và đăng nhập không lọc đúng input đầu vào, hoặc do lập trình viên không ngăn chặn được tất cả các trường hợp mà kẻ tấn công có thể khai thác Bài viết không đề cập đến cách thay đổi giao diện của website do lỗ hổng, mà tập trung vào việc kiểm tra lại các element của website đã bị thay đổi thông qua công cụ Katalon Studio.

Type Test Title Description Pre-

GUI Kiểm tra lỗi giao diện

Kiểm tra các element trên trang Home

Truy cập trang đăng ký tài khoản trên trình duyệt

Truy cập website thành công

Truy cập website thành công

Truy cập website thành công pass

2 Kiểm tra menu Sign in/ Sign up Menu hiển thị

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

3.1 Kiểm tra thẻ text trong slide

3.2 Kiểm tra thẻ H1 trong slide

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

4.1 Kiểm tra block trong slide

Hình ảnh và text 5 block hình ảnh

5 Kiểm tra background Video background Video background

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ử

Trong trường hợp giao diện ban đầu của Website bị thay đổi, chẳng hạn như từ "KATALON STUDIO" thành "WEBSITE WAS CHANGED" và tiêu đề "Home" bị đổi thành "Hacked", việc sử dụng công cụ để bắt lỗi là cần thiết.

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ả cho thấy rằng việc thay đổi đoạn văn bản không đúng với mục đích ban đầu đã dẫn đến việc công cụ Katalon Studio phát hiện lỗi ngay tại phần văn bản "Website was changed" bị thay đổi.

Kết luận: Công cụ này không chỉ được sử dụng để kiểm thử chức năng của ứng dụng web mà còn có khả năng thực hiện các cuộc tấn công vào website.

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

Type Test Title Description Pre-Condition

Chức năng đăng nhập và sửa user thành công cho account Admin

Kiểm tra chức năng đăng nhập khi người dùng nhập các thông tin hợp lệ, hoàn tất việc đăng nhập và sửa user thành công

Mở sẵn trình duyệt Truy cập trang đăng ký tài khoản trên trình duyệt

Truy cập website thành công

Truy cập website thành công pass

2 Nhập tên tài khoản hợp lệ admin Hiển thị username

3.Nhập tên mật khẩu hợp lệ admin Nhập thành công

Button Sign In Chuyển sang trang Home

Chuyển sang trang Home pass

Button Profile Chuyển sang trang Admin

Chuyển sang trang Admin pass

Icon Edit User Chuyển sang trang Edit.php

Chuyển sang trang Edit.php pass

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

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

59 chuyển sang trang Admin 6.2 Click nút edit user

Icon Edit User Chuyển sang trang Edit.php

Chuyển sang trang Edit.php pass

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

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

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

Update Success, click here to watch the change

Update Success, click here to watch the change pass

Button Back Chuyển sang trang Admin

Chuyển sang trang Admin pass

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

Hình 3 34 Báo cáo ca được lưu lại trong Basic Report

- Đã 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

Phần mềm là một lĩnh vực quan trọng trong công nghệ thông tin, bao gồm các khía cạnh như lỗi phần mềm, đặc tả yêu cầu, chất lượng và độ tin cậy Việc hiểu rõ về lỗi phần mềm giúp cải thiện quy trình phát triển, trong khi đặc tả yêu cầu chính xác là nền tảng cho sản phẩm thành công Chất lượng phần mềm không chỉ đảm bảo tính năng hoạt động mà còn tăng cường độ tin cậy, từ đó nâng cao sự hài lòng của người dùng Cuối cùng, kiểm thử phần mềm đóng vai trò thiết yếu trong việc phát hiện và khắc phục lỗi, đảm bảo rằng sản phẩm cuối cùng đáp ứng được các tiêu chuẩn cao nhất.

- 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ế :

Mặc dù đã nỗ lực tìm kiếm tài liệu và báo cáo nước ngoài bằng tiếng Anh, việc diễn đạt lại bằng tiếng Việt vẫn gặp khó khăn do chưa truyền tải chính xác các thuật ngữ chuyên ngành.

Trong báo cáo này, chúng tôi chưa thể trình bày đầy đủ các tính năng của Katalon Studio, đặc biệt là nghiên cứu các kỹ thuật nâng cao như kiểm thử API.

- Nguồn tài liệu bằng tiếng Việt không nhiều, đặc biệt là các tài liệu chuyên sâu

- Chỉ áp dụng kiểm thử được chức năng đăng ký, đăng nhập tài khoản của người dùng

- Cần nghiên cứu sâu hơn về Katalon Studio trong lĩnh vực an toàn thông tin

Ngày đăng: 28/12/2021, 10:19

HÌNH ẢNH LIÊN QUAN

Hình 1. 2 Minh họa mẫu ca kiểm thử đơn giản - HVKTMM ATTT xay dng ng dng web kim t
Hình 1. 2 Minh họa mẫu ca kiểm thử đơn giản (Trang 19)
Bảng 1. 1 So sánh ưu nhược của kiểm thử thủ công và kiểm thử tự động - HVKTMM ATTT xay dng ng dng web kim t
Bảng 1. 1 So sánh ưu nhược của kiểm thử thủ công và kiểm thử tự động (Trang 22)
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 - HVKTMM ATTT xay dng ng dng web kim t
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 (Trang 23)
Hình 1. 6 So sánh chi phí kiểm thử thủ công và kiểm thử tự động - HVKTMM ATTT xay dng ng dng web kim t
Hình 1. 6 So sánh chi phí kiểm thử thủ công và kiểm thử tự động (Trang 24)
Bảng 2. 1 So sánh tính năng Katalon Studio với công cụ khác - HVKTMM ATTT xay dng ng dng web kim t
Bảng 2. 1 So sánh tính năng Katalon Studio với công cụ khác (Trang 37)
Bảng 2. 2 So sánh ưu nhược điểm của Katalon Studio với một số công cụ - HVKTMM ATTT xay dng ng dng web kim t
Bảng 2. 2 So sánh ưu nhược điểm của Katalon Studio với một số công cụ (Trang 38)
Bảng 3. 1 Các yêu cầu hệ thống khi cài đặt Katalon Studio - HVKTMM ATTT xay dng ng dng web kim t
Bảng 3. 1 Các yêu cầu hệ thống khi cài đặt Katalon Studio (Trang 41)
Bảng 3. 2 Danh sách trình duyệt hỗ trợ Katalon Studio - HVKTMM ATTT xay dng ng dng web kim t
Bảng 3. 2 Danh sách trình duyệt hỗ trợ Katalon Studio (Trang 42)
Hình 3. 3 Giải thích một số chức năng trong Katalon Studio - HVKTMM ATTT xay dng ng dng web kim t
Hình 3. 3 Giải thích một số chức năng trong Katalon Studio (Trang 43)
Bảng 3. 4 Một số chức năng trong Katalon Studio - HVKTMM ATTT xay dng ng dng web kim t
Bảng 3. 4 Một số chức năng trong Katalon Studio (Trang 44)
Hình 3. 4 Giao diện khởi chạy Katalon Studio - HVKTMM ATTT xay dng ng dng web kim t
Hình 3. 4 Giao diện khởi chạy Katalon Studio (Trang 45)
Hình 3. 6 Sử dụng phím tắt để bắt đối tượng - HVKTMM ATTT xay dng ng dng web kim t
Hình 3. 6 Sử dụng phím tắt để bắt đối tượng (Trang 46)
Hình 3. 12 Text Encoder - HVKTMM ATTT xay dng ng dng web kim t
Hình 3. 12 Text Encoder (Trang 50)
Hình 3. 14 Text Encoder Realtime mode - HVKTMM ATTT xay dng ng dng web kim t
Hình 3. 14 Text Encoder Realtime mode (Trang 51)
Hình 3. 15 Text Encoder Normal mode - HVKTMM ATTT xay dng ng dng web kim t
Hình 3. 15 Text Encoder Normal mode (Trang 51)

TỪ KHÓA LIÊN QUAN

w