断言与验证 Selenium IDE
⚡ 智能摘要
Selenium IDE 的脚本和命令功能允许测试人员使用 Selenese(IDE 的轻量级命令语言)录制、编辑和回放浏览器操作。本文将介绍如何录制脚本、手动编写 Selenese 代码、在 Assert 和 Verify 之间进行选择,以及如何使用断点进行调试。

我们将使用 Mercury 旅游网站是我们测试的Web应用程序。它是一个在线航班预订系统,包含了本教程所需的所有元素。它的基础 URL is https://demo.guru99.com/test/newtours/.
现在让我们创建我们的第一个测试脚本 Selenium IDE 使用最常用的方法——录制。之后,我们将使用回放功能执行脚本。
注意: 本教程采用经典方法 Firefox-只要 Selenium 使用 Firebug 的 IDE 1.x 版本介绍 Selenese 的基础知识。Firebug 已于 1999 年停用。 Firefox 57,以及现代 Selenium IDE 现在是 Chrome / Firefox / Edge浏览器扩展程序,采用不同的用户界面。下文所述的Selenese概念、命令类型和调试功能仍然直接适用于新的IDE。
通过录制创建脚本
步骤1)
- 正式上线 Firefox 和 Selenium IDE。
- 输入我们基础值的值 URL:
https://demo.guru99.com/test/newtours/. - Toggl打开录制按钮(如果默认情况下未打开)。
步骤2) In Firefox, 导航 https://demo.guru99.com/test/newtours/. Firefox 应该会跳转到类似下图的页面。
步骤3)
- 在页面内的任何空白处单击鼠标右键——例如,在…… Mercury 左上角是旅游标志。点击后会显示…… Selenium IDE上下文菜单。 不要 点击任何超链接对象或图像。
- 点击 显示可用命令 选项。
- 选择
assertTitle exact: Welcome: Mercury Tours此命令检查页面标题是否正确。
步骤4)
- 在 用户名 文本框 Mercury 旅游,请输入无效用户名
invalidUNN. - 在 密码 在文本框中输入无效密码
invalidPWD.
步骤5) 点击 签到 按钮。 Firefox 应该会跳转到下面显示的页面。
步骤6) Toggl关闭录制按钮即可停止录制。您的脚本现在应该与下面的脚本类似。
步骤7) 现在保存录制的测试脚本。 文件 菜单中选择 保存测试用例,或按 按Ctrl+S.
步骤8)
- 选择目标文件夹,然后命名 测试用例 无效登录.
- 点击 已保存.
步骤9) 请注意,该文件已保存为 HTML 格式。
步骤10) 返回 Selenium IDE 并点击 回放 按下按钮即可执行整个脚本。 Selenium IDE 会忠实地重现每一个操作。
简介 Selenium 命令 – Selenese
Selenese 是驱动该引擎的脚本语言。 Selenium 集成开发环境(IDE)。规则很简单:
- 每个 Selenese 命令最多接受两个参数——一个 目标 配备 折扣值.
- 参数并非总是必需的,具体数量取决于命令。
命令类型
塞勒涅语将命令分为三类。每一类在脚本中都扮演着不同的角色。
| 行动 | 直接与页面元素交互的命令。例如: click 与你点击的元素进行交互; type 将一个值放入文本框中,文本框会将该值显示出来,从而实现双向交互。 |
| 存取器 | 将值存储到变量中的命令。例如: storeTitle 只读取页面标题并保存——不会更改页面上的任何内容。 |
| 断言 | 用于验证条件的命令。Selenese 提供了三种断言方式: 断言 测试失败时停止测试。 确认 记录故障并继续执行, 等待 暂停直到条件为真(默认超时时间为 30 秒,可在“选项”>“常规”下配置)。 |
断言与验证 Selenium
下图对比了 Assert 命令和 Verify 命令在测试过程中检查失败时的运行时行为。
常用命令
| 命令 | 参数数量 | 描述 |
|---|---|---|
| open | 0-2 | 使用以下方式打开页面 URL. |
| 点击/点击并等待 | 1 | 点击指定元素。 |
| 类型/类型键 | 2 | 输入一系列字符。 |
| 验证标题 / 断言标题 | 1 | 将实际页面标题与预期值进行比较。 |
| 验证文本存在 | 1 | 检查给定文本是否在页面中找到。 |
| 验证元素是否存在 | 1 | 检查是否存在特定元素。 |
| 验证表 | 2 | 将表的内容与预期值进行比较。 |
| 等待页面加载 | 1 | 暂停执行,直到页面加载完成。 |
| 等待元素出现 | 1 | 暂停执行,直到出现指定的元素。 |
使用 Firebug 手动创建脚本
现在让我们手动重新创建相同的测试用例。ping 这些命令。本教程使用 Firebug 来检查元素定位器。(在现代 Selenium 如果使用 IDE,请使用浏览器内置的开发者工具,而不是 Firebug。)
步骤1) 可选 Firefox 和 Selenium IDE。输入基本信息 URL https://demo.guru99.com/test/newtours/录制按钮必须处于关闭状态。
步骤2) 单击编辑器中最上面的空白行。
类型 open 在命令文本框中输入命令,然后按 Enter 键。
步骤3) 导航 Firefox 到基地 URL 并激活 Firebug。在 IDE 编辑器中,选择下面一行 open 命令和类型 assertTitle为了确保准确性,请使用自动完成建议。
步骤4) 在 Firebug 中,展开 <head> 标签显示 <title>点击标题值(欢迎: Mercury 旅行路线)并将其粘贴到 Target 编辑器中的字段。
步骤5) 点击编辑器中的第三个空白行,然后输入 type 在“命令”字段中。在 Firebug 中,单击 检查 按钮。
点击用户名文本框。Firebug 会自动显示匹配的 HTML 元素。
步骤6) “用户名”文本框没有 ID,但它有一个 NAME 属性。复制 NAME 值并将其粘贴到 Target 现场 Selenium IDE。
仍然在 Target 字段,前缀 userName - name= so Selenium IDE 会定位到 NAME 属性为……的元素。 userName.
类型 invalidUN 在“值”字段中。您的脚本现在有了第三条命令。 Selenium IDE区分大小写,因此请将值和属性名称与应用程序中显示的名称完全一致。
步骤7) 添加第四条命令ping type 在“命令”字段中。使用 Firebug 的 检查 密码文本框上的按钮。
粘贴 NAME 属性(password) 进入 Target 字段,前缀为 name=并将值设置为 invalidPW.
步骤8) 添加第五条命令ping clickAndWait 在“命令”字段中。使用 Firebug 的 检查 在“登录”按钮上。
粘贴 NAME 值(login) 进入 Target 田野 name= 字首。
步骤9) 像之前一样保存测试用例。
使用“查找”按钮
此 找到最适合您的地方 按钮 Selenium IDE确认输入的值 Target 该字段实际上与页面上的一个 UI 元素相匹配。
打开 无效登录 执行上一节中的测试用例,然后单击任何带有 a 的命令 Target 入口——例如,第三个命令。
点击 找到最适合您的地方用户名文本框位于 Mercury 旅游页面会短暂高亮显示。
亮点证实了这一点 Selenium IDE 已正确解析定位器。如果高亮显示的元素错误(或未高亮显示任何元素),则需要更正脚本中的定位器。
执行命令
执行命令会运行脚本中的一行,而不会运行整个测试用例。 点击你想运行的线路,然后选择 操作 > 执行此命令 从菜单中或按 X 在键盘上。
步骤1) 确保浏览器已开启。 Mercury 旅游线路主页。点击您想乘坐的线路——例如, type | userName | invalidUN.
步骤2) 媒体中心 X 在键盘上。
步骤3) 页面上的用户名文本框已填充内容 invalidUN.
以这种方式执行命令取决于页面。 Firefox 正在显示。 在……上运行相同的命令 Google的主页会失败,因为没有名为“”的字段 userName 有。
起点
起点说明 Selenium IDE 指示从哪一行开始执行。 快捷键是 S.
在上面的例子中,播放从第三行开始(type | password | invalidPW). 测试脚本只能有一个起始点。 与执行命令类似,起始点取决于当前显示的页面,如果页面错误,则会失败。
断点
断点表明 Selenium IDE 可以自动在指定行暂停测试。快捷键是 B.
黄色高亮部分显示的是暂停的步骤。 一个测试用例可以有多个断点。
步骤
此 步骤 该命令会在暂停的测试用例之后运行下一行代码。将其与断点结合使用,可以一次执行一条命令来逐步执行脚本。
点击“步骤”之前。 测试用例暂停在以下行 clickAndWait | login. |
|
点击“步骤”后。 此 clickAndWait | login 命令运行,执行暂停,等待下一个命令(verifyTitle | Sign-on: Mercury Tours即使没有断点,下一行也会暂停——这就是 Step 的作用。 |
在源视图中使用其他格式时需要注意的重要事项
Selenium IDE 1.x 目前仅能稳定支持 HTML 格式——其他格式仍处于实验阶段。 不建议在非 HTML 源代码视图中创建或编辑测试。截至 1.9.1 版本,已知问题如下:
- 如果不切换回 HTML 模式,就无法使用播放功能或切换回表格视图。
- 在源代码视图中添加命令最安全的方法是录制命令。
- 在源代码视图中进行的手动编辑,在切换到其他格式时会丢失。
- 您可以在源代码视图中保存测试用例,但是 Selenium IDE可能无法重新打开它。
将 Selenese 测试转换为其他语言的推荐方法是: 文件 > 导出测试用例为… 菜单,而不是源代码视图。

.png)
.png)
.png)














.png)










.png)
.png)






