2011-05-16 12 views
5

Tabloda, bilinmeyen satırlar nosunun bulunduğunu varsayalım. her satır bir bağlantı "Arama Profili" şimdi bu bağlantının o xpath değişen satıra göre olacaktır burada açıktır içeren için exp sütun1 sütun2 sütun3 xxx yyySelenium RC: Bir tablonun sütununda bulunan bir öğenin nasıl tıklatılacağı

sütun3 "Profil Ara". şimdi 2. sütunda bir dize aramak istiyorum ve eğer varsa o zaman column3 linkini tıklamanız gerekiyor. Lütfen, nasıl arama yapacağımı ve tıklayacağımı lütfen bana bildirin?

cevap

0

Selenium.click'i kullanmanızı ve aradığınız hedefi vermenizi öneririm. Eğer, sütun 2 aradığıyla metin biliyorsanız, bir XPath ifadesinde koyup çizgisinde sütununda arkadaşı 3.

şey tıklayabilirsiniz:

selenium.click("//table[@id='yourTableID']/descendant::tr[td[.='"column2text"']]/td[3]/button); 
0
  1. Oluşturulan tablodaki satır sayısını yapın. Sayım beklenen sonucu karşılıyorsa metni belirli bir hücrede saklayabilirsiniz.
  2. var içeriğinin test dizenize uyup uyuşmadığını kontrol edin.
  3. klik yoksa böyle bir sayfa Verilen Sütun 3.
3

bağlantısını "Profil Ara":

<html><head></head><body> 
<table> 
    <tbody> 
     <tr> 
      <td>Number</td> 
      <td>Name</td> 
      <td>Link</td> 
     </tr> 
     <tr> 
      <td>1</td> 
      <td>Tom</td> 
      <td>Link</td> 
     </tr> 
     <tr> 
      <td>2</td> 
      <td>Jane</td> 
      <td>Link</td> 
     </tr> 
     <tr> 
      <td>3</td> 
      <td>Jill</td> 
      <td>Link</td> 
     </tr> 
    </tbody> 
</table> 
</body></html> 

Önce adını bulmak için XPath kullanarak doğru değeri tespit etmeden kullanıcının Daha sonra bu ada göre, tablodaki bulunan isme göre üçüncü sütunu hedefleyebilirsiniz.

selenium.click("//table/tbody/tr/td[text()='Jane']/parent::tr/td[3]") 

Bu örnekte, ikinci sütunda "Jane" in ilk eşleşmesi ve tam eşleşmesini bulur. Ardından sıraya yedeklenir ve üçüncü sütunu hedefler (ve tıklar).

İlgili konular