2015-06-10 26 views
0

我正在研究一個由6個svg標記組成的網頁,我必須驗證每個svg在那個中是如下一個,總共有26個路徑,我必須找到18一個Selenium無法對SVG元素執行操作

HTML是這樣

<div> 
    <svg> 
    <circle r="80" cy="80" cx="80" stroke="#f4f4f4" fill="#ffffff" class="svg-pie-outline"></circle> 
<path transform="translate(80,80)" stroke-opacity="0" stroke="#21628e" fill-opacity="0.3" stroke-width="1" fill="#1f77b4" d="M4.572014716816786e-15,-74.66666666666667A74.66666666666667,74.66666666666667 0 1,1 -73.57464370459023,-12.723321691040942L-45.98415231536889,-7.952076056900588A46.666666666666664,46.666666666666664 0 1,0 2.8575091980104907e-15,-46.666666666666664Z" class="svg-pie-slice"></path> 
<path transform="translate(80,80)" stroke-opacity="1" stroke="#8598b1" fill-opacity="1" stroke-width="1" fill="#aec7e8" d="M-73.57464370459023,-12.723321691040942A74.66666666666667,74.66666666666667 0 0,1 -34.86148247133797,-66.02869187718099L-21.78842654458623,-41.267932423238115A46.666666666666664,46.666666666666664 0 0,0 -45.98415231536889,-7.952076056900588Z" class="svg-pie-slice"></path> 
<path transform="translate(80,80)" stroke-opacity="0" stroke="#ffffff" fill-opacity="0.3" stroke-width="1" fill="#ff7f0e" d="M-34.86148247133797,-66.02869187718099A74.66666666666667,74.66666666666667 0 0,1 -24.17659693792926,-70.64420196740863L-15.110373086205787,-44.152626229630386A46.666666666666664,46.666666666666664 0 0,0 -21.78842654458623,-41.267932423238115Z" class="svg-pie-slice"></path> 
<path transform="translate(80,80)" stroke-opacity="0" stroke="#ffffff" fill-opacity="0.3" stroke-width="1" fill="#ffbb78" d="M-24.17659693792926,-70.64420196740863A74.66666666666667,74.66666666666667 0 0,1 -13.265702442700245,-73.47878775410526L-8.291064026687652,-45.92424234631578A46.666666666666664,46.666666666666664 0 0,0 -15.110373086205787,-44.152626229630386Z" class="svg-pie-slice"></path> 

    </svg> 
    </div> 

我有XPath來遍歷直到路徑,但無法找到爲每個單獨的路徑

此XPath會定位在SVG

所有路徑
html/body/div/div[1]/main/div/div[2]/div[3]/div[2]/ol[1]/li/article/div/div/div/div/div[1]/div/div/*[name()='svg']/*[name()='path'] 

它會遍歷直到所有無法點擊單個路徑中的路徑,請幫助

沒有在列表中找到的任何路徑

html/body/div/div[1]/main/div/div[2]/div[3]/div[2]/ol[1]/li/article/div/div/div/div/div[1]/div/div/svg/path[18] 

沒有在列表中找到的任何路徑

html/body/div/div[1]/main/div/div[2]/div[3]/div[2]/ol[1]/li/article/div/div/div/div/div[1]/div/div/*[name()='svg']/*[name()='path[2]'] 

沒有在列表中找到的任何路徑

html/body/div/div[1]/main/div/div[2]/div[3]/div[2]/ol[1]/li/article/div/div/div/div/div[1]/div/div/*[name()='svg']/*[name()='path']/*[name()='path'] 

請幫助

+0

你可以發佈你使用的網址..? –

+0

對於這個問題我甚至嘗試生成xpath IDE,但在其顯示元素不在我點擊svg路徑元素時 –

+0

應用程序託管在雲和它的密碼保護 –

回答

1

後的研究日子裏,我得到了解決用於訪問SVG元素

的XPath用於遍歷到特定元素

.//*[@id='global-wrapper']/div[1]/main/div/div[2]/div[3]/div[1]/ol/li[1]/article/div/div/div/div/div[1]/div/*[name()='svg']/*[name()='path' and @fill='#aec7e8'] 

添加獨特的屬性來訪問元素我的情況下,它是填充顏色

相關問題