1. Trang chủ
  2. » Luận Văn - Báo Cáo

SỬ DỤNG SELENIUM ĐỂ KIỂM THỬ TRANG WEB LAZADA

35 45 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 đề Sử Dụng Selenium Để Kiểm Thử Trang Web Lazada
Tác giả Hoàng Đức Đạt, Quách Hoài Nam, Phạm Đăng Đức, Nguyễn Văn Tùng, Nguyễn Huy Hoàng
Người hướng dẫn GVHD: Nguyễn Ngọc Quang
Trường học Trường Đại Học Công Nghiệp Hà Nội
Chuyên ngành Kiểm Thử Phần Mềm
Thể loại báo cáo bài tập lớn
Năm xuất bản 2023
Thành phố Hà Nội
Định dạng
Số trang 35
Dung lượng 8,33 MB

Cấu trúc

  • PHẦN 1 MỞ ĐẦU (5)
  • PHẦN 2 KIẾN THỨC NỀN TẢNG (6)
    • 2.1 QUY TRINH KIỂM THỬ PHẦN MỀM (0)
    • 2.2 KIỂM THỬ HỘP TRẮNG (9)
    • 2.3 KIỂM THỬ HỘP ĐEN (11)
  • PHẦN 3 KẾT QUẢ NGHIÊN CỨU (13)
    • 3.1 TỔNG QUAN (13)
      • 3.1.1 Khái niệm (13)
      • 3.1.2 Các cấp độ kiểm thử phần mềm (13)
      • 3.1.3 Kiểm thử đơn vị (Unit Test) (13)
      • 3.1.4 Kiểm thử tích hợp (Integration Test) (14)
      • 3.1.5 Kiểm thử hệ thống (System Test) (14)
    • 3.2 TÌM HIỂU CÔNG CỤ KIỂM THỬ PHẦN NỀM (16)
      • 3.2.1 Giới thiệu công cụ (16)
      • 3.2.2 Đặc điểm (16)
      • 3.2.3 Cài đặt và sử dụng công cụ <Tên công cụ> (16)
    • 3.3 Giới thiệu phần mềm <LAZADA> (17)
      • 3.3.1 Giới thiệu (17)
      • 3.3.2 Chức năng phần mềm (18)
    • 3.4 Kiểm thử phần mềm <Tên phần mềm kiểm thử> (19)
      • 3.4.1 Lập kế hoạch kiểm thử (test plan) (19)
      • 3.4.2 Phân tích thiết kế kiểm thử (20)
      • 3.4.3 Thực hiện kiểm thử (25)
  • PHẦN 4 KIẾN THỨC LĨNH HỘI VÀ BÀI HỌC KINH NGHIỆM (34)
  • Tài liệu tham khảo (35)

Nội dung

Kiến thức nền tảng: Selenium: Kiến thức cơ bản về Selenium, bao gồm cài đặt, cấu hình và sử dụng các thành phần của Selenium như Selenium WebDriver, Selenium IDE và Selenium Grid. Kiểm thử phần mềm: Hiểu về các khái niệm cơ bản về kiểm thử phần mềm, quy trình kiểm thử và các phương pháp kiểm thử phổ biến. Ý tưởng và chủ đề nghiên cứu: Ý tưởng: Sử dụng Selenium để thực hiện kiểm thử tự động trên trang web Lazada, một trang web bán hàng trực tuyến phổ biến. Chủ đề nghiên cứu: Nghiên cứu về việc áp dụng Selenium để tự động hóa quá trình kiểm thử trang web Lazada, bao gồm việc xác định và thực hiện các kịch bản kiểm thử, xác thực chức năng, kiểm tra giao diện người dùng và đảm bảo tính ổn định và chất lượng của trang web. Nội dung học tập: Cài đặt và cấu hình Selenium: Học cách cài đặt Selenium và cấu hình môi trường phù hợp để làm việc với trang web Lazada. Ngôn ngữ lập trình: Nắm vững một ngôn ngữ lập trình phổ biến như Java, Python hoặc C để viết các kịch bản kiểm thử sử dụng Selenium. Xác định kịch bản kiểm thử: Học cách xác định các kịch bản kiểm thử cho trang web Lazada, bao gồm các tác vụ như đăng nhập, tìm kiếm sản phẩm, thêm vào giỏ hàng và thanh toán. Tương tác với các yếu tố trên trang web: Hiểu cách sử dụng Selenium để tương tác với các yếu tố trên trang web Lazada như nút, biểu mẫu, đường liên kết, v.v. Xác thực chức năng: Học cách xác thực chức năng của trang web Lazada bằng cách kiểm tra kết quả trả về từ các hoạt động kiểm thử. Kiểm thử giao diện người dùng: Thực hiện kiểm thử giao diện người dùng trên trang web Lazada để đảm bảo trải nghiệm người dùng tốt. Kiến thức và kỹ năng cần có: Kiến thức về Selenium và kiểm thử phần mềm cơ bản. Kiến thức cơ bản về ngôn ngữ lập trình để viết các kịch bản kiểm thử. Hiểu biết về trang web Lazada và cách hoạt động của nó. Kiến thức và kỹ năng cần học thêm: Các kỹ thuật kiểm thử phần mềm phức tạp hơn, bao gồm kiểm thử tích hợp và kiểm thử hiệu suất. Sử dụng các công cụ kiểm thử bổ sung và framework như TestNG, JUnit hoặc NUnit để mở rộng khả năng kiểm thử. Cải thiện kỹ năng lập trình để viết mã kiểm thử mạnh mẽ và linh hoạt hơn. Hiểu biết sâu hơn về các nguyên tắc kiểm thử phần mềm và các phương pháp kiểm thử hiệu quả. Mục tiêuChuẩn đầu ra của học phần: Hiểu và áp dụng Selenium để thực hiện kiểm thử tự động trên trang web Lazada. Xây dựng các kịch bản kiểm thử chức năng và giao diện người dùng cho trang web Lazada. Đảm bảo tính ổn định và chất lượng của trang web Lazada thông qua việc kiểm thử tự động sử dụng Selenium. Nắm vững kiến thức và kỹ năng cần thiết để tiếp cận các dự án kiểm thử phần mềm sử dụng Selenium.

