【发布时间】:2013-07-23 03:08:11
【问题描述】:
鉴于这是我的 DOM,它不属于我,所以我不能以任何方式修改它,我如何根据产品 ID 内部文本选择正确的“单击此处”链接?请注意,此代码中有 3 个产品,并且链接可以出现在页面的任何位置,因此我必须能够仅根据产品 ID 进行选择。这是针对 PHP 的 behat/mink 功能测试,到目前为止,我根据产品 ID 进行选择的每一次尝试都失败了。
<div id = "container">
<div class = "product">
<div class="product-detail">
<span class = "product-id">123-456-789</span>
</div>
<div class = "leftblock">
<div class = "product-info">
<a><span>Click Here</span></a>
</div>
</div>
</div>
<div class = "product">
<div class="product-detail">
<span class = "product-id">456-789-012</span>
</div>
<div class = "leftblock">
<div class = "product-info">
<a><span>Click Here</span></a>
</div>
</div>
</div>
<div class = "product">
<div class="product-detail">
<span class = "product-id">345-678-901</span>
</div>
<div class = "leftblock">
<div class = "product-info">
<a><span>Click Here</span></a>
</div>
</div>
</div>
</div>
例如,这个 xpath 失败了:
//span[text()='Click Here']/following::span[@class='product-id' and text()='" . $productId . "']
我尝试过使用祖先和其他东西,但还没有。我什至不确定我是否使用了正确的字符。有什么想法吗?
【问题讨论】: