Selenium Python WebDriver 示例教程

Selenium - Python

Selenium 支持 Python 因此可以用作 Selenium WebDriver 具有 Python 供测试用。

  • Python 与其他编程语言相比很容易,而且简洁得多。
  • - Python API 可让你通过以下方式连接浏览器 Selenium.
  • Selenium 发送标准 Python 命令到不同的浏览器,尽管浏览器的设计有所不同。

你可以跑 Selenium - Python 脚本用于 Firefox、Chrome、IE 等不同的 Opera廷系统。

什么是 Python?

Python 是一种高级面向对象脚本语言。它的设计非常用户友好。 Python 使用简单的英文关键字,易于理解。它的语法复杂性比其他任何语言都要低 编程语言.

请参阅下表中的一些示例。

关键字 用法
ELIF 否则,如果 否则,如果
其他 其他 如果:X;否则:Y;否则:J
这样做,如果发生异常, 除了 ValueError,a:打印 a
EXEC 运行字符串为 Python 执行‘打印“hello world!”’

什么是 Selenium?

Selenium 是一个测试 Web 应用程序的工具。您可以通过多种方式进行测试,例如

  • 允许它点击按钮
  • 在结构中输入内容
  • 浏览您的网站以检查一切是否“正常”等等。

如何安装和配置 PyDev in Eclipse

PyDev is Python 开发环境 Eclipse.

步骤1) 得到了 Eclipse 市场。帮助 > 安装新软件

安装和配置 PyDev in Eclipse

下一步是安装 eclipse 的“pydev IDE”。

步骤2) 在此步骤中,

  1. 在 Work with 中搜索“http://pydev.org/updates”,然后
  2. 选择所有列出的项目并单击“下一步”两次
  3. 接受许可协议并单击“完成”。

安装和配置 PyDev in Eclipse

步骤3) 您可能会遇到安全警告,请单击“仍然安装”。

安装和配置 PyDev in Eclipse

步骤4) 现在, 在此步骤中,您将设置首选项。借助首选项选项,您可以使用 Python 根据项目需要。

转到窗口 > 首选项 > PyDev > 翻译 > Python 口译员。

安装和配置 PyDev in Eclipse

让我们设置默认值 Python 解释器。就像你需要设置 java 编译器来运行 Java 代码。要更改解释器名称,请单击浏览 python/pypy exe 按钮。

安装和配置 PyDev in Eclipse

步骤5) 在此步骤中,给出“解释器名称”和“exe”文件路径 Python.

  1. 单击“浏览”并找到安装的 python.exe Python.
  2. 点击“确定”按钮。
  3. 选择所有文件夹并单击“确定”
  4. 点击“应用并关闭”。

安装和配置 PyDev in Eclipse

步骤6) 在中创建新项目 Python.在此步骤中,

  1. 右键点击 PyDev 包资源管理器 > 新建。
  2. 选择其他选项。

安装和配置 PyDev in Eclipse

  1. 选择“PyDev > PyDev 项目”。
  2. 按“下一步”按钮。

安装和配置 PyDev in Eclipse

  1. 命名您的项目
  2. 点击“完成”。

安装和配置 PyDev in Eclipse

你可以看到新的 Python (PyDev) 项目已创建。

步骤7) 在此步骤中,

创建后'PyDev 项目”,你将创建一个新的 Python 包。

  1. 右键单击项目>新建> PyDev 包。
  2. 命名您的包并单击“完成”。

安装和配置 PyDev in Eclipse

安装和配置 PyDev in Eclipse

步骤8) 如果您看到下面的屏幕截图,则表明已创建了一个新包。

安装和配置 PyDev in Eclipse

创建新包后,下一步是创建PyDev 模块。模块包含一些 Python 文件进行初始化。模块中的这些文件或函数可以导入到其他模块中。因此,无需重新编写程序。

步骤9) 创建一个新的 PyDev 模块。右键单击包 > 新建 > PyDev 模块。

安装和配置 PyDev in Eclipse

命名您的模块并单击“完成”。

安装和配置 PyDev in Eclipse

选择空模板并单击“确定”。

安装和配置 PyDev in Eclipse

步骤10) 编写代码 Selenium - Python 如下图所示,

安装和配置 PyDev in Eclipse

如何在 Selenium - Python

该 Selenium WebDriver 具有 Python 例如,我们使用以下方法实现了“Facebook 登录页面”的自动化 Firefox 驱动程序。

Selenium - Python 示例 1:登录 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()

代码快照

在中创建测试脚本 Selenium - Python

代码说明

  • 代码行 1:从 selenium 模块导入 webdriver
  • 代码行 2:从 selenium 模块导入 Keys
  • 代码行 3:User 是一个变量,我们用它来存储用户名的值。
  • 代码行 4:变量“password”将用于存储密码的值。
  • 代码行 5:在这一行中,我们初始化“FireFox”通过使其成为对象。
  • 代码行 6: “driver.get 方法”将导航到 URL 指定的页面。WebDriver 将等到页面完全加载(即“onload”事件已放开),然后再将控制权返回给您的测试或脚本。
  • 代码行 7:在此行中,我们找到必须写入“电子邮件”的文本框元素。
  • 代码行 8:现在我们将值发送到电子邮件部分
  • 代码行 9:密码也一样
  • 代码行 10:将值发送到密码部分
  • 代码行 11:element.send_keys(Keys.RETURN) 用于在插入值后按回车键
  • 代码行 12: 关闭

OUTPUT

输入的用户名“guru99”和密码的值。

在中创建测试脚本 Selenium - Python

Facebook 页面将使用电子邮件和密码登录。页面已打开(见下图)

在中创建测试脚本 Selenium - Python

Selenium - Python 示例 2:登录 Facebook 并检查标题

在这个例子中,

  • 我们将打开一个登录页面。
  • 填写必填字段“用户名”和“密码”。
  • 检查页面标题
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"

代码快照

在中创建测试脚本 Selenium - Python

代码说明:

  • 代码行1-2: 导入 selenium 包
  • 代码第 4 行: 初始化 Firefox 通过创建一个对象
  • 代码第 6 行: 获取登录页面(Facebook)
  • 代码行8-10: 获取用户名、密码输入框和提交按钮。
  • 代码行11-12: 在用户名和密码输入框中输入数据
  • 代码第 14 行: 点击“提交”按钮
  • 代码第 15 行: 创建超时时间为 5 秒的等待对象。
  • 代码第 16 行: 从“浏览器”对象捕获标题。
  • 代码行17: 使用“Facebook”测试捕获的标题字符串

为什么选择 Python 超过 Java in Selenium

几点支持 Python 超过 Java 用于 Selenium 是,

  1. Java 程序运行速度通常比 Python 程式。
  2. Java 使用传统的括号来开始和结束块,而 Python 使用缩进。
  3. Java 采用静态类型,而 Python 是动态类型的。
  4. Python 相比之下更简单、更紧凑 Java.

总结

  • Selenium 是一个基于网络的开源 自动化工具.
  • Python 语言的使用 Selenium 用于测试。它比任何其他编程语言都简洁且易于使用
  • - Python API 可让你通过以下方式连接浏览器 Selenium
  • Selenium 可以发送标准 Python 命令到不同的浏览器,尽管浏览器的设计有所不同。