KIẾN THỨC NỀN TẢNG

KIỂM THỬ HỘP TRẮNG

Kiểm thử hộp trắng (white-box testing) là phương pháp kiểm thử phần mềm, trong đó người kiểm thử nắm rõ cấu trúc nội bộ, mã nguồn và cơ chế hoạt động của chương trình.

Kiểm thử hộp trắng chú trọng vào việc đánh giá các yếu tố nội bộ của chương trình, bao gồm kiểm tra luồng điều khiển, điều kiện, nhánh và cấu trúc dữ liệu trong mã nguồn.

Người kiểm thử dựa vào thông tin cấu trúc mã nguồn để xây dựng các ca kiểm thử, tập trung vào việc thực hiện các lệnh, điều kiện và nhánh cụ thể trong chương trình.

Hình 2.2 Kiểm thử hộp trắng

Dưới đây là khái niệm và ưu nhược điểm của kiểm thử hộp trắng:

Ưu điểm của kiểm thử hộp trắng:

1 Độ bao phủ cao: Kiểm thử hộp trắng có thể đạt được độ bao phủ cao hơn so với các phương pháp kiểm thử khác như kiểm thử hộp đen Vì người kiểm thử có thông tin chi tiết về mã nguồn, họ có thể thiết kế các ca kiểm thử để thực hiện các luồng điều khiển, điều kiện và nhánh cụ thể, từ đó đảm bảo rằng tất cả các đường đi trong chương trình được thực thi ít nhất một lần.

2 Phát hiện lỗi logic: Kiểm thử hộp trắng cho phép người kiểm thử xem xét logic của chương trình từ bên trong, từ đó phát hiện các lỗi logic hoặc lỗ hổng Bằng cách kiểm tra các điều kiện và nhánh, người kiểm thử có thể xác định được những vấn đề liên quan đến xử lý sai lỗi, vòng lặp vô hạn, điều kiện không đúng, và nhiều lỗi logic khác.

3 Tối ưu hóa mã nguồn: Khi người kiểm thử thực hiện kiểm thử hộp trắng, họ có thể phát hiện và gợi ý các cải tiến hoặc tối ưu hóa trong mã nguồn Bằng cách xem xét cấu trúc nội bộ của chương trình, người kiểm thử có thể tìm ra các phần mã không cần thiết, lặp lại, hoặc có thể được tối ưu hóa, từ đó giúp cải

Ưu điểm của kiểm thử hộp đen:

1 Không đảm bảo tính hoàn thiện: Kiểm thử hộp trắng không thể đảm bảo tính hoàn thiện của chương trình Mặc dù nó có thể giúp xác định các lỗi và vấn đề trong mã nguồn, nhưng nó không thể đảm bảo rằng không có lỗi hoặc vấn đề nào tồn tại trong phần mềm Kiểm thử hộp trắng

2 Không đảm bảo tính hoàn thiện: Kiểm thử hộp trắng không thể đảm bảo tính hoàn thiện của chương trình Mặc dù nó có thể giúp xác định các lỗi và vấn đề trong mã nguồn, nhưng nó không thể đảm bảo rằng không có lỗi hoặc vấn đề nào tồn tại trong phần mềm Kiểm thử hộp trắng

3 Không đảm bảo tính hoàn thiện: Kiểm thử hộp trắng không thể đảm bảo tính hoàn thiện của chương trình Mặc dù nó có thể giúp xác định các lỗi và vấn đề trong mã nguồn, nhưng nó không thể đảm bảo rằng không có lỗi hoặc vấn đề nào tồn tại trong phần mềm Kiểm thử hộp trắng

Dưới đây là hai phương pháp phổ biến được sử dụng trong kiểm thử hộp trắng:

 Unit Testing (Kiểm thử đơn vị)

Trong kiểm thử đơn vị, các thành phần nhỏ nhất của chương trình như hàm, phương thức hoặc lớp được kiểm tra một cách độc lập nhằm đảm bảo tính chính xác và hiệu suất hoạt động Người kiểm thử cần có kiến thức sâu về cấu trúc nội bộ, mã nguồn và logic của các đơn vị đang được kiểm thử.

Unit Testing là quá trình kiểm tra các chức năng và tính năng của từng đơn vị trong chương trình, bao gồm việc xác định giá trị đầu vào và đầu ra mong đợi, xử lý ngoại lệ, và đảm bảo rằng các yêu cầu cũng như mục tiêu của đơn vị được thực hiện đầy đủ.

