# 7 小时 Selenium IDE – Selenium 命令一览

> 原文： [https://javabeginnerstutorial.com/selenium/7h-ide-selenium-commands/](https://javabeginnerstutorial.com/selenium/7h-ide-selenium-commands/)

欢迎来到 Selenium IDE 上的另一篇有趣的文章。 今天，让我们解开记录测试场景时在测试脚本窗格中看到的命令之谜。 示例如下

![Test Script](img/5e6a31e752f4393906936f5e686f5d93.png)

大字警报！ **Selenese** – 就是一组 Selenium 命令。 这些命令的序列构成一个*测试脚本*。 每行是一个 Selenium 命令，具有三个部分，即命令，目标和值。

*命令* - 做什么/需要执行什么动作

*目标* – 必须在何处（网络元素）进行操作

*值* – 必须将哪些数据传递给目标

一些命令并不总是需要目标和值。 例如，“关闭”命令用于关闭窗口。 而“点击”命令需要一个目标，而“类型”命令则需要目标和价值。

Selenium 命令具有三种不同的样式：*操作，访问器和断言*。

## 动作：

这些命令通过直接与 Web 元素进行交互来操纵应用的状态。 如果操作失败或发生错误，则当前测试执行将停止。 该测试脚本中的以下命令将不会执行。

| **命令** | **说明** |
| `type(locator, value)` | 设置输入字段的值，就像您键入它一样。 |
| `click(locator)` | 单击链接，按钮，复选框或单选按钮 |
| `close()` | 模拟用户单击弹出窗口或选项卡的标题栏中的“关闭”按钮 |
| `echo(message)` | 将指定的消息打印到 Selenese 表中的第三个表单元格中。 对于调试很有用。 |
| `focus(locator)` | 将焦点移到指定的元素； 例如，如果元素是输入字段，则将光标移动到该字段。 |
| `open(url)` | 在测试框架中打开一个 URL。 这既接受相对 URL，也接受绝对 URL。 |
| `setTimeout(timeout)` | 指定 Selenium 等待操作完成的时间。 |

这些操作大多数都带有后缀“`AndWait`”，例如 “`clickAndWait`”。 此后缀确保 Selenium 等待新页面或元素加载。

## 存取器：

这些命令用于检查应用的状态。 这些让我们将结果存储在用户定义的变量中，这些变量可用于断言的目的。 它们不会直接与页面元素交互。

例如，“`storeAllLinks`”将读取页面上所有链接的 ID，并将其存储在用户定义的变量中。 如果结果有多个值，则该变量将为数组类型。

## 断言：

它们与访问器相似，因为它们也不直接与 Web 元素交互。 断言主要用于验证应用状态是否符合预期。

断言有三种模式，

“*声明*” – 当“声明”失败时，将立即停止测试执行。 测试脚本的其余部分未执行。

“*验证*” – 当“验证”失败时，Selenium IDE 用红色记录失败，然后继续执行。

“*等待*” – 等待特定条件变为真，然后继续执行下一个命令。 默认情况下，超时值设置为 30 秒。 可以将其更改为所需的值。 失败时，测试执行将继续进行下一步。 Selenium IDE 日志窗格中记录了失败。

| **命令** | **说明** |
| `verifyTitle`/`assertTitle` | 验证预期的页面标题 |
| `verifyElementPresent` | 验证页面上是否存在预期的 UI 元素（如其 HTML 标记所定义） |
| `verifyText` | 验证页面上是否存在预期的文本及其相应的 HTML 标记 |
| `verifyForm` | 验证表格的预期内容 |
| `waitForPageToLoad` | 暂停执行，直到加载预期的新页面。 使用`clickAndWait`时自动调用 |
| `waitForElementPresent` | 暂停执行，直到页面上显示预期的 UI 元素（由其 HTML 标记定义）为止 |

有关即将发布的博客中的“声明”和“验证”的更多信息！ 在此之前，请继续练习各种方案。 有关这些命令的完整参考资料，请参见[官方网站](http://release.seleniumhq.org/selenium-core/1.0.1/reference.html#accessors)。

在另一篇文章中再见。 祝你有美好的一天！

