在本文中,通过Firefox浏览器上的示例学习Selenium IDE:

我们将使用的网址是“https://accounts.google.com”作为测试程序,通过本文你会

了解:

• 创建第一个Selenium IDE脚本

• 过程#1:记录测试脚本

• 过程#2:回放/执行测试脚本

• 流程#3:保存测试脚本

• 使用Selenium IDE的常用功能

• 使用“执行此命令”选项

• 使用起点

• 使用断点

• 使用查找按钮

• 使用其他格式

• Selenium IDE命令

• 结论

一. 创建第一个Selenium IDE脚本

现在让我们使用Selenium IDE创建我们的第一个脚本。

整个脚本创建过程可以分为3个块:

过程#1:记录:Selenium IDE帮助用户记录用户与浏览器的交互,因此记录的操作的整个过程作为一个整体被称为Selenium IDE脚本。

过程#2:回放:在本节中,我们对记录的脚本进行回放操作,以验证和监控其稳定性和成功率。

流程#3:保存:一旦我们记录了一个比较稳定的脚本,我们将其保存以用于将来的运行和回归

具体的过程

过程#1:记录一个测试脚本

场景:

打开网址“http://www.google.com”。

断言应用程序的标题

输入有效的用户名和密码,并提交详细信息登录。

验证用户是否重定向到主页。

步骤1—启动Firefox,从菜单栏打开Selenium IDE。