Mục đích chính của Unit Testing là đảm bảo tính đúng đắn của từng đơn vị trong chương trình Qua việc kiểm tra từng đơn vị một cách cô đọng, Unit Testing giúp phát hiện và sửa chữa lỗi, cũng như các vấn đề liên quan đến xử lý dữ liệu, tính logic và độ chính xác của các đơn vị.

Unit Testing hỗ trợ việc refactor và bảo trì mã nguồn bằng cách đảm bảo rằng các thay đổi không gây ra lỗi trong các đơn vị đã được kiểm thử Khi thực hiện các hoạt động này, Unit Testing giúp duy trì tính ổn định và chức năng của mã nguồn, đồng thời mang lại sự tự tin cho lập trình viên khi thực hiện các thay đổi.

Tăng cường tính tin cậy và tự động hóa thông qua Unit Testing là yếu tố thiết yếu trong việc xây dựng và duy trì bộ kiểm thử tự động Việc thiết kế và thực hiện các bộ kiểm thử đơn vị giúp người kiểm thử tự động hóa quy trình kiểm thử, từ đó nâng cao tính ổn định và độ tin cậy của phần mềm.

 Kiểm thử đường đi (Path testing):

Phương pháp kiểm thử đường đi tập trung vào việc kiểm tra tất cả các đường đi có thể trong mã nguồn bằng cách sử dụng các kỹ thuật như kiểm thử điều kiện, kiểm thử nhánh và kiểm thử luồng điều khiển Người kiểm thử thiết kế ca kiểm thử để đảm bảo mọi đường đi trong chương trình được thực thi ít nhất một lần, từ đó giúp đạt được độ bao phủ cao và phát hiện lỗi cũng như lỗ hổng trong logic của chương trình.

KIỂM THỬ HỘP ĐEN

Kỹ thuật kiểm thử hộp đen, hay còn gọi là kiểm thử vào/ra, tập trung vào việc đánh giá phần mềm mà không cần quan tâm đến cấu trúc bên trong Người kiểm thử chỉ chú ý đến dữ liệu đầu vào và đầu ra sau khi được xử lý, với dữ liệu kiểm thử được lấy từ các đặc tả.

Kiểm thử hộp đen nhằm phát hiện các lỗi liên quan đến giao diện, chức năng thiếu hoặc không chính xác, lỗi cấu trúc dữ liệu khi truy cập cơ sở dữ liệu bên ngoài, lỗi thực thi, cũng như các lỗi khởi tạo hoặc kết thúc.

Hình2.3: Kiểm thử hộp đen

Kiểm thử hộp đen có ưu và nhược điểm như sau:

Kiểm thử hộp đen mang lại nhiều ưu điểm, nổi bật nhất là việc không phụ thuộc vào mã lệnh, giúp người kiểm thử phát hiện những lỗi mà lập trình viên có thể bỏ sót.

 Nhược điểm của kiểm thử hộp đen:

Kiểm thử hộp đen giống như việc đi trong bóng tối mà không có đèn, vì kiểm thử viên không biết cấu trúc thực sự của phần mềm được kiểm tra Điều này dẫn đến việc kiểm thử viên có thể viết rất nhiều test case cho một chức năng, trong khi thực tế chỉ cần một test case duy nhất để kiểm tra, hoặc thậm chí một số phần của chương trình có thể không được kiểm tra hoàn toàn.

Kiểm thử hộp đen mang lại lợi ích của việc đánh giá khách quan, nhưng cũng tồn tại nhược điểm của việc thăm dò mù Hai phương pháp phổ biến trong kiểm thử hộp đen bao gồm việc kiểm tra chức năng và kiểm tra hiệu suất.

 Kiểm thử hành vi ( behavior-driven testing):

Phương pháp này chú trọng vào việc kiểm tra hành vi và chức năng của chương trình thông qua đầu vào và đầu ra Người kiểm thử tạo ra bộ dữ liệu thử nghiệm phản ánh các tình huống khác nhau mà chương trình có thể gặp Sau đó, họ thực hiện chạy chương trình với các bộ dữ liệu này và so sánh kết quả đầu ra với kết quả mong đợi.

Kiểm thử hành vi là quá trình xác nhận tính đúng đắn của chức năng của chương trình, thông qua việc xác định các hành vi và kịch bản kiểm thử dựa trên yêu cầu của người dùng Phương pháp này đảm bảo rằng chương trình hoạt động chính xác và thực hiện các chức năng đúng theo yêu cầu và mong đợi của người dùng.

Kiểm thử hành vi đóng vai trò quan trọng trong việc xác định và phát hiện lỗi cũng như các vấn đề tiềm ẩn trong chương trình Thông qua việc thực hiện các kịch bản kiểm thử, phương pháp này giúp phát hiện các lỗi, lỗ hổng và hành vi không mong muốn, từ đó hỗ trợ việc báo cáo và khắc phục các vấn đề, nâng cao tính ổn định và độ tin cậy của chương trình Bên cạnh đó, kiểm thử hành vi cũng chú trọng đến việc đảm bảo sự tương tác và tích hợp chính xác giữa các thành phần của chương trình, giúp các thành phần hoạt động đúng cách và tương tác hiệu quả.

 Kiểm thử độ phủ:(code coverage testing)

