XPath(XML Path Language)是一種用于在XML文檔中定位元素的查詢語言孤里。它提供了一種靈活而強大
的方式來定位和選擇XML中的節(jié)點捞镰。XPath定位策略主要用于web自動化測試中里烦,通過定位元素來實現(xiàn)與web
頁面的交互寨腔。
下面是XPath定位策略的詳解:
元素定位:
絕對路徑定位:使用絕對路徑指定元素的層級關(guān)系凛辣,以根節(jié)點開始,例
如:/html/body/div[1]/a听怕。
相對路徑定位:使用相對路徑指定元素的層級關(guān)系捧挺,以當前節(jié)點為起點,例如://div/a尿瞭。
標簽定位:使用元素的標簽名稱來定位元素松忍,例如://div。
屬性定位:使用元素的屬性來定位元素筷厘,例如://input[@id="username"]鸣峭。
文本定位:使用元素的文本內(nèi)容來定位元素,例如://a[text()="登錄"]酥艳。
層級關(guān)系定位:
父子關(guān)系:使用/來表示父子關(guān)系摊溶,例如:/div/a 表示選擇根節(jié)點下的div元素內(nèi)的a元素。
祖先關(guān)系:使用//來表示祖先關(guān)系充石,例如://div//a表示選擇所有祖先節(jié)點中的div元素內(nèi)的a
元素莫换。
兄弟關(guān)系:使用/following-sibling::或/preceding-sibling::來表示兄弟關(guān)系,例
如//div/following-sibling::span表示選擇div元素后面的所有兄弟節(jié)點中的span元素骤铃。
屬性定位:
使用[@屬性名稱="屬性值"]來表示屬性定位拉岁,例如//input[@id="username"]表示選擇id屬
性值為"username"的input元素。
文本定位:
使用text()函數(shù)來表示文本定位惰爬,例如//a[text()="登錄"]表示選擇文本內(nèi)容為"登錄"的a元
素