App下載

python怎么操作瀏覽器?selenium自動化測試介紹!

猿友 2021-07-21 14:03:32 瀏覽數(shù) (3934)
反饋

重復(fù)的操作令手工測試苦不堪言,于是自動化測試出現(xiàn)了!作為web應(yīng)用里最出名的自動化測試工具,selenium讓web應(yīng)用的測試輕松了很多。今天我們就來簡單的介紹一下一些簡單的selenium瀏覽器操作。接下來我們就來看看python怎么操作瀏覽器的吧!

1、打開指定的網(wǎng)頁地址

我們使用selenium進(jìn)行自動化測試時(shí),打開瀏覽器之后,第一步就是讓瀏覽器訪問我們指定的地址,可使用get方法實(shí)現(xiàn)

from selenium import webdriver
driver = webdriver.Edge()
driver.get('https://www.baidu.com/')   # 本行用于訪問指定的地址

2、獲取當(dāng)前頁面url

我們在測試過程中,有時(shí)需要獲取當(dāng)前頁面的url以判斷是否跳轉(zhuǎn)到指定頁面,獲取頁面url的方法如下:

from selenium import webdriver
driver = webdriver.Edge()
driver.get('https://www.baidu.com/')
url = driver.current_url    # 本行用于獲取當(dāng)前頁面的url,即百度首頁地址
print(url)

獲取網(wǎng)址

3、返回按鈕

返回按鈕,也就是瀏覽器左上角的 ← 鍵,模擬點(diǎn)擊此按鈕操作如下
driver.back()

返回按鈕

如,在百度搜索框中輸入selenium并點(diǎn)擊搜索,然后點(diǎn)擊返回按鈕,實(shí)現(xiàn)如下

from selenium import webdriver
from selenium.webdriver.common.by import By
import time

driver = webdriver.Edge()
driver.get('https://www.baidu.com/')
driver.find_element(By.ID, 'kw').send_keys('selenium')  #搜索框輸入selenium
driver.find_element(By.ID, 'su').click()     # 點(diǎn)擊百度一下
time.sleep(3)
driver.back()  # 返回

本段代碼表示在輸入框中輸入selenium后,再點(diǎn)擊百度一下進(jìn)行搜索,3秒后再返回百度首頁

4、前進(jìn)按鈕

前進(jìn)按鈕,相對于后退的 ← ,是瀏覽器左上角的 → 按鈕 ,操作此按鈕方法如下:
driver.forward()

前進(jìn)按鈕

如,在百度搜索框中輸入selenium并點(diǎn)擊搜索,然后點(diǎn)擊返回按鈕后再點(diǎn)擊前進(jìn)按鈕,實(shí)現(xiàn)如下

from selenium import webdriver
from selenium.webdriver.common.by import By
import time

driver = webdriver.Edge()
driver.get('https://www.baidu.com/')
driver.find_element(By.ID, 'kw').send_keys('selenium')  #搜索框輸入selenium
driver.find_element(By.ID, 'su').click()     # 點(diǎn)擊百度一下
driver.back()   # 返回
time.sleep(3)
driver.forward()  # 前進(jìn)

本段代碼表示在輸入框中輸入selenium后,再點(diǎn)擊百度一下進(jìn)行搜索,然后返回操作,3秒后再進(jìn)行前進(jìn)操作,最終停留在輸入selenium之后執(zhí)行搜索的結(jié)果頁面

5、刷新頁面

測試過程中,刷新頁面是經(jīng)常使用的操作,selenium進(jìn)行刷新操作方法如下
driver.refresh()
使用此方法類似于按下F5或點(diǎn)擊左上角的刷新按鈕

刷新按鈕

from selenium import webdriver

driver = webdriver.Edge()
driver.get('https://www.baidu.com/')
driver.refresh()    # 刷新頁面

本段代碼表示打開百度首頁并刷新頁面

6、獲取當(dāng)前頁面title

測試過程中,可以使用selenium獲取當(dāng)前頁面的title,方法如下:
driver.title

獲取title

使用selenium獲取百度首頁的title,示例如下:

from selenium import webdriver

driver = webdriver.Edge()
driver.get('https://www.baidu.com/')
title = driver.title  # 獲取當(dāng)前頁面title
print(title)

以上代碼運(yùn)行后,將在控制臺輸出百度首頁的title 百度一下,你就知道

7、窗口大小操作

常用的窗口操作有設(shè)置窗口大小、最大化窗口、最小化窗口、全屏窗口

① 設(shè)置窗口大小
driver.set_window_size(1920, 1080)

② 最大化窗口
driver.maximize_window()

③ 最小化窗口
driver.minimize_window()
最小化窗口是selenium4的新功能,selenium3不能使用此方法

④ 全屏窗口,相當(dāng)于大多數(shù)瀏覽器中按下F11
driver.fullscreen_window()

示例代碼:

from selenium import webdriver

driver = webdriver.Edge()
driver.get('https://www.baidu.com/')
driver.set_window_size(1920, 1080)   # 設(shè)置窗口大小 1920*1080
driver.minimize_window()  # 最小化窗口
driver.maximize_window()  # 最大化窗口
driver.fullscreen_window() # 全屏窗口

本段代碼打開百度首頁后,先將瀏覽器窗口大小設(shè)置為1920*1080,然后依次最小化窗口、最大化窗口、全屏窗口,實(shí)際進(jìn)行測試時(shí),需要根據(jù)需要進(jìn)行設(shè)置

8、退出

測試執(zhí)行完成后,需要退出瀏覽器,否則多次運(yùn)行測試會導(dǎo)致系統(tǒng)殘留大量的驅(qū)動進(jìn)程,這些進(jìn)程會消耗計(jì)算機(jī)資源,導(dǎo)致系統(tǒng)越來越卡,所以養(yǎng)成測試完成后關(guān)閉瀏覽器是個(gè)良好習(xí)慣

驅(qū)動進(jìn)程清除

退出瀏覽器操作如下:

from selenium import webdriver
from selenium.webdriver.common.by import By

driver = webdriver.Edge()
driver.get('https://www.baidu.com/')
driver.find_element(By.ID, 'kw').send_keys('selenium')  #搜索框輸入selenium
driver.find_element(By.ID, 'su').click()     # 點(diǎn)擊百度一下
driver.quit()     # 退出瀏覽器

本段代碼表示打開百度首頁,再輸入框中 輸入selenium后點(diǎn)擊百度一下,完成搜索后退出瀏覽器

小結(jié)

以上就是python操作瀏覽器的詳細(xì)方法介紹,更多selenium自動化測試的內(nèi)容請關(guān)注W3Cschool其它相關(guān)文章!



0 人點(diǎn)贊