写点什么

软件测试 | Selenium 基础

  • 2023-06-11
    北京
  • 本文字数:1195 字

    阅读完需:约 4 分钟

Selenium 命令——Selenese

Selenium 提供一系列命令,可以用你能想到的所有方式全面测试你的 Web 应用系列。这些命令通常被称为 Selenese。这些测试命令事实上构成了一种测试语言。

使用 Selenese,用户可以通过 HTML tags 测试 UI 元素是否存在,测试特殊文本,测试死链接、输入框、下拉列表、提交表单和数据表等。通过扩展 Selenium 命令支持测试窗口尺寸、鼠标位置、警告、Ajax 控件、弹出窗口、事件控制和其他 Web 应用特性。可以通过如下链接在线查看所在 Selenium 命令:http://release.seleniumhq.org/selenium-core/1.0.1/reference.html,命令会告诉 Selenium 工具要做什么,它有三种子类型:Actions、Accessors 和 Assertions。

(1)Actions 决定 Selenium 工具会怎样操作 Web 应用系统。例如“点击某个链接”和“选择某个下拉选项”。如果一个 Action 失败,或者发生了错误,当前测试的执行会被终止。

(2)Accessors 检查系统的当前状态,并将结果存放在变量中。例如“storeTitle”命令。它们也被用来自动生产断言。

(3)Assertions 类似于 Accessors,不过它们验证系统是否遵从于期望的表现。例如“确保页面标题是 X”,“验证多选项框 X 被选中”。所有的 Selenium Assertions 可以归结为三种模式:“assert”、“verify”和“waitFor”。当一个“assert”失败,测试将被终止。当一个"verify"失败,测试将继续执行,并在日志中记录失败。通常使用“assert”确保测试在正确的页面上运行,接下来使用“verify”来验证表单数据、页签等。“waitFor”命令等待某些条件变为真(在 Ajax 应用中特别有用)。当条件变为真后,它将立刻成功。在预设时间内条件没有变为真,它将失败并停止测试执行。

Selenium 脚本语法

Selenium 的 verifyText 命令有两个参数,如表 2-2 所示。

Selenium 命令的参数并不总是必需的,它依赖于命令。命令可能要求两个参数,或者一个参数,甚至一个参数也不要。

在 Selenium API 速查手册中详细描述了每一个命令所需要的参数。参数有很多种,但典型参数如下:

Locator 用于定位页面上的元素;

text pattern 用于验证或者断言期望的页面内容;

text pattern 和 selenium variable 用于在输入框中输入文本,或者在下拉选项列表选择一个选项。

Selenium-IDE 执行的 Selenium 脚本,通常使用 HTML 文本格式存储。在 HTML 文本文件中使用 HTML 表格存储命令,命令由三列组成。第一列标识 Selenium 命令,第二列标识目标,最后一列保存值。根据选择 Selenium 命令不同,第二、三列可能并不需要有值。表中的每一行代表一条 Selenium 命令。下面举例,测试打开一个页面,验证页面标题,接着验证某些页面内容:

<table>    <tr><td>open</td><td></td><td>/download/<td></tr>    <tr><td>assertTitle</td><td></td><td>Downloads</td></tr>    <tr><td>verifyText</td><td>//h2</td><td>Downloads</td><tr></table>
复制代码

用浏览器打开 Selenium 脚本对应的 HTML 文档,如表 2-4 所示。

搜索微信公众号:TestingStudio 霍格沃兹的干货都很硬核

用户头像

社区:ceshiren.com 微信:ceshiren2023 2022-08-29 加入

微信公众号:霍格沃兹测试开发 提供性能测试、自动化测试、测试开发等资料、实事更新一线互联网大厂测试岗位内推需求,共享测试行业动态及资讯,更可零距离接触众多业内大佬

评论

发布
暂无评论
软件测试 | Selenium基础_测试_测吧(北京)科技有限公司_InfoQ写作社区