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 市场。帮助 > 安装新软件
下一步是安装 eclipse 的“pydev IDE”。
步骤2) 在此步骤中,
- 在 Work with 中搜索“http://pydev.org/updates”,然后
- 选择所有列出的项目并单击“下一步”两次
- 接受许可协议并单击“完成”。
步骤3) 您可能会遇到安全警告,请单击“仍然安装”。
步骤4) 现在, 在此步骤中,您将设置首选项。借助首选项选项,您可以使用 Python 根据项目需要。
转到窗口 > 首选项 > PyDev > 翻译 > Python 口译员。
让我们设置默认值 Python 解释器。就像你需要设置 java 编译器来运行 Java 代码。要更改解释器名称,请单击浏览 python/pypy exe 按钮。
步骤5) 在此步骤中,给出“解释器名称”和“exe”文件路径 Python.
- 单击“浏览”并找到安装的 python.exe Python.
- 点击“确定”按钮。
- 选择所有文件夹并单击“确定”
- 点击“应用并关闭”。
步骤6) 在中创建新项目 Python.在此步骤中,
- 右键点击 PyDev 包资源管理器 > 新建。
- 选择其他选项。
- 选择“PyDev > PyDev 项目”。
- 按“下一步”按钮。
- 命名您的项目
- 点击“完成”。
你可以看到新的 Python (PyDev) 项目已创建。
步骤7) 在此步骤中,
创建后'PyDev 项目”,你将创建一个新的 Python 包。
- 右键单击项目>新建> PyDev 包。
- 命名您的包并单击“完成”。
步骤8) 如果您看到下面的屏幕截图,则表明已创建了一个新包。
创建新包后,下一步是创建PyDev 模块。模块包含一些 Python 文件进行初始化。模块中的这些文件或函数可以导入到其他模块中。因此,无需重新编写程序。
步骤9) 创建一个新的 PyDev 模块。右键单击包 > 新建 > PyDev 模块。
命名您的模块并单击“完成”。
选择空模板并单击“确定”。
步骤10) 编写代码 Selenium - Python 如下图所示,
如何在 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()
代码快照
代码说明
- 代码行 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”和密码的值。
Facebook 页面将使用电子邮件和密码登录。页面已打开(见下图)
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"
代码快照
代码说明:
- 代码行1-2: 导入 selenium 包
- 代码第 4 行: 初始化 Firefox 通过创建一个对象
- 代码第 6 行: 获取登录页面(Facebook)
- 代码行8-10: 获取用户名、密码输入框和提交按钮。
- 代码行11-12: 在用户名和密码输入框中输入数据
- 代码第 14 行: 点击“提交”按钮
- 代码第 15 行: 创建超时时间为 5 秒的等待对象。
- 代码第 16 行: 从“浏览器”对象捕获标题。
- 代码行17: 使用“Facebook”测试捕获的标题字符串
为什么选择 Python 超过 Java in Selenium
几点支持 Python 超过 Java 用于 Selenium 是,
- Java 程序运行速度通常比 Python 程式。
- Java 使用传统的括号来开始和结束块,而 Python 使用缩进。
- Java 采用静态类型,而 Python 是动态类型的。
- Python 相比之下更简单、更紧凑 Java.
总结
- Selenium 是一个基于网络的开源 自动化工具.
- Python 语言的使用 Selenium 用于测试。它比任何其他编程语言都简洁且易于使用
- - Python API 可让你通过以下方式连接浏览器 Selenium
- Selenium 可以发送标准 Python 命令到不同的浏览器,尽管浏览器的设计有所不同。