日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 >

java元素定位div_Java+Selenium元素定位的练习(三)

發(fā)布時間:2025/3/15 21 豆豆
生活随笔 收集整理的這篇文章主要介紹了 java元素定位div_Java+Selenium元素定位的练习(三) 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

一、簡單元素定位

學(xué)習(xí)了元素的定位方法和元素的操作之后,下面就來練習(xí)一下,下面是html的源碼

test

function toAlert() {

alert("hello continue...");

}

第一個div第二個div第三個div

username:

password:

地區(qū):

天津

北京

上海

河北

性別:

Boy

Girl

四季:

百度首頁走起~

和大的DIV并列沒有id和name,是不是傻眼了

第一本書

第二本書

第三本書

第四本書

(一)、練習(xí)1:統(tǒng)計出當(dāng)前頁面有多少個div

List list = driver.findElements(By.tagName("div"));

int number = list.size();

System.out.println("一共有"+number+"個div");

(二)、練習(xí)2:輸出頁面第一個div中的文字

String divText = driver.findElement(By.cssSelector("form > div")).getText();

System.out.println(divText);

(三)、練習(xí)3:用xpath找出所有的復(fù)選框,并點擊

List elements = driver.findElements(By.id("u"));

for(int i=0;i

if(elements.get(i).isSelected()==false){

elements.get(i).click();

}

}

(四)、找出input標(biāo)簽中所有屬性中含有check,并輸出tagname

List elements = driver.findElements(By.xpath("//*[contains(@*,'check')]"));

for(int i=0;i

System.out.println(elements.get(i).getTagName());

}

(五)、找出頁面元素,id屬性包含o,并輸出id名稱

List elements = driver.findElements(By.xpath("//*[contains(@id,'o')]"));

for (int i = 0; i < elements.size(); i++) {

String id = elements.get(i).getAttribute("id");

System.out.println("id="+id);

}

(六)、找出頁面元素中,id屬性為acc開頭的,并輸入id的名稱

List elements = driver.findElements(By.xpath("//*[starts-with(@id,'acc')]"));

for (int i = 0; i < elements.size(); i++) {

String id = elements.get(i).getAttribute("id");

System.out.println("id="+id);

}

(七)、定位到頁面文本含有“百度”的元素,并輸出文本值

List elements = driver.findElements(By.xpath("//*[contains(text(),'百度')]"));

for (int i = 0; i < elements.size(); i++) {

String text = elements.get(i).getText();

System.out.println("text="+text);

}

(八)、找出頁面中最后一個div,并輸出其文本值

String text = elements.get(elements.size()-1).getText();

System.out.println(text);

Logger.log("關(guān)閉" + browser + "瀏覽器");

(九)、下拉菜單、單選框,多選框操作

// 下拉菜單的練習(xí)

WebElement element = driver.findElement(By.id("areaID"));

Select select = new Select(element);

// select.selectByValue("3");

// select.selectByIndex(2);

select.selectByVisibleText("上海");

//單選框練習(xí)

List elements = driver.findElements(By.name("u2"));

if (elements.get(1).isSelected() == false) {

System.out.println(elements.get(1).isSelected());

elements.get(1).click();

}

//復(fù)選框的練習(xí)

List elementlist = driver.findElements(By.id("u"));

for (int i = 0; i < elementlist.size(); i++) {

if (elementlist.get(i).isSelected() == false) {

elementlist.get(i).click();

}

}

二、復(fù)雜元素定位

有時候我們會遇到一些html中只有一個元素屬性,其他都沒有屬性,那么這時候我們就需要從這個屬性中,定位到另一個元素

(一)、練習(xí)一

已知一個訂單商品名字,查找這個訂單的狀態(tài)

步驟

1、定位商品名稱的元素

操作:F12瀏覽器--點擊“選取頁面中的元素”按鈕--把鼠標(biāo)移動到商品名稱上點一下--在查看器右擊被選中的html代碼,選擇復(fù)制--xpath,得到如下結(jié)果

/html/body/div[2]/div/div[1]/div[1]/div[3]/div/div[4]/div/table/tbody[2]/tr/td[1]/div/div[2]/p[1]/a[1]/span[2]

2、定位這個商品訂單狀態(tài)的元素

同樣的方法,使用xpath定位商品訂單狀態(tài)

/html/body/div[2]/div/div[1]/div[1]/div[3]/div/div[4]/div/table/tbody[2]/tr/td[6]/div/p/span

3、取兩個定位元素的相交節(jié)點

商品名稱:/tr/td[1]/div/div[2]/p[1]/a[1]/span[2]

訂單狀態(tài):/tr/td[6]/div/p/span

4、定位到商品名稱

因為"人本"是搜索訂單出來的,所以帶有文本為紅色的樣式,只能定位到人本之前的文本,所以如下

//tr/td[1]/div/div[2]/p[1]/a[1]/span[2][contains(text(),'【開學(xué)價】')]

5、定位訂單的狀態(tài)

用[]把父節(jié)點后面的元素括起來,去掉訂單狀態(tài)的父節(jié)點,后面+訂單狀態(tài)的元素即可

//tr[td[1]/div/div[2]/p[1]/a[1]/span[2][contains(text(),'【開學(xué)價】')]]/td[6]/div/p/span

(二)、練習(xí)二

步驟

1、找到.success

/html/body/div[3]/div/div[2]/div/div[3]/div/table[2]/tbody/tr[3]/td[1]

2、使用xpath定位“嘗試一下”按鈕

/html/body/div[3]/div/div[2]/div/div[3]/div/table[2]/tbody/tr[3]/td[3]/a

3、定位“嘗試一下”按鈕

取兩個定位元素的相交節(jié)點

tr[3]/td[1]

tr[3]/td[3]/a

定位到.success文本

//tr[3]/td[1][text()=".success"]

用[]把父節(jié)點后面的元素括起來,去掉【嘗試一下】按鈕的父節(jié)點,后面+訂單狀態(tài)的元素即可

//tr[3][td[1][text()=".success"]]/td[3]/a

新人創(chuàng)作打卡挑戰(zhàn)賽發(fā)博客就能抽獎!定制產(chǎn)品紅包拿不停!

總結(jié)

以上是生活随笔為你收集整理的java元素定位div_Java+Selenium元素定位的练习(三)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。