Archive for mai, 2011

Selenium : Element-filters

vendredi, mai 6th, 2011

A quoi servent les element-filters : ce post, je l’espère va vous l’expliquer.

Soit le code extrait de meto.fr qui permet de sélectionner celsius ou fahrenheit pour la température:

<p class="clearfix"><span>
<input checked="checked" class="checkbox" id="celsius" name="unit" type="radio" value="celsius"/>
<label for="celsius">degrés Celsius (°C)</label>
</span></p>
<p class="clearfix"><span>
<input class="checkbox" id="fahrenheith" name="unit" type="radio" value="fahrenheith"/>
<label for="fahrenheith">degrés Fahrenheit (°F)</label>
</span>

Tel que on ne peut pas sélectionner l’élément en utilisant le nom (Name=unit), d’où l’intéret d’utiliser les element-filters qui vont permettre de raffiner la recherche :

<tr>
<td>click</td>
<td>link=Options</td>
<td></td>
</tr>
<tr>
<td>click</td>
<td>name=unit index=1</td>
<td></td>
</tr>

Ici on prendra le deuxième élément avec name=unit (index commence à 0).

Il existe deux types d’element-filter:

  • index : que l’on vient de voir et
  • Value : si l’élément possède une « value » on peut utiliser cette dernière pour préciser la recherche tel que dans l’exemple suivant :

<tr>
<td>click</td>
<td>link=Options</td>
<td></td>
</tr>
<tr>
<td>click</td>
<td>name=unit value=celsius</td>
<td></td>
</tr>