2009-09-25 11 views
8

Seçme öğesinde bir değer seçmeye çalışıyorum. Test vakalarını çalıştırmak için Selenium RC (Java) kullanıyorum. Bir değerin seçilmesi için kodun aşağıdaki kod tarafından verildiğini anlıyorum: Yukarıdaki kodla istenen değeri seçemiyorum. Seçkin kaynak kodunda optgroup ile ilgili bir şey olabileceğini düşünüyorum. Herhangi bir istisna alamıyorum, komut gayet iyi çalışıyor ama sayfaya bakarak gerekli olan değer seçilmiyor. Ayrıca, ids (değer yerine) kullanamıyorum çünkü var.Seçici üzerinde bir seçenek seçmek için Selenyum'u kullanma

<select> 
    <optgroup label="Group1"> 
     <option value="13">some value1</option> 
     <option value="25">some value2</option> 
    </optgroup> 
    <optgroup label="Group2"> 
     <option value="18">REQUIRED VALUE</option> 
     <option value="34">some value3</option> 
     ... 
     ... 
    </optgroup> 
</select> 

selenyum kullanarak gerekli değeri seçmek için herhangi bir yolu var mı: İşte seçicinin kaynak kodu nedir?

Seçenek değerlerden (örneğin "18", "34" vb.) Kaçınabilmemiz harika olurdu çünkü bu sayılar değerler değiştikçe daha sonra değişir. Örneğin, "GEREKLİ DEĞER" bir değere -18 sahiptir, ancak bu öğeyi sildiysem ve tekrar ekleyeceksem, değeri farklı olur. Temel olarak bu açılır kutu dinamiktir.

cevap

13

Örneğinizdeki gerekli seçeneğin değeri aslında '18'dir. Aşağıdakileri deneyin:

selenium.select("locator", "label=REQUIRED VALUE") 
+0

Merhaba Dave, Yanıtladığınız için teşekkür ederiz. Ama 18'i kullanmanın başka bir yolu olduğunu mu düşünüyorsun? Uygulamamdaki aşağı açılan değişimin içeriği ve dolayısıyla sayıları. Başka bir deyişle, şu anda gösteriliyor ama herhangi bir sayı olabilir. Testlerimi defalarca çalıştırsam bile bu sayılar değişir. Yapılabilecekler konusunda başka fikrin var mı? Bu arada bu yorumu da konuyla ilgili olarak güncelleyeceğim. Teşekkürler, Mugen – Mugen

+1

Cevabımı tekrar kontrol edin. 'Value =' değerini 'label =' olarak değiştirmeyi öneririm. Bu, değeri yerine etiketine dayalı bir seçenek belirlemenize olanak tanır. –

+1

Yanıtladığınız için teşekkür ederiz. Onun etiketi ile mükemmel çalışıyor! – Mugen

İlgili konular