0
我剛開始使用硒c#工作。 我有一個樹形視圖,它的位置不一致,所以我想擴大它,如果它沒有擴大,如果它已經擴大它應該是因爲它。類似的崩潰。selenium expand collapse treeview C#
這是當樹擴展
<div class="rtTop">
<span class="rtSp"></span>
<span class="rtMinus"></span>
<span class="rtIn">Roles</span>
</div>
,這是當它崩潰
<div class="rtTop">
<span class="rtSp"></span>
<span class="rtPlus"></span>
<span class="rtIn">Roles</span>
</div>
和我目前使用
public static string treeviewExpand(string treeviewExpandButton)
{
treeviewExpandButton = "//span[text()='" + treeviewExpandButton + "']/preceding-sibling::span[@class='rtPlus']";
return treeviewExpandButton;
}
public static string treeviewCollapse(string treeviewCollapseButton)
{
treeviewCollapseButton = "//span[text()='" + treeviewCollapseButton + "']/preceding-sibling::span[@class='rtMinus']";
return treeviewCollapseButton;
}
以上的XPath工作正常,如果調用適當的操作。 但我想要一個通用操作函數來展開和摺疊樹,而不考慮它的當前狀態。
我試圖通過使用文本來獲取treeview節點的當前類名稱。 這裏我想要獲得當前類「rtPlus」或「rtMinus」 ,但是當我嘗試使用標記名稱作爲範圍獲得前面的兄弟姐妹時,我得到的類標記範圍爲「rtsp」,而不是類「rtPlus 「或‘rtMinus’ 即使檢查顯示其前面的兄弟跨距級‘rtPlus’或‘rtMinus’
我使用
public static string treeviewExpandCollapse(string treetext)
{
treetext= "//span[text()='" + treetext+ "']";
IWebElement element;
element = driver.FindElement(treetext).FindElement(By.XPath("./preceding-sibling::span"));
string calsss = element.GetAttribute("class");
Thread.Sleep(2000);
}