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

Báo cáo học phần kiểm thử phần mềm Đề tài selenium webdriver (công cụ kiểm thử selenium webdriver

15 1 0
Tài liệu đã được kiểm tra trùng lặp

Đ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ử Phần Mềm Đề Tài: Selenium Webdriver (Công Cụ Kiểm Thử Selenium Webdriver)
Tác giả Trương Hoàng Hà, Bùi Thế Anh, Vũ Minh Đức, Hoàng Vân Hằng
Người hướng dẫn TS Đào Thị Hường
Trường học Trường Đại Học Hải Phòng
Chuyên ngành Công Nghệ Thông Tin
Thể loại báo cáo
Năm xuất bản 2024
Thành phố Hải Phòng
Định dạng
Số trang 15
Dung lượng 1,2 MB

Nội dung

TRƯỜNG ĐẠI HỌC HẢI PHÒNGKHOA CÔNG NGHỆ THÔNG TIN ---o0o---BÁO CÁO HỌC PHẦN: KIỂM THỬ PHẦN MỀM ĐỀ TÀI: SELENIUM WEBDRIVER Công cụ kiểm thử Selenium Webdriver NHÓM SINH VIÊN THỰC HIỆN: GI

Trang 1

TRƯỜNG ĐẠI HỌC HẢI PHÒNG

KHOA CÔNG NGHỆ THÔNG TIN

-o0o -BÁO CÁO HỌC PHẦN: KIỂM THỬ PHẦN MỀM

ĐỀ TÀI: SELENIUM WEBDRIVER (Công cụ kiểm thử Selenium Webdriver)

NHÓM SINH VIÊN THỰC HIỆN:

GIẢNG VIÊN HƯỚNG DẪN: TS ĐÀO THỊ HƯỜNG

Hải Phòng, tháng 9 năm 2024

Trang 2

MỤC LỤC

Chương I GIỚI THIỆU CHUNG VỀ PHẦN MỀM SELENIUM

1.1 Cơ sở lý thuyết

1.2 Lịch sử hình thành

1.3 Đặc điểm của selelium webdriver

1.4 Cài đặt

1.4.1 Yêu cầu hệ thống

1.4.2 Cài đặt

Chương II HƯỚNG DẪN SỬ DỤNG PHẦN MỀM

2.1 Khởi tạo một Dự án Test (Create Project)

2.2 Ghi lại một bài Test (Create a test)

Chương III KẾT LUẬN

Trang 3

DANH MỤC BẢNG BIỂU

Bảng 1.1 Yêu cầu cấu hình phần mềm Selenium Webdriver:

DANH MỤC HÌNH ẢNH

Hình 1.1: Giao diện tải về của Selenium Driver

Hình 2.1: Giao diện tạo dự án mới

Hình 2.2: Cài đặt package Selenium

Hình 2.3: Trang chủ google

Hình 2.3: Lấy thuộc tính của trang web

Trang 4

Chương I GIỚI THIỆU CHUNG VỀ PHẦN MỀM SELENIUM 1.1 Cơ sở lý thuyết

Kiểm thử phần mềm là quá trình đánh giá tính năng và chất lượng của một ứng dụng phần mềm để đảm bảo rằng nó hoạt động theo cách được dự kiến Điều này bao gồm việc tạo ra các bài kiểm tra để kiểm tra tính năng, hiệu suất, và độ tin cậy của ứng dụng

1.1.2 Tự động hóa kiểm thử là gì ?

Tự động hóa kiểm thử là việc sử dụng các công cụ và kịch bản tự động để thực hiện các bài kiểm tra thay vì kiểm tra thủ công Điều này giúp tiết kiệm thời gian và tài nguyên và tăng tính nhất quán trong quá trình kiểm thử

1.1.3 Selenium và cơ sở lý thuyết

Selenium là một bộ kiểm thử tự động (mã nguồn mở) miễn phí cho các ứng dụng web trên các trình duyệt và nền tảng khác nhau Selenium chỉ tập trung vào việc

tự động hóa các ứng dụng dựa trên web Việc kiểm thử được sử dụng bằng công cụ Selenium thường được gọi là Automation Selenium Testing Selenium không chỉ là một công cụ duy nhất mà nó là một bộ phần mềm, mỗi bộ nó cung cấp các nhu cầu thử nghiệm khác nhau của một tổ chức Nó có 4 thành phần:

● Selenium Integrated Development Environment (Selenium IDE)

● Selenium Remote Control (Selenium RC)

Selenium WebDriver (chúng ta tìm hiểu về bộ công cụ này)

● Selenium Grid

1.1.4 Giới thiệu về công cụ Selenium Webdriver

WebDriver thực hiện một cách tiếp cận hiện đại và ổn định hơn trong việc tự động hóa các hành động của trình duyệt WebDriver, không giống như Selenium RC,

Trang 5

không dựa vào JavaScript cho tự động hóa Nó kiểm soát trình duyệt bằng cách giao tiếp trực tiếp với nó qua các ngôn ngữ được hỗ trợ giống như ngôn ngữ trong Selenium RC

1.2 Lịch sử hình thành

Giai Đoạn Đầu Tiên (2004)

Jason Huggins, một kỹ sư tại ThoughtWorks, là người đầu tiên phát triển

Selenium vào năm 2004 Khi làm việc trên một dự án phát triển web, Huggins nhận thấy việc kiểm thử thủ công gây tốn nhiều thời gian và dễ xảy ra lỗi Để giải quyết vấn đề này, anh đã viết một công cụ tự động hóa kiểm thử trong JavaScript, mà sau này được gọi là Selenium Core

Selenium Core là một thư viện JavaScript có thể thực hiện các thao tác tự động

trên trình duyệt, như nhấp chuột, nhập liệu và điều hướng qua các trang web Ý tưởng của Selenium là chạy trực tiếp trên các trình duyệt mà không cần cài đặt thêm bất kỳ phần mềm nào

Từ Selenium Core đến Selenium RC (2004 - 2006)

● Một hạn chế lớn của Selenium Core là nó bị giới hạn bởi chính sách bảo mật

"same-origin policy" của trình duyệt, tức là nó chỉ có thể tương tác với các trang web cùng nguồn gốc (origin) với trang web hiện tại Điều này đã gây khó khăn khi thử nghiệm các trang web từ nhiều nguồn khác nhau

● Để khắc phục hạn chế này, Paul Hammant, cũng là một kỹ sư tại ThoughtWorks, đã phát triển Selenium Remote Control (RC) Selenium RC cho phép các nhà phát triển viết kiểm thử bằng các ngôn ngữ lập trình như Java, Python, C#, và Perl, và chạy các bài kiểm thử này trên nhiều trình duyệt bằng cách sử dụng một máy chủ proxy

Sự Ra Đời Của Selenium WebDriver (2006 - 2009)

Trang 6

● Mặc dù Selenium RC đã là một bước tiến lớn, nó vẫn còn phức tạp và có những hạn chế trong việc tương tác với các trình duyệt hiện đại Điều này dẫn đến sự phát triển của Selenium WebDriver

Simon Stewart, một kỹ sư của Google, đã phát triển WebDriver vào năm 2006

như một giải pháp thay thế cho Selenium RC WebDriver tương tác trực tiếp với trình duyệt thông qua API của từng trình duyệt, thay vì sử dụng JavaScript như Selenium Core Điều này giúp WebDriver trở nên nhanh hơn, đáng tin cậy hơn

và có khả năng kiểm thử trên nhiều trình duyệt hiện đại hơn

Hợp Nhất Selenium WebDriver và Selenium RC (2011)

● Vào năm 2008, Google và ThoughtWorks đã hợp tác để kết hợp hai dự án này lại với nhau Sự kết hợp giữa WebDriver và Selenium RC tạo nên một nền tảng kiểm thử mạnh mẽ hơn, được gọi là Selenium 2.0 vào năm 2011 Selenium 2.0

sử dụng WebDriver làm nền tảng chính, trong khi Selenium RC vẫn được hỗ trợ cho các dự án cũ

Selenium 3.0 và Sự Phát Triển Hiện Đại (2016 - Nay)

Selenium 3.0 được phát hành vào tháng 10 năm 2016 Phiên bản này đánh dấu

sự chuyển đổi chính thức từ Selenium RC sang Selenium WebDriver, và Selenium RC đã bị loại bỏ dần Selenium 3.0 tập trung vào việc cải thiện khả năng tương thích với các trình duyệt hiện đại và cải thiện hiệu suất

Selenium IDE cũng được cải tiến và trở lại với giao diện thân thiện hơn, cho

phép người dùng dễ dàng ghi lại và phát lại các bài kiểm thử mà không cần viết mã

Selenium 4.0 (2021)

Selenium 4.0, được phát hành vào năm 2021, mang lại nhiều cải tiến quan

trọng, đặc biệt là việc hỗ trợ giao thức W3C WebDriver tiêu chuẩn Điều này đảm bảo rằng các trình duyệt hiện đại hỗ trợ Selenium một cách tốt nhất và nhất quán hơn trên các nền tảng khác nhau

Trang 7

Selenium 4.0 cũng mang lại những cải tiến cho Selenium Grid, bao gồm giao diện người dùng mới và khả năng mở rộng cao hơn Selenium IDE cũng được nâng cấp để tích hợp tốt hơn với các công cụ hiện đại

1.3 Đặc điểm của selelium webdriver

- Mã Nguồn Mở (Open-Source): Selenium là một công cụ mã nguồn mở, có

nghĩa là nó miễn phí cho mọi người sử dụng và có thể được tùy chỉnh theo nhu cầu của các nhà phát triển

- Hỗ Trợ Đa Nền Tảng: Selenium có thể chạy trên nhiều hệ điều hành khác nhau

như Windows, macOS, và Linux, giúp dễ dàng triển khai kiểm thử trên các môi trường khác nhau Selenium hỗ trợ các trình duyệt phổ biến như Chrome, Firefox, Safari, Internet Explorer, Microsoft Edge, Opera, và nhiều trình duyệt khác Điều này giúp đảm bảo ứng dụng hoạt động chính xác trên mọi nền tảng trình duyệt

- Hỗ Trợ Đa Ngôn Ngữ Lập Trình: Selenium WebDriver có thể được sử dụng với

nhiều ngôn ngữ lập trình khác nhau như Java, Python, C#, Ruby, JavaScript, Perl, và PHP Điều này mang lại sự linh hoạt cho các nhà phát triển trong việc tích hợp Selenium vào hệ thống và dự án hiện có của họ

- Selenium WebDriver: Selenium WebDriver là một trong những thành phần

mạnh mẽ nhất của Selenium Nó cung cấp API để tương tác trực tiếp với các trình duyệt mà không cần phải sử dụng JavaScript như Selenium Core trước đây WebDriver tương tác với trình duyệt một cách tự nhiên và chính xác hơn, nhờ đó các kiểm thử tự động trở nên ổn định và nhanh hơn

❖ Các tính năng chính

- Cross-Browser Testing: Kiểm thử đa trình duyệt trên các trình duyệt phổ biến

như Chrome, Firefox, Safari, Edge, và Opera

Trang 8

- Multi-Platform Support: Hỗ trợ đa nền tảng, có thể chạy trên Windows, macOS

và Linux

- Multi-Language Support: Hỗ trợ nhiều ngôn ngữ lập trình như Java, Python, C#,

Ruby, JavaScript, và PHP

- Script Debugging and Logging: Cung cấp các tính năng gỡ lỗi và ghi nhật ký

giúp dễ dàng xác định và khắc phục lỗi trong kịch bản kiểm thử

- Direct Browser Control: Tương tác trực tiếp với trình duyệt thông qua Selenium

WebDriver, điều khiển tất cả các thao tác như người dùng thật

- API Access: Cung cấp quyền API để điều khiển và tương tác với các phần tử

web như: nút, form, và các yếu tố khác trong trang web

❖ Các dạng testing được hỗ trợ

- UI testing (Kiểm thử giao diện người dùng)

- Regression testing: Kiểm tra hồi quy

- Functional testing (Kiểm thử chức năng)

- Load Testing: Kiểm tra truyền tải

- Compatibility Testing (Kiểm thử tương thích)

- Smoke Testing (Kiểm thử khói)

1.4 Cài đặt

❖ Yêu cầu hệ điều hành:

- Microsoft Windows >= 7

- Linux

- MacOs

Trang 9

Bảng 1.1 Yêu cầu cấu hình phần mềm Selenium Webdriver:

● Intel Pentium II 400 MHz or higher

● 256 MB of RAM

● 700 MB of hard disk space

● 1024×768 or higher resolution

monitor

● Mouse or the other pointing device

● Microsoft Internet Explorer 7.0 or

later

●Intel Pentium 4 3 GHz, Intel Core 2 Duo 2 GHz or higher

●1 GB of RAM on Windows XP and Windows Server 2003

●2 GB of RAM on Windows Vista, Windows 7 and later operating systems

●700 MB hard disk space

●1280×1024 or higher resolution monitor Mouse or the other pointing device

●Microsoft Internet Explorer 7.0 or later

❖ Yêu cầu về trình duyệt:

-Internet Explorer phiên bản từ 6 đến 11, cả 32 và 64 bit

-Microsoft Edge phiên bản 12.10240 trở lên (hỗ trợ một phần một số chức năng đang được phát triển)

-Firefox 3.0 trở lên

-Google Chrome 12.0 và ở trên Opera 11.5 trở lên

-Android - 2.3 trở lên cho điện thoại và máy tính bảng (thiết bị & trình mô phỏng)

Trang 10

-iOS 3+ dành cho điện thoại (thiết bị và trình mô phỏng) và 3.2+ dành cho máy tính bảng (thiết bị & trình mô phỏng)

-HtmlUnit 2.9 trở lên

Trước khi bạn có thể bắt đầu viết mã Selenium, bạn phải cài đặt các thư viện liên kết ngôn ngữ cho ngôn ngữ bạn chọn, trình duyệt bạn muốn sử dụng và trình điều khiển cho trình duyệt đó Ở đây chúng tôi sẽ tải xuống và sử dụng thư viện Selenium phù hợp với ngôn ngữ Python

Link download: https://selenium-python.readthedocs.io/installation.html Các bạn hãy làm theo hướng dẫn cài đặt của website

Hình 1.1: Giao diện tải về của Selenium Driver

Trang 11

Chương II HƯỚNG DẪN SỬ DỤNG PHẦN MỀM

2.1 Khởi tạo một Dự án Test (Create Project)

Trước hết, chúng tôi sử dụng IDE Pycharm để thực thi các kịch bản kiểm thử của Selenium Webdriver

Để khởi tạo một dự án Kiểm thử, ta thực hiện các bước như sau:

- Nếu bạn đang mở một Project bạn phải thoát khỏi Project đó Để làm như thế

ta thực hiện: Chọn File | Close từ giao diện chính của Pycharm

- Chọn File | New | New Project từ giao diện chính Hộp thoại mới sẽ xuất hiện:

Hình 2.1: Giao diện tạo dự án mới

- Cho phép Lưu tên dự án và Nơi lưu trữ dự án của bạn

- Chọn Create để hoàn thành bước tạo project mới

Trang 12

Hình 2.2: Cài đặt package Selenium

Vào phần terminal của Pycharm, gõ lệnh: pip install selenium để cài đặt các package cần thiết cho việc sử dụng selenium

2.2 Ghi lại một bài Test (Create a test)

Chúng ta sẽ thực hiện test case ví dụ cho ô tìm kiếm ở trang

https://www.google.com

Hình 2.3: Trang chủ google

- Bước 1: Để bắt đầu một bài test bạn chọn trang web muốn kiểm tra bằng lệnh:

driver.get("https://www.google.com")

Ví dụ trang web muốn test ở đây có địa chi: https://www.google.com

- Bước 2: Chọn phần tử muốn kiểm tra:

# Find the search box element

search_box = driver.find_element(By.NAME, "q")

Trang 13

Câu lệnh trên có ý nghĩa tìm phần tử có tên thuộc tính là ‘q’ Trong ví dụ này đó

có nghĩa là ô search box trong trang tìm kiếm của google

Để tìm tên thuộc tính bạn bấm tổ hợp phím: Ctrl + Shift + C để vào phần Inspect sau đó chỉ vào thành phần của trang web muốn lấy thuộc tính

Hình 2.3: Lấy thuộc tính của trang web

Sau khi đã lấy thuộc tính thành công Tiến hành thử chức năng nhập liệu vào ô tìm kiếm và xem kết quả trả ra:

# Enter a search query

search_box.send_keys( "Selenium WebDriver" )

# Submit the search query

search_box.send_keys(Keys.RETURN)

search_box.send_keys( "Selenium WebDriver" )

Dùng để truyền câu truy vấn vào phần tử search box vừa tìm được ở đoạn code trên

Trang 14

Sau khi truyền câu truy vấn Nhấn nút enter để kết thúc và bắt đầu thực hiện truy vấn

- Bước 3: Khi kết thúc bài test chọn vào Item Stop trên thanh công cụ để kết thúc quá trình kiểm thử

Trang 15

Chương III KẾT LUẬN

Sau một thời gian đọc tài liệu và sử dụng phần mềm nhóm có một số nhật xét về công cụ Selenium Webdriver cụ thể như sau:

- Có thể thực hiện thao tác thực tiếp với trình duyệt

- Hộ trợ nhiều loại kiểm thử khác nhau

- Hỗ trợ nhiều ngôn ngữ

- Tốc độ thực thi nhanh

- Kiểm tra được hầu hết các component trên Web

- Qúa trình cài đặt phức tạp

- Yêu cầu người sử dụng phải có kiến thức về lập trình

Ngày đăng: 18/01/2025, 23:05

TỪ KHÓA LIÊN QUAN