Phương pháp kiểm thử độ phủ tập trung vào việc đo lường mức độ thực thi của mã nguồn trong chương trình Độ phủ kiểm tra xem tất cả các phần của mã đã được thực hiện ít nhất một lần hay chưa Bằng cách thử nghiệm các ca kiểm thử khác nhau, phương pháp này đảm bảo rằng mọi dòng mã và nhánh trong chương trình đều được thực thi Nếu có phần mã không được thực hiện, điều này có thể chỉ ra rằng chương trình có thể chứa lỗi hoặc chưa được kiểm tra đầy đủ.

Kiểm thử hành vi có mục đích đảm bảo tính đúng đắn của chương trình bằng cách xác định xem chương trình có hoạt động chính xác theo yêu cầu hay không Qua việc tạo ra các bộ dữ liệu thử nghiệm đại diện cho các tình huống khác nhau, kiểm thử hành vi kiểm tra tính đúng đắn của đầu vào và đầu ra Mục tiêu chính là phát hiện và báo cáo các lỗi, sai sót hoặc hành vi không mong muốn trong quá trình kiểm thử.

Xác nhận tính chính xác của logic chương trình là một mục tiêu quan trọng trong kiểm thử hành vi, nhằm đảm bảo rằng các điều kiện, rẽ nhánh và vòng lặp được xử lý đúng theo yêu cầu Kiểm thử hành vi thực hiện điều này bằng cách tạo ra các bộ dữ liệu thử nghiệm để kiểm tra xem các luồng điều khiển và điều kiện trong chương trình có được thực thi chính xác hay không.

Kiểm thử hành vi nhằm phát hiện lỗi, lỗ hổng và vấn đề tiềm ẩn trong chương trình Qua việc thực hiện các ca kiểm thử khác nhau, kiểm thử hành vi có khả năng phát hiện các lỗi như xử lý sai lỗi, xử lý chậm, xung đột dữ liệu, lỗi logic và những vấn đề không tuân thủ yêu cầu cũng như quy tắc đã đề ra.

Cả hai phương pháp kiểm thử hộp đen đều chú trọng đến chức năng và hành vi của chương trình mà không cần phải hiểu rõ về cấu trúc và mã nguồn bên trong.

KẾT QUẢ NGHIÊN CỨU

TỔNG QUAN

Kiểm thử phần mềm là quy trình đánh giá một hệ thống phần mềm nhằm xác định tính chính xác của nó so với các yêu cầu đã được chỉ định và đảm bảo phần mềm hoạt động hiệu quả trong môi trường dự kiến.

Mục đích của kiểm thử phần mềm là tìm ra lỗi chưa được phát hiện, tìm một cách sớm nhất và bảo đảm rằng lỗi sẽ được sửa.

Mục tiêu của kiểm thử phần mềm là thiết kế và thực hiện tài liệu kiểm thử một cách hệ thống, hiệu quả, đồng thời tiết kiệm thời gian, công sức và chi phí.

3.1.2 Các cấp độ kiểm thử phần mềm

Cấp độ kiểm thử phần mềm được thể hiện ở hình 3.1 [25]:

3.1.3 Kiểm thử đơn vị (Unit Test)

A unit is the smallest software component that can be tested, such as functions, procedures, classes, or methods.

Kiểm thử đơn vị là quy trình quan trọng do lập trình viên thực hiện, nhằm phát hiện lỗi ngay từ giai đoạn đầu của việc viết code Việc thực hiện kiểm thử đơn vị sớm và liên tục trong chu kỳ phát triển phần mềm giúp nâng cao chất lượng sản phẩm và giảm thiểu rủi ro trong quá trình phát triển.

Kiểm thử mức đơn vị lập trình

Kiểm thử mức đơn vị lập trình

Kiểm thử mức tích hợp các đơn vị (Integration test)

Kiểm thử mức tích hợp các đơn vị (Integration test)

Kiểm thử mức hệ thống, sau khi tích hợp (System test)

Kiểm thử mức hệ thống, sau khi tích hợp (System test)

Kiểm thử để chấp nhận sản phẩm (Acceptance test)

Kiểm thử để chấp nhận sản phẩm (Acceptance test)

Các bộ phận đơn lẻ

Các bộ phận đơn lẻ

Toàn bộ hệ thống nhìn từ khách hàng

Toàn bộ hệ thống nhìn từ khách hàng

Hình 3.1- Bốn cấp độ cơ bản của kiểm thử phần mềm

Mục đích của kiểm thử đơn vị là đảm bảo rằng thông tin được xử lý và xuất ra từ Unit là chính xác, tương ứng với dữ liệu đầu vào và chức năng của Unit Việc này thường yêu cầu kiểm tra tất cả các nhánh bên trong Unit để phát hiện các lỗi có thể xảy ra.

Kiểm thử đơn vị, giống như các mức kiểm thử khác, cần chuẩn bị các ca kiểm thử hoặc kịch bản rõ ràng, bao gồm dữ liệu đầu vào, các bước thực hiện và dữ liệu đầu ra mong muốn Các test case và test script này được lưu giữ để sử dụng trong tương lai.

3.1.4 Kiểm thử tích hợp (Integration Test)

Kiểm thử tích hợp là quá trình kết hợp các thành phần của một ứng dụng và kiểm tra chúng như một hệ thống hoàn chỉnh Trong khi kiểm thử đơn vị chỉ tập trung vào việc kiểm tra từng thành phần riêng lẻ, kiểm thử tích hợp chú trọng vào việc đánh giá sự giao tiếp và tương tác giữa các thành phần này.

Kiểm thử tích hợp có hai mục tiêu chính là:

 Phát hiện lỗi giao tiếp xảy ra giữa các Unit

