Selenium Python Hướng dẫn với ví dụ về WebDriver
Selenium với Python
Selenium hỗ trợ Python và do đó có thể được sử dụng như Selenium WebDriver với Python để thử nghiệm.
- Python rất dễ dàng so với các ngôn ngữ lập trình khác, ít dài dòng hơn nhiều.
- Python API cho phép bạn kết nối với trình duyệt thông qua Selenium.
- Selenium gửi tiêu chuẩn Python lệnh cho các trình duyệt khác nhau, bất chấp sự khác biệt trong thiết kế trình duyệt của chúng.
Bạn có thể chạy Selenium với Python kịch bản cho Firefox, Chrome, IE, v.v. trên các nền tảng khác nhau Operahệ thống ting.
Là gì Python?
Python là một ngôn ngữ kịch bản hướng đối tượng cấp cao. Nó được thiết kế theo cách thân thiện với người dùng. Python sử dụng các từ khóa tiếng Anh đơn giản, dễ hiểu. Nó có ít sự phức tạp về cú pháp hơn bất kỳ cái nào khác ngôn ngữ lập trình.
Xem một số ví dụ trong bảng dưới đây.
Từ khóa | Ý nghĩa | Sử dụng |
---|---|---|
elif | Khác nếu | Khác nếu |
khác | Khác | nếu: X; Elif: Y; khác: J |
ngoại trừ | làm điều này, nếu một ngoại lệ xảy ra, | ngoại trừ ValueError, a: in a |
giám đốc điều hành | Chạy chuỗi dưới dạng Python | exec 'in “xin chào thế giới !”' |
Là gì Selenium?
Selenium là một công cụ để kiểm tra ứng dụng web của bạn. Bạn có thể làm điều này theo nhiều cách khác nhau, ví dụ
- Cho phép nó chạm vào các nút
- Nhập nội dung vào cấu trúc
- Lướt qua trang web của bạn để kiểm tra xem mọi thứ có ổn không, v.v.
Cách cài đặt và cấu hình PyDev in Eclipse
PyDev is Python môi trường phát triển cho Eclipse.
Bước 1) Phải Eclipse Thương trường. Trợ giúp > Cài đặt phần mềm mới
Bước tiếp theo là cài đặt “pydev IDE” cho eclipse.
Bước 2) Trong bước này,
- Tìm kiếm “http://pydev.org/updates” trong Work with và sau đó
- Chọn tất cả các Mục được liệt kê và nhấp vào Tiếp theo hai lần
- Chấp nhận Thỏa thuận cấp phép và nhấp vào Kết thúc.
Bước 3) Bạn có thể gặp phải Cảnh báo bảo mật, hãy nhấp vào “Vẫn cài đặt”.
Bước 4) Hiện nay, ở bước này bạn sẽ thiết lập các tùy chọn. Với sự trợ giúp của tùy chọn ưu tiên, bạn có thể sử dụng Python theo nhu cầu của dự án.
Đi tới Window> Preferences> PyDev > Thông dịch viên > Python Thông dịch viên.
Hãy đặt mặc định Python Trình thông dịch. Nó giống như bạn cần thiết lập trình biên dịch java để chạy một Java mã. Để thay đổi tên trình thông dịch, hãy nhấp vào nút Browse for python/pypy exe.
Bước 5) Ở bước này, hãy cung cấp “tên trình thông dịch” và đường dẫn tệp “exe” của Python.
- Nhấp vào 'Duyệt' và tìm python.exe nơi bạn đã cài đặt Python.
- Nhấp vào nút 'OK'.
- Chọn tất cả Thư mục và nhấp vào OK
- Nhấp vào “Áp dụng và Đóng”.
Bước 6) Tạo một dự án mới trong Python. Ở bước này,
- Click chuột phải PyDev Gói Explorer > Mới.
- Chọn tùy chọn khác.
- Chọn "PyDev > PyDev Dự án".
- Nhấn nút 'Tiếp theo'.
- Đặt tên cho dự án của bạn
- Nhấp vào "Hoàn tất".
Bạn có thể xem cái mới Python (PyDev) dự án được tạo.
Bước 7) Trong bước này,
Sau khi tạo 'PyDev Project', bạn sẽ tạo một cái mới Python Gói.
- Nhấp chuột phải vào Dự án> Mới> PyDev Gói.
- Đặt tên cho gói của bạn và nhấp vào Kết thúc.
Bước 8) Nếu bạn thấy trong ảnh chụp màn hình bên dưới, một gói mới sẽ được tạo.
Sau khi tạo gói mới, bước tiếp theo là tạoPyDev Mô-đun. Mô-đun này chứa một số Python các tập tin để khởi tạo. Các tệp hoặc chức năng này từ mô-đun có thể được nhập vào mô-đun khác. Vì vậy, sẽ không cần phải viết lại chương trình nữa.
Bước 9) Tạo một cái mới PyDev mô-đun. Nhấp chuột phải vào gói> Mới> PyDev mô-đun.
Đặt tên cho Mô-đun của bạn và nhấp vào “Hoàn tất”.
Chọn Mẫu trống và nhấp vào “OK”.
Bước 10) Viết mã của bạn cho Selenium với Python như hình dưới đây
Cách tạo tập lệnh kiểm thử trong Selenium với Python
Với Selenium WebDriver với Python Ví dụ: chúng tôi đã tự động hóa “trang đăng nhập Facebook” bằng cách sử dụng Firefox người lái xe.
Selenium với Python Ví dụ 1: Đăng nhập vào Facebook
from selenium import webdriver from selenium.webdriver.common.keys import Keys user_name = "YOUR EMAILID" password = "YOUR PASSWORD" driver = webdriver.Firefox() driver.get("https://www.facebook.com") element = driver.find_element_by_id("email") element.send_keys(user_name) element = driver.find_element_by_id("pass") element.send_keys(password) element.send_keys(Keys.RETURN) element.close()
Ảnh chụp nhanh của mã
Giải thích mã
- Dòng mã 1: Từ trình quản trị web nhập mô-đun selen
- Dòng mã 2: Từ khóa nhập mô-đun selen
- Dòng mã 3: Người dùng là một biến sẽ được chúng ta sử dụng để lưu trữ giá trị của tên người dùng.
- Dòng mã 4: Biến “mật khẩu” sẽ được sử dụng để lưu trữ các giá trị của mật khẩu.
- Dòng mã 5: Trong dòng này, chúng ta đang khởi tạo “FireFox” bằng cách tạo ra một đối tượng của nó.
- Dòng mã 6: “Phương thức driver.get” sẽ điều hướng đến một trang do URL cung cấp. WebDriver sẽ đợi cho đến khi trang được tải hoàn toàn (nghĩa là sự kiện "tải" đã kết thúc), trước khi trả lại quyền kiểm soát cho thử nghiệm hoặc tập lệnh của bạn.
- Dòng mã 7: Ở dòng này, chúng ta đang tìm phần tử của hộp văn bản nơi mà “email” phải được viết.
- Dòng mã 8: Bây giờ chúng ta đang gửi các giá trị đến phần email
- Dòng mã 9: Tương tự với mật khẩu
- Dòng mã 10: Gửi giá trị tới phần mật khẩu
- Dòng mã 11: element.send_keys(Keys.RETURN) được sử dụng để nhấn enter sau khi các giá trị được chèn
- Dòng mã 12: Đóng
OUTPUT
Các giá trị của tên người dùng “guru99” và mật khẩu đã được nhập.
Trang Facebook sẽ đăng nhập bằng email và mật khẩu. Trang đã mở (xem hình ảnh bên dưới)
Selenium với Python VÍ DỤ 2: Đăng nhập vào Facebook & Kiểm tra tiêu đề
Trong ví dụ này,
- Chúng tôi sẽ mở một trang đăng nhập.
- Điền vào trường bắt buộc “tên người dùng” và “mật khẩu”.
- Kiểm tra tiêu đề trang
from selenium import webdriver from selenium.webdriver.support.ui import WebDriverWait # Step 1) Open Firefox browser = webdriver.Firefox() # Step 2) Navigate to Facebook browser.get("http://www.facebook.com") # Step 3) Search & Enter the Email or Phone field & Enter Password username = browser.find_element_by_id("email") password = browser.find_element_by_id("pass") submit = browser.find_element_by_id("loginbutton") username.send_keys("YOUR EMAILID") password.send_keys("YOUR PASSWORD") # Step 4) Click Login submit.click() wait = WebDriverWait( browser, 5 ) page_title = browser.title assert page_title == "Facebook"
Ảnh chụp nhanh mã
Giải thích mã:
- Dòng mã 1-2: Nhập gói selen
- Dòng mã 4: khởi Firefox bằng cách tạo một đối tượng
- Dòng mã 6: Nhận trang đăng nhập (Facebook)
- Dòng mã 8-10: Lấy tên người dùng, hộp nhập mật khẩu và nút gửi.
- Dòng mã 11-12: Nhập dữ liệu vào hộp nhập tên người dùng và mật khẩu
- Dòng mã 14: Nhấp vào nút "Gửi"
- Dòng mã 15: Tạo đối tượng chờ với thời gian chờ là 5 giây.
- Dòng mã 16: Lấy tiêu đề từ đối tượng “trình duyệt”.
- Dòng mã 17: Kiểm tra chuỗi tiêu đề đã ghi bằng “Facebook”
Tại sao phải chọn Python kết thúc Java in Selenium
Vài điểm có lợi Python kết thúc Java sử dụng với Selenium Là,
- Java các chương trình có xu hướng chạy chậm hơn so với Python chương trình.
- Java sử dụng dấu ngoặc nhọn truyền thống để bắt đầu và kết thúc các khối, trong khi Python sử dụng thụt lề.
- Java sử dụng kiểu gõ tĩnh, trong khi Python được gõ động.
- Python đơn giản và nhỏ gọn hơn so với Java.
Tổng kết
- Selenium là một nền tảng web mã nguồn mở công cụ tự động hóa.
- Python ngôn ngữ được sử dụng với Selenium để thử nghiệm. Nó ít dài dòng hơn và dễ sử dụng hơn bất kỳ ngôn ngữ lập trình nào khác
- Python API cho phép bạn kết nối với trình duyệt thông qua Selenium
- Selenium có thể gửi tiêu chuẩn Python lệnh cho các trình duyệt khác nhau, bất chấp sự khác biệt trong thiết kế trình duyệt của chúng.