2012-09-24 73 views
0

有沒有方法可以計算不等於0.00的元素數?計算得分的元素數

例如,代碼

<div id="average_2123" style="font-size:20px; ">0.00</div> 
<div id="average_2124" style="font-size:20px; ">23.53</div> 
<div id="average_2125" style="font-size:20px; ">0.00</div> 

我怎麼能算的元素,以便它只有1,因爲只有其中一人有得分?

我想在PHPUnit上這樣做。我也可以在Selenium IDE上做,因爲我可以將它轉換爲PHPUnit

回答

1

您將不得不編寫自定義代碼。我在寫Java代碼。希望你能理解和轉換

List<WebElements> ElemList = Webdriver.FindElements(By.Xpath("//div") 

for (i = 0; i < ElemList.size();i++) 
{ 

      WebElement Current =List.getElementAt(i); 
      String ElemName = current.getAttribute("id"); 
      String text ="" 
      int Count = 0; 
      if(id.Contains("average")) 
      { 

       if(!id.getAttribute("value").equals("0.00") 
       { 
        count++; 
       } 


      } 




} 
+0

得益於更大的元素。你的兩個答案都很有幫助。即使我不懂Java,我也必須找出將其轉換爲PHP的方法。 – yan

1

更好的方法可以如下所述。我用Java編寫代碼:

List<WebElement> elemList = driver.findElements(By.cssSelector("div[id^='average']")); 
List<WebElement> filteredElements = new ArrayList<WebElement>(); 
    for (WebElement element : elemList) { 
     if (Long.parseLong(element.getText()) > 0.00) 
      filteredElements.add(element); 
    } 

這將找到所有「id」屬性以「average」開頭的元素。

而且我在這裏的文字轉換爲長,然後比較其磨碎機是否大於0.00

的filteredEleemnts是具有價值超過0.00

+0

謝謝。你的兩個答案都很有幫助。即使我不懂Java,我也必須找出將其轉換爲PHP的方法。 – yan