Tích hợp các đơn vị đơn lẻ thành các hệ thống con (subsystem) là bước quan trọng trong quy trình phát triển, nhằm tạo ra một hệ thống hoàn chỉnh sẵn sàng cho kiểm thử hệ thống (system test).

Có 4 loại kiểm thử trong kiểm thử tích hợp như sau:

Kiểm thử cấu trúc (Structure test) là quá trình kiểm tra nhằm đảm bảo các thành phần bên trong của chương trình hoạt động chính xác Nó tập trung vào việc kiểm tra các yếu tố cấu trúc nội tại, bao gồm các lệnh và nhánh bên trong chương trình.

Kiểm thử chức năng (Functional test) tập trung vào việc đánh giá các chức năng của chương trình mà không xem xét cấu trúc bên trong Mục tiêu chính của kiểm thử này là xác định xem chương trình có hoạt động đúng theo các yêu cầu kỹ thuật đã đề ra hay không.

 Kiểm thử hiệu năng (Performance test): Kiểm thử việc vận hành của hệ thống.

 Kiểm thử khả năng chịu tải (Stress test): Kiểm thử các giới hạn của hệ thống.

3.1.5 Kiểm thử hệ thống (System Test)

Mục đích của kiểm thử hệ thống là xác định xem thiết kế và toàn bộ hệ thống, sau khi được tích hợp, có đáp ứng đầy đủ các yêu cầu đã được đặt ra hay không.

Kiểm thử hệ thống đánh giá cả hành vi chức năng của phần mềm và các yêu cầu chất lượng như độ tin cậy, tính tiện lợi, hiệu năng và bảo mật.

Kiểm thử hệ thống bắt đầu khi tất cả các bộ phận phần mềm đã được tích hợp thành công và thường tốn nhiều công sức và thời gian Loại kiểm thử này có thể yêu cầu thiết bị, phần mềm hoặc phần cứng đặc thù, đặc biệt cho các ứng dụng thời gian thực, hệ thống phân bố hoặc hệ thống nhúng Người kiểm thử tìm kiếm lỗi nhưng tập trung vào việc đánh giá hoạt động, thao tác, độ tin cậy và các yêu cầu chất lượng của toàn bộ hệ thống Sự khác biệt chính giữa kiểm thử tích hợp và kiểm thử hệ thống là kiểm thử hệ thống chú trọng vào hành vi và lỗi toàn hệ thống, trong khi kiểm thử tích hợp tập trung vào sự giao tiếp giữa các đơn thể Thông thường, kiểm thử đơn vị và kiểm thử tích hợp cần được thực hiện trước để đảm bảo mọi phần và sự tương tác của chúng hoạt động chính xác trước khi tiến hành kiểm thử hệ thống.

Sau khi hoàn thành kiểm thử tích hợp, hệ thống phần mềm đã được hình thành với các thành phần được kiểm tra đầy đủ Lập trình viên hoặc kiểm thử viên bắt đầu kiểm thử phần mềm như một hệ thống hoàn chỉnh Việc lập kế hoạch kiểm thử hệ thống cần bắt đầu từ giai đoạn hình thành và phân tích yêu cầu Kiểm thử hệ thống đòi hỏi nhiều công sức, thời gian và tính chính xác, khách quan, và được thực hiện bởi một nhóm kiểm tra viên độc lập với nhóm phát triển dự án để đảm bảo tính chính xác và khách quan.

Kiểm thử hệ thống thường có các loại kiểm thử sau:

 Kiểm thử chức năng (Functional test): Bảo đảm các hành vi của hệ thống thỏa mãn đúng yêu cầu thiết kế.

Kiểm thử khả năng vận hành (Performance test) là quá trình đảm bảo tối ưu việc phân bổ tài nguyên hệ thống, chẳng hạn như bộ nhớ, nhằm đạt được các chỉ tiêu quan trọng như thời gian xử lý và khả năng đáp ứng câu truy vấn.

TÌM HIỂU CÔNG CỤ KIỂM THỬ PHẦN NỀM

Selenium (viết tắt là SE) là phần mềm mã nguồn mở được phát triển bởi Jason Huggins và tiếp tục được nhóm ThoughtWorks phát triển từ năm 2004.

Selenium là bộ công cụ hỗ trợ kiểm thử tự động cho các tính năng của ứng dụng web, bao gồm bốn thành phần chính: Selenium IDE, Selenium Remote Control (RC), Selenium Core và Selenium Grid.

Selenium là công cụ kiểm thử tự động hỗ trợ hầu hết các trình duyệt web phổ biến như Firefox, Internet Explorer và Google Chrome Nó tương thích với nhiều ngôn ngữ lập trình như C#, Java, Python và PHP Bên cạnh đó, Selenium có thể kết hợp hiệu quả với các công cụ kiểm thử khác như JUnit, Bromein và NUnit.

3.2.2 Đặc điểm Đặc điểm của Selenium là một công cụ phần mềm tự động hóa kiểm thử phần mềm, và dưới đây là các đặc điểm của nó:

Selenium là một công cụ mã nguồn mở, cho phép người dùng và nhà phát triển truy cập và sử dụng mã nguồn miễn phí Điều này mang lại sự linh hoạt và khả năng tùy chỉnh cao cho người dùng, giúp họ dễ dàng điều chỉnh công cụ theo nhu cầu cụ thể của mình.

