在selenium IDE中存储图像标题

时间:2015-03-25 22:50:09

标签: javascript xpath selenium-ide

当我将鼠标悬停在图像上时,我想存储图像中显示的文字。该图片位于此页https://www.magiccardmarket.eu/Products/Singles/Dragons+of+Tarkir的表格中,第一张图片包含以下xpath //div[@id='siteContents']/div[2]/div[2]/div/form/table.1.3。该表元素的html代码包含以下内容:

<span onmouseover="showMsgBox('Dragons of Tarkir')"></span>

我想存储showMsgBox的内容。看来我需要知道一些Javascript来驱动Selenium IDE。到目前为止,我发现的是question about how to extract text with xPath,这里是how the Javascript function slice works。然后我认为它应该是这样的:

storeText  |  //div[@id='siteContents']/div[3]/div[2]/table/tbody/tr[1]/td[2]/a/span/@onmouseover  |  exp
storeEval  |  exp = exp.slice(12, -2);  |  expansion

但它给我一个并不能说太多的错误。

1 个答案:

答案 0 :(得分:0)

我捕获了属性,而不是使用substring来解析它的值。

<tr>
<td>storeAttribute</td>
<td>//html/body/section/div[1]/div/div[3]/div[2]/table/tbody/tr[1]/td[4]/img@onmouseover</td>
<td>fullval</td>
</tr>
<tr>
<td>echo</td>
<td>${fullval}</td>
<td></td>
</tr>
<tr>
<td>storeEval</td>
<td>str=&quot;${fullval}&quot;; str.substring(12, str.length-2)</td>
<td>final</td>
</tr>
<tr>
<td>echo</td>
<td>${final}</td>
<td></td>
</tr>

请注意,我使用字符串的长度 - 2表示“停止”点。

或者,由于这些图像具有包含该值的ALT标记,因此只需使用:

<tr>
    <td>storeAttribute</td>
    <td>//html/body/section/div[1]/div/div[3]/div[2]/table/tbody/tr[1]/td[4]/img@alt</td>
    <td>fullval</td>
</tr>
<tr>
    <td>echo</td>
    <td>${fullval}</td>
    <td></td>
</tr>