2016-09-26 53 views
1

我試圖找出沒有。使用
//*[@id='past-orders-tab']/div[contains(@class,'physical')] enter image description heredriver.findelements(by.xpath())返回零

但它是使用.size()返回零在下面的圖片訂單 (在列表[WebElement]存儲)。當我挑選使用findelement()一個順序,它工作正常。這裏是頁面源代碼enter image description here

如何糾正它?

+0

By.xpath(「past_orderbox」)---這個XPath沒有意義。 past_orderbox是一個包含你之前寫過的xpath的變量。如果這樣刪除雙引號。 – Grasshopper

+0

我應該從.properties文件讀取。謝謝@Grasshopper – bot13

回答

0

你應該嘗試使用WebDriverWait等到有存在於網頁如下至少一個元素: -

WebDriverWait wait = new WebDriverWait(driver, 10); 
List<WebElement> ord = wait.until(ExpectedConditions.presenceOfAllElementsLocatedBy(By.cssSelector("#past-orders-tab > div.physical"))); 
+0

感謝您的回答,但有一個問題,路徑可以像您一樣轉換爲cssSelector。這是一個flipkart網站 – bot13

+0

我很抱歉,但我不明白你在問什麼?你想要任何方法顯式地將xpath轉換爲cssSelector? –

+0

@ bot13如果我是對的,沒有任何方法將xpath轉換爲cssSelector,您需要[學習如何從一些教程中創建一個cssSelector](http://www.w3schools.com/cssref/css_selectors.asp)並嘗試與你自己。謝謝 –