Selenium cung cấp nhiều phiên bản khác nhau, trong đó Selenium WebDriver, Selenium IDE và Selenium Grid là những phiên bản phổ biến nhất Mỗi phiên bản này sở hữu các tính năng và khả năng riêng biệt, nhằm đáp ứng các yêu cầu kiểm thử phức tạp khác nhau.

Selenium là công cụ hỗ trợ kiểm thử tự động cho ứng dụng web, cho phép thực hiện kiểm thử chức năng, kiểm thử giao diện người dùng, kiểm thử tích hợp và kiểm thử hệ thống Công cụ này tương thích với nhiều trình duyệt phổ biến như Chrome, Firefox, Safari, Edge và Opera.

3.2.3 Cài đặt và sử dụng công cụ

Bước 1: Vào trang http://seleniumhq.org/download để download Selenium IDE

Step 2: Click on the download link for Selenium IDE You may see a message stating, "Firefox prevented this site (seleniumhq.org) from asking you to install software on your computer." If you wish to proceed with the installation, click the Allow button.

Bước 3: Một pop up xuất hiện như hình:

Hình 3.2: Pop up cài đặt Selenium

Khi Firefox thực hiện đếm ngược, nút Cài đặt sẽ chuyển sang trạng thái có thể nhấp được Lúc này, Selenium sẽ bắt đầu được cài đặt trên máy tính như một add-on của Firefox.

Bước 5: Tiến trình cài đặt hoàn thành, hệ thống hỏi bạn có muốn khởi động lại firefox không Click vào nút Restart Firefox sẽ đóng và mở lại.

Bước 6: Kiểm tra lại phần add-on của firefox xem đã có Selenium chưa. Hiển thị như hình thì việc cài Selenium đã thành công.

Hình 3.3: Kiểm tra cài đặt Selenium thành công

Giới thiệu phần mềm <LAZADA>

Lazada là một nền tảng thương mại điện tử đa quốc gia, hoạt động tại nhiều quốc gia Đông Nam Á Kể từ khi thành lập vào năm 2012, Lazada đã nhanh chóng trở thành một trong những trang web mua sắm trực tuyến lớn và phổ biến nhất trong khu vực.

Lazada là nền tảng mua sắm trực tuyến phong phú, cho phép người dùng dễ dàng tìm kiếm và mua sắm từ hàng nghìn nhà cung cấp khác nhau.

Trên Lazada, người dùng có thể khám phá một loạt sản phẩm đa dạng, bao gồm quần áo, giày dép, đồ điện tử, đồ gia dụng, mỹ phẩm, đồ chơi và nhiều mặt hàng khác.

Phần mềm Lazada mang đến giao diện thân thiện, dễ sử dụng, cho phép người dùng tạo tài khoản cá nhân, đăng nhập để mua sắm, quản lý đơn hàng, lưu trữ thông tin thanh toán, và nhận các ưu đãi cùng chương trình khuyến mãi độc quyền.

Lazada cung cấp dịch vụ hỗ trợ đa dạng như vận chuyển, đổi trả hàng và chăm sóc khách hàng, nhằm mang đến trải nghiệm mua sắm trực tuyến an toàn và thuận lợi cho người tiêu dùng.

Với sự phát triển mạnh mẽ và sự tin tưởng từ người tiêu dùng, Lazada đã nổi lên như một trong những nền tảng mua sắm trực tuyến hàng đầu tại Đông Nam Á, phục vụ nhu cầu mua sắm đa dạng và tiện lợi của khách hàng.

1 Đăng nhập và quản lý tài khoản: Chức năng này cho phép người dùng đăng nhập vào tài khoản cá nhân của họ, quản lý thông tin cá nhân, địa chỉ giao hàng, thông tin thanh toán và xem lịch sử đơn hàng.

2 Tìm kiếm sản phẩm: Chức năng tìm kiếm cho phép người dùng tìm kiếm và xem các sản phẩm theo từ khóa, danh mục, thương hiệu hoặc các tiêu chí khác Người dùng có thể sử dụng tính năng lọc và sắp xếp để thu hẹp kết quả tìm kiếm theo yêu cầu của mình.

3 Xem và mua sản phẩm: Phần mềm Lazada cho phép người dùng xem thông tin chi tiết và hình ảnh sản phẩm, đánh giá của khách hàng trước đó và giá cả Người dùng có thể thêm sản phẩm vào giỏ hàng và tiến hành thanh toán để mua hàng.

4 Thanh toán và đặt hàng: Chức năng thanh toán cho phép người dùng chọn phương thức thanh toán và cung cấp thông tin liên quan như địa chỉ giao hàng và thông tin thanh toán Người dùng có thể xem lại đơn hàng trước khi xác nhận và hoàn thành quá trình đặt hàng.

5 Quản lý đơn hàng: Phần mềm Lazada cung cấp chức năng quản lý đơn hàng, cho phép người dùng xem trạng thái đơn hàng, theo dõi giao hàng và yêu cầu đổi/trả hàng (nếu có).

6 Đánh giá và nhận xét: Người dùng có thể đánh giá và nhận xét về sản phẩm mà họ đã mua, chia sẻ trải nghiệm của mình với cộng đồng Lazada và giúp người dùng khác có thông tin tham khảo trước khi mua hàng.

7 Khuyến mãi và ưu đãi: Phần mềm Lazada cung cấp thông tin về các chương trình khuyến mãi, giảm giá và ưu đãi đặc biệt, giúp người dùng tiết kiệm được chi phí và tận hưởng những lợi ích từ các chương trình này.

