【发布时间】:2015-01-22 09:20:41
【问题描述】:
我正在使用 Watir-Webdriver。
我知道页面上有特定的文字,即:“First Name is required”
browser.text.include("First Name is required") 返回true,这很好。
使用 Watir-Webdriver 是否有一些方法可以附加到 browser.text.include("First Name is required") 的末尾,以返回包含特定文本的 css/html?
此文本字段上的检查元素返回:
<h3 class="split-sm"></h3>
<div class="input-group">
<div class="input-container input-left-half round">
<div class="validate status-invalid"></div>
<input id="member_first_name" type="text" name="member_first_name"></input>
<label class="error" for="member_first_name">
<span class="label-norm">
First Name
</span>
<span id="member_first_name-error" class="label-error">
is required
</span>
</label>
</div>
【问题讨论】:
-
可以考虑
xpath吗? -
“css/html”是什么意思?您想要的文本被分成两个独立的 span 元素。你想为其中一个获得一个 Watir::Element 对象,还是你的意思是别的?
-
您想取回哪个元素?例如,文本包含在
<div class="input-group">、<div class="input-container input-left-half round">、<label class="error" for="member_first_name">和任何祖先元素(如<body>)中。最祖先元素很容易做到,但我猜你想要最接近的祖先 -label? -
我想我想要包含该文本的最接近的元素
标签: ruby selenium-webdriver watir watir-webdriver