????????在這里記錄一下?自動化測試 -- Selenium 的一些基礎(chǔ)知識點,只記錄方法。
Selenium 瀏覽器操作
? get(): 打開瀏覽器
? getTitle(): 獲取瀏覽器標(biāo)題
? getCurrentUrl(): 獲取當(dāng)前頁面的 URL 地址
? close(): 關(guān)閉瀏覽器
? quit(): 退出瀏覽器
? navigate().to(): 進入指定頁面
? navigate().back(): 后退到上一個頁面
? navigate().forward(): 前進到下一個頁面
? refresh(): 刷新頁面
? switchTo().window(): 切換窗口
? window().maximize():最大化
? window().fullscreen():全憑
? window().getSize():獲取大小
? window().setSize(Dimension targetSize):設(shè)置大小
? window().getPosition():獲取位置
? window().setPosition(Point targetPosition):設(shè)置位置
Selenium 元素定位(包含 Web 表單)
findElement 和 findElements
????????findElement 和 findElements 都可以用于定位元素,它們都需要傳入一個 By 類型,但是他們的返回值不同,區(qū)別如下:
????????? List findElements(By by): findElements 方法返回一個元 素列表
????????? WebElement findElement(By by): findElement 放回一個元素 在實際使用過程中
????????對單個元素的定位我們通常使用 findElement 方法,如果 要定位一組元素,那么推薦使用 findElements 方法,如果使用 findElement 方法定位到的元素有多個,那么該方法只會發(fā)返回第一個。
? findElement(By.id()): id 定位
? findElement(By.name()): name 定位
? findElement(By.linkText()): linkText 定位
? findElement(By.partialLinkText()): partialLinkText 定位
? findElement(By.className()): className 定位
? findElement(By.tagName()): tagName 定位
? findElement(By.xpath()): xpath 定位
? findElement(By.cssSelector()): cssSelector 定位
? switchTo().frame: 切換 iframe 表單
Selenium 元素操作
????????我們知道通過 findElement 和 findElements 方法可以獲取單個 WebElement 元素或者 List 元素列表,因 此我們可以進行元素屬性的獲取或者直接對該元素進行操作。
? getText(): 獲取元素的文本信息,也就是在開始和結(jié)束標(biāo)簽之間的內(nèi)
容,該內(nèi)容可以用于斷言我們定位到的元素是不是我們想要的元素
? getTagName(): 獲取元素的標(biāo)簽名,該方法也可以用于判斷是否定位到
了正確的元素
? getAttribute(): 根據(jù)元素的屬性名獲取元素的屬性值
? isEnabled(): 判斷元素是否可以操作,如 click() 點擊 等,返回值為
True 或 False
? isDisplayed(): 判斷元素是否在頁面上展示
? isSelected(): 選項或者元素是否被選中,在單選或者多選框中常用到
? click(): 適用于任何元素,對其進行點擊操作
? sendkeys(): 適用于文本區(qū)域或者可編輯的元素,可以輸入指定內(nèi)容
? clear(): 適用于文本區(qū)域或者可編輯的元素,可以清空文本內(nèi)容
? submit(): 適用于 Form 表單元素,用于提交數(shù)據(jù),Selenium 4 中不再
推薦使用此方法,而是推薦直接點檢表單的提交按鈕
? select: 選擇單選或者多選框中的元素
Selenium 特殊元素定位與操作
? switchTo().alert().getText(): 獲取彈出框文本信息
? switchTo().alert().accept(): 點擊彈出框確認(rèn)按鈕
? switchTo().alert().dismiss(): 點擊彈出框取消按鈕
? getCookies():獲取全部 Cookie 信息
? addCookie():添加 Cookie
? deleteAllCookies():刪除所有的 Cookie
? deleteCookieNamed(): 刪除指定的 Cookie
? getCookieNamed():獲取指定的 Cookie
? 文件上傳處理
Selenium 的等待
????????Selenium 的等待指的是在對元素進行定位或則操作之前等待指定的一段時間, 什么時候開始等待以及等待時長都取決于腳本以及使用的等待的類型。 Selenium 等待的使用有以下幾個場景,比如:
????????? 等待元素加載完成或者可見后進行定位操作
????????? 等待整個頁面加載完成進行操作或者獲取關(guān)鍵信息進行斷言文章來源:http://www.zghlxwxcb.cn/news/detail-855451.html
? 隱式等待(Implicit Wait)
? 顯示等待(Explicit Wait)
? 強制等待 Thread Sleep
Selenium 的自動截圖
? getScreenshotAs: 獲取元素或者窗口的截圖
Selenium 模擬鍵盤及鼠標(biāo)操作
? clickAndHold(): 點擊鼠標(biāo)左鍵
? contextClick(): 點擊鼠標(biāo)右鍵
? doubleClick(): 鼠標(biāo)雙擊
? moveToElement(): 鼠標(biāo)懸停
? dragAndDrop(): 鼠標(biāo)拖拽
? perform(): 執(zhí)行所有 Actions 中存儲的行為
? sendKeys(): 輸入鍵盤中的按鍵
? keysDown(): 按下按鍵
附:以上內(nèi)容均為個人在藍(lán)橋杯官網(wǎng)學(xué)習(xí)軟件測試的總結(jié)筆記,若有侵權(quán),將在第一時間刪除,若有錯誤,將在第一時間修改。文章來源地址http://www.zghlxwxcb.cn/news/detail-855451.html
到了這里,關(guān)于軟件測試 -- 自動化測試(Selenium)的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!