Kiểm thử phần mềm <Tên phần mềm kiểm thử>

• Xác định những thông tin dự án và các phần dự án cần được kiểm thử:

- Kiểm thử trên website: https://lazada.com /

- Kỹ thuật kiểm thử: tính năng và khả năng sử dụng của trang web.

• Liệt kê những yêu cầu kiểm thử (Test Requirements):

Xác nhận rằng các thành phần giao diện như nút, ô nhập liệu và liên kết được hiển thị chính xác và dễ nhận diện là rất quan trọng để đảm bảo trải nghiệm người dùng tốt.

Để đảm bảo ứng dụng hoạt động hiệu quả, cần kiểm tra các chức năng như đăng nhập, đăng ký, tìm kiếm và quản lý bản ghi (thêm, sửa, xóa).

Xác thực dữ liệu là quá trình quan trọng nhằm kiểm tra tính hợp lệ của dữ liệu đầu vào Điều này bao gồm việc áp dụng các ràng buộc và thực hiện kiểm tra để đảm bảo rằng dữ liệu hiển thị chính xác trên giao diện người dùng.

Xác thực dữ liệu là quá trình kiểm tra tính hợp lệ của dữ liệu nhập vào thông qua việc áp dụng các ràng buộc Điều này đảm bảo rằng dữ liệu được hiển thị chính xác trên giao diện người dùng.

Xác thực dữ liệu là quá trình kiểm tra tính hợp lệ của dữ liệu nhập vào thông qua việc áp dụng các ràng buộc Điều này đảm bảo rằng dữ liệu được hiển thị chính xác trên giao diện, giúp nâng cao độ tin cậy và chất lượng thông tin.

• Nêu ra những phương pháp, chiến lược kiểm thử nên sử dụng cho kỹ thuật kiểm thử bằng selenium:

Xác định phạm vi kiểm thử là bước quan trọng trong quy trình kiểm thử phần mềm, dựa trên yêu cầu và chức năng của ứng dụng Việc này giúp tập trung vào các phần quan trọng, từ đó tối ưu hóa thời gian và công sức, đồng thời nâng cao hiệu quả kiểm thử.

To create automated test scripts, utilize Selenium IDE or Selenium WebDriver Ensure that these scripts encompass all necessary testing steps to guarantee accuracy and completeness.

Sử dụng biến và hàm trong Selenium IDE cho phép tạo ra các giá trị động và tái sử dụng các bước kiểm thử, giúp giảm thiểu sự lặp lại công việc và nâng cao tính linh hoạt của kịch bản kiểm thử.

Selenium IDE cung cấp chức năng ghi âm và chạy lại, cho phép người dùng tự động hóa các bước kiểm thử Kỹ thuật này giúp tiết kiệm thời gian và công sức khi thực hiện kiểm thử lại các kịch bản đã hoàn thành.

• Xác định nguồn lực cần.

- Các công cụ kiểm thử: Selenium IDE,

- Người kiểm thử: Các thành viên trong nhóm.

• Các chức năng test và các chức năng không test.

Trong bài viết này, chúng tôi đã kiểm tra các chức năng quan trọng của hệ thống, bao gồm: Đăng nhập, Đăng ký, Xem danh mục sản phẩm, Xem sản phẩm đã xem, Xem hotdeal, Xem Flash Sale, Xem Hệ thống cửa hàng, Xem tin tức và Xem Hướng dẫn Những chức năng này đảm bảo trải nghiệm người dùng mượt mà và thuận tiện khi tương tác với nền tảng.

Người kiểm thử Công việc test

Hoàng Đức Đạt Đăng nhập và đăng ký

Phạm Đăng Đức Tìm kiếm sản phẩm

Quách Hoài Nam Xem và so sánh sản phẩm

Nguyễn Văn Tùng Giỏ hàng và thanh toán

- Các chức năng không test: Các chức năng còn lại.

- Các tổ hợp về Thiết bị, Hệ điều hành và Trình duyệt phổ biến được sử dụng bởi người dùng.

- Tốc độ load đối với các nhà mạng, tốc độ internet của người dùng.

- Độ thân thiện với người dùng (Sự thành thạo của người dùng).

- Các chức năng cần test.

- Hiệu xuất chuyển đổi giữa các trang của website.

3.4.2 Phân tích thiết kế kiểm thử

3.4.2.1 < Hoàng Đức Đạt> -

 Đăng nhập: Giao diện chứa các trường nhập thông tin tài khoản (email/username, mật khẩu), nút Đăng nhập và liên kết Quên mật khẩu.

Đăng ký tài khoản bao gồm giao diện với các trường để nhập thông tin như email hoặc tên người dùng, mật khẩu và xác nhận mật khẩu Người dùng sẽ thấy nút Đăng ký cùng với liên kết dành cho những ai đã có tài khoản.

2 Mô tả giao diện và các điều kiện ràng buộc:

- Điều kiện ràng buộc: Tài khoản và mật khẩu phải hợp lệ.

- Giao diện: Trường nhập email/username, trường nhập mật khẩu, nút Đăng nhập, liên kết Quên mật khẩu.

- Điều kiện ràng buộc: Email/username và mật khẩu phải đáp ứng yêu cầu,mật khẩu xác nhận phải khớp với mật khẩu đã nhập.