步骤2-在基础URL文本框中输入被测试应用程序的地址(“http://www.google.com”)。

第3步-默认情况下,记录按钮处于ON状态。如果它处于关闭状态,打开它。

步骤4-在Firefox中打开被测试的应用程序(https://..google.com)。

步骤5—验证应用程序标题是否正确。除了超链接或图像,右键单击页面上的任何地方,将打开Selenium IDE上下文菜单,选择显示可用命令“Show Available Commands”选项,选择“assertTitle Sign in–Google Accounts”选项来验证页面标题。

只要我们点击“assertTitle Sign in–Google Accounts”选项,测试步骤就会包含在Selenium IDE编辑器中。

步骤6——在Gmail的“email”文本框中输入有效的用户名

步骤7——在Gmail的“密码”文本框中输入有效密码。在Selenium IDE测试编辑器中 我们可以看到相同的用户操作的模拟。注意,为了便于理解,我已经创建了测试数据。建议读者创建自己的数据而不要使用这些数据。

第8步-点击“登录”按钮完成登录过程。如果输入的测试数据正确,用户应该重定向到主页。

步骤9-最后,点击 recording stopped 按钮,变为OFF状态来结束记录会话。下面是记录的脚本

过程#第2步:回放/执行测试脚本

现在我们已经创建了第一个Selenium IDE脚本,点击回放按钮来执行脚本,看看脚本是否足够稳定。

执行后,所有成功运行的测试步骤都将用绿色进行颜色编码,测试用例窗格中也是绿色标记成功的步骤。

对于不成功的执行或测试用例失败,失败的测试步骤将以红色突出显示。测试用例窗格会将测试用例执行标记为失败。

进程3:保存测试脚本

步骤1-单击File菜单并选择“Save Test Case”选项保存测试脚本

步骤2-系统将提示我们浏览或输入所需的位置来保存测试用例并提供测试脚本名称。添加测试名称为“Gmail登录”,点击“保存”按钮。

测试脚本可以在上述步骤中提供的位置找到。注意,测试脚本以HTML格式保存。

二. 使用Selenium IDE的常用功能

设置执行速度

在测试web应用程序时,我们会遇到执行的操作会触发页面加载的场景,因此,在处理这种情况时,为了在回放这些测试场景时避免失败,可以将执行速度设置为最小。请参考下图。

三. 使用“执行此命令”选项

Selenium IDE允许用户在整个测试脚本中执行单个测试步骤,而不执行整个测试脚本。 “执行此命令”选项可以在我们希望调试/查看特定测试步骤的行为时使用。 “执行此命令”选项可使用以下四种方式:

1. 使用菜单栏中的操作选项卡

2. 使用快捷键(“X”)

3. 右键单击测试步骤并选择“执行此命令”

4. 双击测试步骤

在所有上述情况下,根据需要选择想要执行的测试步骤

四. 使用起点

Selenium IDE允许用户在测试脚本中指定起始点。

开始点指向我们希望从哪里开始执行测试脚本

当我们不希望从头开始执行整个测试脚本,而是定制脚本以便从某个步骤执行时,可以使用开始点

起始点可以通过以下三种方式来设置和清除:

1. 使用菜单栏中的操作选项卡

2. 使用快捷键(“S”)

3. 右键单击测试步骤并选择“设置/清除起始点”。‘





4. 一旦用户标记了测试步骤以指示起点,图标就会被附加到该测试步骤上

现在,无论何时我们执行测试脚本,它的执行都将从测试脚本的起点,即第四行(类型|id=Passwd|TestSelenium)开始。

五. 使用断点

Selenium IDE允许用户在测试脚本中指定断点。

断点可设置Selenium IDE在何处暂停测试脚本。当我们希望以较小的逻辑块中断执行,可以使用断点。

断点可以通过以下三种方式来设置和清除:

使用菜单栏中的操作选项卡

右键单击测试步骤并选择“切换断点”。

使用快捷键(“B”)

一旦用户标记了测试步骤以指示断点,图标就会被附加到该断点。

现在,每当我们执行测试脚本时,执行都会在测试脚本的断点(即,第四行(类型|id=Passwd|TestSelenium))暂停

设置多个断点

Selenium IDE允许用户在单个测试脚本中应用多个断点。一旦执行测试脚本的第一部分,脚本就在到达断点时暂停。为了执行后续的测试步骤,用户需要依次执行后续的每个测试步骤。

在上面的测试脚本中,执行暂停在“assertTitle|Sign in–Google Accounts”行。执行这个测试步骤之后,该控件按照顺序“type|id=Email|TestSelenium1607@gmail.com”移动到下一个测试步骤。

因此,用户需要正确地执行此测试步骤。所以,该特性允许用户花费更多的时间执行每个步骤,并检查之前执行的测试步骤的结果

Note

在一个脚本中,可以有尽可能多的断点。

断点可以以相同的方式被清除

六. 使用查找按钮

Selenium IDE测试脚本最重要的一个方面是在web页面中查找和定位web元素。有时,有些web元素具有与之相关联的类似属性,这使得用户很难惟一地标识特定的web元素。

为了解决这个问题,Selenium IDE提供了一个Find按钮。Find按钮用于确定目标测试框中提供的定位器值是否正确,并标识GUI上标识制定的web元素。

单击目标文本框旁边的Find按钮。相应的web元素将以黄色突出显示,并在其周围显示荧光绿色边框。如果没有突出显示或错误的web元素,我们就需要纠正这个问题,需要强加一些其他的定位器值。

通过find 过程,可以使我们确定GUI上正确的web元素相对应的目标值

七. 使用其他格式

将Selenium IDE测试脚本转换为其他编程语言

Selenium IDE支持将测试脚本从默认类型(HTML)转换为一组编程语言。转换后的测试脚本不能使用Selenium IDE回放,除非它被还原回HTML。因此,只有在从Selenium套件的其他工具执行转换时,转换才是有意义的

步骤1 -单击菜单栏下的options选项卡,并在format选项下选择编程语言格式

步骤2 -一旦我们选择了我们想要的编程语言格式(在我们的例子中是“Java / JUnit4 / WebDriver”),就会出现一个提示框,在继续之前,最好将测试用例复制一份。

这样,我们就可以使用WebDriver执行上述转换的代码

Note:不建议从源代码视图编辑或修改Selenium IDE测试脚本,这样操作的话可能会引发一些已知的问题。

八. Selenium IDE命令

每一个IDE测试步骤可以被拆分为3部分

命令 目标 值

IDE命令类型

Selenium IDE命令有三种风格。Selenium IDE中的每个测试步骤都属于以下类别中的一种

动作

访问器

断言

动作

动作是那些通过改变应用程序的状态或注入一些测试数据与应用程序直接交互的命令。

例如,“type”命令允许用户像文本框一样直接与web元素交互。它允许用户在文本框中输入特定的值,就像输入值时一样,并显示在UI上

另一个例子是“click”命令。“click”命令允许用户操作应用程序的状态。

在操作类型命令失败的情况下,测试脚本执行将停止,其余的测试步骤将不会执行。

访问器

访问器是允许用户将某些值存储到用户定义的变量中的命令。这些存储值后续可以用于创建断言和验证。

例如,“storeAllLinks”读取并将web页面中可用的所有超链接存储到用户定义的变量中。如果要存储多个值,则该变量应设置为数组类型。

断言

断言与访问器非常相似,因为它们不直接与应用程序交互。断言用于验证应用程序的当前状态。

断言的形式:

1 assert—“assert”命令是程序运行过程中失败的情况下终止测试执行。

2 verify—“verify”命令命令是程序运行过程中失败的情况下继续执行测试脚本。

3 wait for—“waitFor”命令在执行下一个测试步骤之前等待满足某个条件,比如加载的页面,要呈现的元素。即使在规定的等待时间内没有满足条件,它也允许测试继续进行。

在本问中,我们试图让您熟悉Selenium IDE脚本的创建。我们还简要介绍了各种Selenium特性的使用。

以下是本文的重点:

在Selenium IDE中创建测试脚本,并且可以使用记录和回放特性

脚本创建可以分为三个过程—记录、回放和保存测试脚本。

Selenium IDE允许用户在测试脚本中执行单个测试步骤,而无需执行整个测试脚本。“执行此命令” “Execute this command”可以实现

用户可以通过工具栏中的选项设置执行速度。

用户可以将任何测试步骤定义为一个起点。所以,执行总是从你定义的起点开始执行

用户可以设置多个断点来在某个测试步骤暂停执行。

用户可以使用find查找并验证所提供的目标值是否与web页面中的正确web元素相对应

不建议将源视图更改为其他格式,因为可能会丢失数据。

在将测试脚本转换为其他非HTML格式之前,请记住保存HTML测试脚本的副本。

命令主要有三种类型—操作、访问器和断言。

操作直接与应用程序交互并更改其状态。

访问器用于将元素的属性存储在用户定义的变量中。

断言用于检查是否满足指定的条件。

断言可以进一步分类为verify、assert和wait For命令。

验证确保即使验证失败,测试脚本的执行也不会停止。

Assert在失败的情况下,测试脚本停止执行。

wait For在规定的时间内等待某一条件的满足,即使不满足也会往下执行

常用的Selenium IDE命令有:

• open

• assertTitle / VerifyTitle

• AssertForElementPresent / VerifyForElementPresent

• AssertForTextPresent / VerifyForTextPresent

• type / typeAndWait / sendKeys

• click /clickAt / clickAndWait

• waitForPageToLoad

• waitForElementPresent

• chooseOkOnNextConfirmation / chooseCancelOnNextConfirmation

Selenium IDE工具:火狐浏览器实例讲解IDE命令的更多相关文章

  1. Python安装selenium,配置火狐浏览器环境

    想用Python去编写自动化脚本进行网页访问时,遇到了一些问题, File "C:\Python34\lib\site-packages\selenium-3.0.0b2-py3.4.egg ...

  2. HiJson工具 && 火狐浏览器中的jsonHandle插件(以及乱码问题的解决)-->来转换json串的格式

    原文:http://blog.csdn.net/cjm2484836553/article/details/72453907 版权声明:本文为博主原创文章,未经博主允许不得转载.   目录(?)[-] ...

  3. 14.Selenium+Python使用火狐浏览器问题解决

    一开始使用的是IE浏览器作为自动化浏览器,但是由于想学习无头模式,故选择FireFox作为浏览器,以下是遇到的相关问题: 1.简单代码 from selenium import webdriver d ...

  4. selenium-java,selenium版本和火狐浏览器版本对应关系

    selenium3.5.0,firefox57,geckodriver-v0.19.1

  5. Python+Selenium基础篇-打开和关闭火狐浏览器

    本节介绍如何初始化一个webdriver实例对象driver,然后打开和关闭firefox浏览器.要用selenium打开fiefox浏览器.首先需要去下载一个driver插件geckodriver. ...

  6. Selenium启动最新的火狐浏览器异常排查

    报错如下: WebDriverException: Message: 'Can\'t load the profile 打开谷歌浏览器和IE浏览器均正常 网上查阅资料,疑似与selenium版本相关联 ...

  7. Python+Selenium基础篇之2-打开和关闭火狐浏览器

    本节介绍如何初始化一个webdriver实例对象driver,然后打开和关闭firefox浏览器.要用selenium打开fiefox浏览器.首先需要去下载一个driver插件geckodriver. ...

  8. 《手把手教你》系列基础篇之(四)-java+ selenium自动化测试- 启动三大浏览器(下)基于Maven(详细教程)

    1.简介 上一篇文章,宏哥已经在搭建的java项目环境中实践了,今天就在基于maven项目的环境中给小伙伴们 或者童鞋们演示一下. 2.eclipse中新建maven项目 1.依次点击eclipse的 ...

  9. Python+selenium打开或关闭浏览器

    Python+selenium打开或关闭浏览器 一.打开或关闭火狐浏览器 1.       初始化一个webdriver实例对象driver,然后打开和关闭firefox浏览器.要用selenium打 ...

  10. 《手把手教你》系列基础篇之(三)-java+ selenium自动化测试- 启动三大浏览器(上)(详细教程)

    1.简介 前边宏哥已经将环境搭建好了,今天就在Java项目搭建环境中简单地实践一下: 启动三大浏览器.按市场份额来说,全球前三大浏览器是:IE.Firefox.Chrome.因此宏哥这里主要介绍一下如 ...

随机推荐

  1. bouncycastle(BC) 实现SM2国密加解密、签名、验签

    https://www.cnblogs.com/dashou/p/14656458.html SM2国密加解密一个类就够了 <dependency> <groupId>org. ...

  2. .NET 9 增强 OpenAPI 规范

    在 .NET 9 的更新中,微软增强了原生 OpenAPI.这一变化表明 .NET 正在更加拥抱开放标准,同时让开发者体验更加轻松高效.本文将探讨为何进行这一更改.OpenAPI 的优势,以及如何在 ...

  3. Qt编写安防视频监控系统55-布局方案

    一.前言 这是近期对视频监控系统做得最大的改动,采用了QMainWindow停靠窗体悬停窗体,极大的增强了拓展性,主界面中的各种小模块全部采用了悬停模块,最后不同的工作模式.不同的运行状态(全屏状态. ...

  4. 通过shadow来更改ubuntu密码,并且使用frp组网

    局域网搜索 pings 所有设备找到在线设备并登录网页 :: 作者:mao 时间:2024 11.30 @echo off chcp 65001 >nul :: 启用延迟环境变量扩展 setlo ...

  5. 清除 TortoiseSVN已存储的连接URL地址

    Eclipse 清除 SVN 的 URL 历史记录1.关闭 Eclipse2.进入 工程目录 \.metadata\.plugins\org.tigris.subversion.subclipse.c ...

  6. Docker简易操作

    Docker简易操作 1.启动docker sudo docker run [OPTIONS] IMAGE [COMMAND] [ARG...] sudo docker run -d -p 8009: ...

  7. java设计模式---总则

    设计模式总则 一.概述 1.什么是设计模式 设计模式是一套被反复使用.多数人知晓的.经过分类编目的.代码设计经验的总结. 解释下: 分类编目:就是说可以找到一些特征去划分这些设计模式,从而进行分类. ...

  8. Pyinstaller打包工具

    本篇博客主要介绍的是pyinstaller在windows下的基本使用和基础避坑 在windows中使用pyinstaller工具打包时会出现一个问题,在打包列表会看到这样的警告信息: django. ...

  9. Django项目实战:创建和迁移数据库

    Django项目实战:创建和迁移数据库 一.配置数据库 Django默认使用SQLite数据库,但你也可以选择其他数据库如MySQL.PostgreSQL等.在./settings.py文件中,你可以 ...

  10. 识别与防御CSRF漏洞

    识别与防御CSRF漏洞 CSRF(Cross-Site Request Forgery,跨站请求伪造),通常也被称为"一键攻击"或"会话劫持",其缩写为CSRF ...