1. 程式人生 > >Selenium中定位方式記錄

Selenium中定位方式記錄

在這裡僅記錄一下常用的定位方式:

  • 1. id定位
@FindBy(id = "EmailInvoice")
private WebElement emailInvoiceCheckBox;
  • 2. name/class等標籤定位
@FindBys(@FindBy(className = "Content"))
private List<WebElement> resolutionText;
  • 3. css定位
//一級一級查詢# // . //:nth-child
@FindBy(css = "#InvoiceInfoBlock .invoiceInfoRow:nth-child(2)"
) private WebElement invoiceNumber; //使用部分屬性值匹配 @FindBy(css = "img[title*='4.00']") private WebElement surveryRatingImg;
  • 4. xpath定位
//通過絕對路徑做定位
By.xpath("html/body/div/form/input")

//通過相對路徑定位
By.xpath("//input")

//通過元素索引定位
By.xpath("//input[4]")

//使用xpath屬性定位
By.xpath("//input[@id='kw1']")
By.xpath("//input[@type='name' and @name='kw1']"
) //使用部分屬性值匹配 By.xpath("//input[start-with(@id,'valueA'") By.xpath("//input[ends-with(@id,'valueB'") By.xpath("//input[contains(@id,'valueC')]") /** 包含noteDescription的span的父親節點的第一個兄弟節點下的第一個div下的第五個a. 其中 1. /.. / 從根節點選取 .. 選取當前節點的父節點 2. following-sibling 選取當前節點後的同級節點 preceding-sibling 選取當前節點前的同級節點 */
By.xpath("//span[contains(text(),'" + noteDescription + "') and @id = 'noteText']/../following-sibling::div[1]/a[5]")