- Giao diện: Trường nhập email/username, trường nhập mật khẩu, trường nhập xác nhận mật khẩu, nút Đăng ký, liên kết Đã có tài khoản.

3.Sử dụng phương pháp kỹ thuật đã học để lấy cơ sở tìm test case

Phân tích giá trị biên (Boundary Value Analysis) là phương pháp hiệu quả để xác định các giá trị biên cũng như các giá trị gần biên trong quá trình kiểm thử thông tin đăng nhập và đăng ký Phương pháp này tập trung vào việc lựa chọn các giá trị như giá trị nhỏ nhất, giá trị lớn nhất, và các giá trị nằm giữa để đảm bảo tính chính xác và độ tin cậy của hệ thống.

Phân tích giá trị tuyệt đối (Absolute Value Analysis) là phương pháp quan trọng trong việc xác định các Test Case cho thông tin đăng nhập và đăng ký Quá trình này bao gồm việc kiểm tra các giá trị không hợp lệ, giá trị rỗng và giá trị chứa ký tự đặc biệt để đảm bảo tính chính xác và an toàn của hệ thống.

Phân tích lỗi giao diện là quá trình xác định và khắc phục các vấn đề liên quan đến trải nghiệm người dùng Điều này bao gồm việc kiểm tra hành vi của giao diện khi người dùng không nhập thông tin, nhập sai định dạng hoặc vượt quá giới hạn cho phép Việc thực hiện phân tích này giúp cải thiện tính khả dụng và hiệu suất của ứng dụng, từ đó nâng cao sự hài lòng của người dùng.

Phân tích các trường hợp đặc biệt là một bước quan trọng trong việc xác định những tình huống có thể gây ra lỗi trong quá trình đăng nhập và đăng ký Việc nhận diện các trường hợp này giúp tối ưu hóa trải nghiệm người dùng và nâng cao tính bảo mật của hệ thống.

Ví dụ: tài khoản bị khóa, hệ thống tạm ngừng hoạt động.

KIẾN THỨC LĨNH HỘI VÀ BÀI HỌC KINH NGHIỆM

Sử dụng Selenium để kiểm thử trang web Lazada giúp chúng em tích lũy nhiều kiến thức và kỹ năng quan trọng trong lĩnh vực kiểm thử phần mềm và tự động hóa Qua quá trình này, chúng em đã học được cách áp dụng các công cụ kiểm thử tự động, cải thiện khả năng phân tích và giải quyết vấn đề, cũng như nắm vững quy trình phát triển phần mềm.

Để kiểm thử trang web Lazada bằng Selenium, bạn cần nắm vững kiến thức cơ bản về kiểm thử phần mềm, bao gồm các khái niệm như kiểm thử đơn vị, kiểm thử tích hợp và kiểm thử giao diện người dùng Ngoài ra, việc hiểu biết về các phương pháp kiểm thử tự động và cách áp dụng chúng vào quy trình kiểm thử là rất quan trọng.

Selenium là một công cụ tự động hóa kiểm thử phần mềm mạnh mẽ và phổ biến, giúp người dùng cài đặt và cấu hình Selenium WebDriver, một API cho phép tương tác với trình duyệt web Bằng cách sử dụng Selenium, bạn sẽ nắm vững các phương pháp và kỹ thuật để thao tác trên các phần tử trang web, điều hướng giữa các trang, điền thông tin vào mẫu đăng nhập và thực hiện kiểm tra tự động một cách hiệu quả.

Để sử dụng Selenium hiệu quả, bạn cần có kiến thức lập trình cơ bản, vì công cụ này hỗ trợ nhiều ngôn ngữ như Java, Python, C# và Ruby Việc học cách viết mã để tương tác với WebDriver, xác định các phần tử trang web, thực hiện hành động và kiểm tra kết quả sẽ giúp bạn nâng cao kỹ năng lập trình cũng như khả năng tự động hóa các tác vụ trong kiểm thử phần mềm.

Kỹ năng gỡ lỗi và phân tích là rất quan trọng khi sử dụng Selenium để kiểm thử trang web Lazada Bạn sẽ gặp phải nhiều lỗi và vấn đề khác nhau, do đó, việc xác định nguyên nhân và đưa ra giải pháp là cần thiết Qua bài học này, bạn sẽ học cách sử dụng các công cụ gỡ lỗi và kỹ thuật phân tích để tìm ra lỗi, từ đó cải thiện quy trình kiểm thử và đảm bảo tính chính xác của mã kiểm thử.

Kỹ năng quản lý và báo cáo là rất quan trọng khi thực hiện kiểm thử trang web Lazada bằng Selenium Bạn sẽ học cách xác định và ưu tiên các ca kiểm thử, lập kế hoạch và quản lý thời gian hiệu quả, cũng như theo dõi tiến độ dự án Bên cạnh đó, bạn sẽ được hướng dẫn cách tạo báo cáo về kết quả kiểm thử và trình bày thông tin một cách rõ ràng, dễ hiểu cho nhóm phát triển hoặc bên quản lý.

Việc sử dụng Selenium để kiểm thử trang web Lazada không chỉ giúp bạn nâng cao kiến thức về kiểm thử phần mềm và tự động hóa, mà còn phát triển các kỹ năng quan trọng như lập trình, gỡ lỗi, quản lý và giao tiếp.

Ngày đăng: 07/11/2023, 13:37

TỪ KHÓA LIÊN QUAN

w