网页元素
Watir 自动为所有 HTML5.1 和 SVG2 支持的元素及其关联属性生成类和方法。这些类利用封装来提供对其特定属性的访问,使它们更容易定位和使用。
您可以在我们的 示例代码 中看到一个填写表单的示例。
概述
Watir::Element
是所有其他元素类型继承的超类。所有元素都具有这些行为。
它可以通过调用 Browser#element
来访问。创建 ElementCollection
是通过 Browser#elements
完成的。对于所有定位 Element
的不同方法,请查看我们的 定位元素指南。
不建议您直接使用此类,而应使用与您正在使用的元素类型相对应的子类。
常用方法
标准设置器接口
此功能在 Watir 7 beta 2 中完全实现。
页面对象 gem 实现的最酷的功能之一是能够使用 Watir 根据元素类型自动填写表单。从 Watir 7.0 开始,每个元素都将响应 #set
并接受一个参数,以确保对该元素采取正确的操作。以下部分中的许多元素子类将采取一个特定且明显的动作(请点击下面的链接以了解它们是什么)。但是,如果未指定子类,Watir 将使用 Element#set
来确定它是什么类型的元素,并根据该元素采取所需的行动。
示例
browser = Watir::Browser.start 'watir.com/examples/simple_form.html'
header = browser.element(id: 'user')
header.present? # => true
header.text == 'Add user' # => true
header.attribute('data-test') == 'header' # => true
header.click
browser.close
特定元素的特殊处理
- 按钮 (Button)
- 复选框 (CheckBox)
- 下拉菜单 (Select & Option)
- 框架 (Frame & IFrame)
- 链接 (Anchor)
- 单选按钮 (Radio & RadioSet)
- 文本输入 (TextField & TextArea & WYSIWYG)