selemium頁面常見問題的處理

1.cookie登錄

2.配置登錄去除警告框


3.alert彈出框處理

1.

先定位觸發彈出框的按鈕並點擊

driver.findElement(By.id("Demo")).click();

找到彈出框

Alert Demo = driver.switchTo().alert();

點擊接受

Demo.accept();

點擊取消

Demo.dismiss();

2.

先定位觸發彈出框的按鈕並點擊

driver.findElement(By.id("Demo")).click();

找到彈出框

Alert Demo = driver.switchTo().alert();

輸入內容

Demo.sendKeys("666");

點擊接受

Demo.accept();

點擊取消

Demo.dismiss();


4.JS處理

1.js去掉元素屬性

 

先定位元素

 WebElement e=driver.findElement(By.id("readonlyTrue"));

調用js

 JavascriptExecutor js1=(JavascriptExecutor) driver;

Readonly是要移除的屬性

 js1.executeScript("arguments[0].removeAttribute('readonly')", e);

 

2.js頁面滑動3種方式

 

//頁面滑動底部1000

String js = "var q=document.body.scrollTop=10000";

((JavascriptExecutor) driver).executeScript(js);

//頁面滑動定部

String js = "document.documentElement.scrollTop=" + px;

((JavascriptExecutor) driver).executeScript(js);

WebElement webElement = driver.findElement(By.id("key"));

        //對象的頂端與當前窗口的頂部對齊

        ((JavascriptExecutor)driver).executeScript

("arguments[0].scrollIntoView();"webElement);

//對象的頂端與當前窗口的部對齊

  ((JavascriptExecutor)driver).executeScript

("arguments[0].scrollIntoView(false);"webElement);

 

        //對象的底端與當前窗口的頂部對齊 

 ((JavascriptExecutor)driver).executeScript

("arguments[0].scrollIntoView(false);"webElement);

5.Select下拉框

創建Select 對象,添加定位的下拉框

  Select ss = new Select(driver.findElement(By.id("test")));

通過索引定位下拉內容

        ss.selectByIndex(3);

通過文本定位下拉內容

        ss.selectByVisibleText("PYTHON");

通過value定位下拉內容

        ss.selectByValue("VBSCRIPT");

6.上傳

1.對於上傳按鈕是input類型的直接定位按鈕sendkey輸入要上傳的本地路徑

driver.findElement(By.name("file")).sendKeys("C:\\Users\\Administrator\\Desktop\\圖片\\3O5JYC74AA03.jpg");

2.不是input類型

首先創建剪切板setSystemClipboard




定位元素點擊

調用剪切板

將要複製的內容存入剪切板

調用鍵盤

調用鍵盤按鍵

釋放按鍵


7.操作日曆控件

1.不帶有隻讀屬性readonlyinput直接定位sendkey

2.帶有隻讀屬性readonlyinput

定位到元素,通過js去掉只讀屬性在sendkey

8.切換窗口句柄