標籤:selector read content partial cond rip smi 簽名 nbsp
1.元素定位
ID定位元素:
findElement(By.id(“”));
通過元素的名稱定位元素:
findElement(By.name(“”));
通過元素的html中的位置定位元素:
findElement(By.xpath(“”));
通過元素的標籤名稱定位元素:
findElement(By.tagName(“”));
通過元素的連結名稱定位元素:
findElement(By.linkText(“”));
通過元素的類名定位元素:
findElement(By.className(“”));
通過元素的css定位元素:
findElement(By.cssSelector(“”));
通過元素的部分連結名稱定位元素:
findElement(By.partialLinkText(“”));
2.元素操作
driver.findElement(By.id(element)).click();
driver.findElement(By.id(element)).sendKeys(“123456”);
WebElement text1 = driver.findElement(By.name("password"));
text1.sendKeys("123456");
3,頁面操作
開啟網頁:driver.get("https://www.baidu.com");
關閉網頁:driver.close();
在輸入框中輸入內容:text.sendKeys(“”);
清空輸入框中的內容:text.clear();
擷取輸入框中的內容:text.getText();
選擇下拉框中的元素:
Select select = new Select(wd.findElement(By.id("select")));
切換到某個frame:
driver.switchTo().frame("");
從一個frame切換到另一個frame:
driver.switchTo().frame("");
切換到某個window:
driver.switchTo().window("windowName");
返回父iframe:(一般在跳轉frame之前都寫上這個語句)
driver.switchTo().defaultContent();
重新整理頁面:driver.navigate().refresh();
頁面前進後退:
driver.navigate().forward();
driver.navigate().back();
3,輸入框
element.sendKeys(“test”);//在輸入框中輸入內容:
element.clear(); //將輸入框清空
element.getText(); //擷取輸入框的常值內容:
4.下拉選擇框
Select select = new Select(driver.findElement(By.id("select")));
select.selectByVisibleText(“A”);
select.selectByValue(“1”);
select.deselectAll();
select.deselectByValue(“1”);
select.deselectByVisibleText(“A”);
select.getAllSelectedOptions();
select.getFirstSelectedOption();
5.單選框
WebElement radio=driver.findElement(By.id("BookMode"));
radio.click(); //選擇某個單選項
radio.clear(); //清空某個單選項
radio.isSelected(); //判斷某個單選項是否已經被選擇
6.多選框
WebElement checkbox = driver.findElement(By.id("myCheckbox."));
checkbox.click();
checkbox.clear();
checkbox.isSelected();
checkbox.isEnabled();
6.彈出對話方塊
Alert alert = driver.switchTo().alert();
alert.accept(); //確定
alert.dismiss(); //取消
alert.getText(); //擷取文本
7.表單
WebElement approve = driver.findElement(By.id("approve"));
approve.click();
approve.submit();//只適合於表單的提交
8.上傳檔案
上傳檔案的元素操作:
WebElement adFileUpload =driver.findElement(By.id("WAP-upload"));
String filePath = "C:\test\\uploadfile\\media_ads\\test.jpg";
adFileUpload.sendKeys(filePath);
9.window和iframe的切換
driver.switchTo().defaultContent(); //返回到最頂層的frame/iframe
driver.switchTo().frame("leftFrame"); //切換到某個frame:
driver.switchTo().window("windowName"); //切換到某個window
10.調用js
Web driver對Java Script的調用是通過JavascriptExecutor來實現的,例如:
JavascriptExecutor js = (JavascriptExecutor) driver;
js.executeScript("JS指令碼");
11.逾時設定
WebDriver driver = new FirefoxDriver();
driver.manage().timeouts().implicitlyWait(10, TimeUnit.SECONDS); //識別元素時的逾時時間
driver.manage().timeouts().pageLoadTimeout(10, TimeUnit.SECONDS); //頁面載入時的逾時時間
driver.manage().timeouts().setScriptTimeout(10, TimeUnit.SECONDS); //非同步指令碼的逾時時間
java+selenium元素定位和元素操作