99精品久久精品一区二区-亚洲熟妇无码?v在线播放-日本国产精品无码字幕在线观看-久久久亚洲永夜AV-亚洲一级无码一区二区一-免费国产成高清人在线视频-中文字幕乱码免费观看-国产毛片精品妇女久久久

ARTICLE DETAIL

資訊詳情

深耕商務(wù)建站與企業(yè)官網(wǎng)運(yùn)營(yíng)的一線實(shí)戰(zhàn)洞察。

Selenium面試題全解析:從WebDriver原理到自動(dòng)化測(cè)試實(shí)戰(zhàn)

Selenium面試題全解析:從WebDriver原理到自動(dòng)化測(cè)試實(shí)戰(zhàn) 我之前帶團(tuán)隊(duì)面過(guò)不少測(cè)試開發(fā)的候選人Selenium 幾乎每場(chǎng)都出現(xiàn)。它看起來(lái)是個(gè)人人會(huì)用的入門工具但同樣是問(wèn)“什么是 Selenium”有的候選人只能背一句“自動(dòng)化測(cè)試框架”有的卻能講到 WebDriver 協(xié)議、組件架構(gòu)、版本演進(jìn)背后的取舍這一下就拉開了差距。這篇文章我把這些年高頻撞上的 Selenium 面試題攢在一起每道題都給出答題思路、背后的技術(shù)原理和可落地的示例代碼。如果你正在準(zhǔn)備測(cè)試開發(fā)或自動(dòng)化測(cè)試崗建議別背題把每道題背后的“為什么”弄明白面試官追問(wèn)到哪一層你都能接住。1. 先認(rèn)清 Selenium它到底是什么你可能還沒(méi)說(shuō)完整1.1 從“錄制回放”到“組件家族”Selenium 的完整定義面試第一問(wèn)通常是“介紹一下 Selenium”。很多人張口就說(shuō)“自動(dòng)化測(cè)試框架”這個(gè)答案不算錯(cuò)但太淺。Selenium 不是單一工具而是一套完整的組件族至少包含三條主線Selenium IDE瀏覽器插件形式支持錄制回放主要用于快速生成腳本原型換新人上手最快但不適合復(fù)雜項(xiàng)目。Selenium WebDriver通過(guò)原生瀏覽器自動(dòng)化接口操作瀏覽器支持多語(yǔ)言綁定Python、Java、C#、JavaScript 等是當(dāng)前主流方案。Selenium Grid分布式執(zhí)行組件能把測(cè)試用例分發(fā)到多臺(tái)機(jī)器、多個(gè)瀏覽器上并行跑解決跨瀏覽器矩陣和回歸耗時(shí)問(wèn)題。早期還有一個(gè) Selenium RC 組件通過(guò)注入 JavaScript 的方式控制瀏覽器Selenium 2 時(shí)代已經(jīng)被 WebDriver 取代。面試時(shí)如果能講出這套全家桶結(jié)構(gòu)并且說(shuō)清楚“為什么 RC 被淘汰、而 WebDriver 活下來(lái)”面試官對(duì)你的評(píng)價(jià)會(huì)明顯不一樣。WebDriver 直接和瀏覽器內(nèi)部引擎打交道不再需要額外啟動(dòng)代理服務(wù)比注入 JS 方案更快、更接近真實(shí)用戶操作。1.2 WebDriver 架構(gòu)與通信協(xié)議這一層是底層邏輯分水嶺追問(wèn)“WebDriver 是怎么工作的”是很多面試官的固定動(dòng)作因?yàn)檫@直接考察你是不停調(diào) API還是真懂原理。核心鏈路是測(cè)試代碼 → WebDriver 客戶端庫(kù) → HTTP 協(xié)議 → 瀏覽器驅(qū)動(dòng) → 瀏覽器內(nèi)部自動(dòng)化接口。Selenium 3 時(shí)代走的是 JSON Wire Protocol到了 Selenium 4 全面切換到 W3C WebDriver 標(biāo)準(zhǔn)。這意味著不同瀏覽器廠商實(shí)現(xiàn)的是同一個(gè)協(xié)議驅(qū)動(dòng)兼容性比以前好得多。面試時(shí)可以主動(dòng)提一句“現(xiàn)在 ChromeDriver、geckodriver、EdgeDriver 都實(shí)現(xiàn)了 W3C 標(biāo)準(zhǔn)所以我們切換瀏覽器時(shí)不需要重寫測(cè)試代碼”這句話很加分。要注意的是不同瀏覽器驅(qū)動(dòng)能力并不完全一致。曾有人問(wèn)我“Chrome 上能用的腳本換到 Firefox 就定位不到元素”這類問(wèn)題往往和協(xié)議無(wú)關(guān)更多是頁(yè)面行為差異和團(tuán)隊(duì)沒(méi)有用統(tǒng)一的標(biāo)準(zhǔn)。1.3 環(huán)境安裝三件套版本關(guān)系、驅(qū)動(dòng)匹配和常見坑“Selenium 安裝完一跑就報(bào)錯(cuò)”是新手最大的挫敗來(lái)源。這里把關(guān)鍵點(diǎn)說(shuō)透Python 側(cè)安裝很簡(jiǎn)單pip install selenium真正的坑是瀏覽器驅(qū)動(dòng)版本與瀏覽器大版本必須匹配。Chrome 120 對(duì)應(yīng) ChromeDriver 120.x相差一個(gè)大版本基本跑不起來(lái)。Selenium 4.6 之后引入了 Selenium Manager能自動(dòng)下載并管理驅(qū)動(dòng)本地沒(méi)裝 ChromeDriver 也能啟動(dòng)。但公司內(nèi)網(wǎng)、嚴(yán)格管控環(huán)境可能用不了自動(dòng)下載還是得手動(dòng)指定service ChromeService(executable_path/path/chromedriver)。另外很多人在代碼里寫成from selenium import webdriver之后啟動(dòng)時(shí)報(bào) “session not created”大概率是驅(qū)動(dòng)版本或?yàn)g覽器版本不一致。建議寫一個(gè)通選方案from selenium import webdriver from selenium.webdriver.chrome.service import ChromeService options webdriver.ChromeOptions() service ChromeService(executable_path驅(qū)動(dòng)路徑) driver webdriver.Chrome(serviceservice, optionsoptions) driver.get(https://example.com)版本匹配還有一種省力做法直接和瀏覽器一起關(guān)閉自動(dòng)更新用固定版本。這在項(xiàng)目里更穩(wěn)但也有副作用不能體驗(yàn)新特性。我的經(jīng)驗(yàn)是測(cè)試環(huán)境固定 Chrome 版本、跟隨項(xiàng)目群統(tǒng)一升級(jí)避免“今天好好的明天全掛”的被動(dòng)局面。2. 定位與等待面試官真正看重的能力層2.1 八大定位方式與優(yōu)先級(jí)權(quán)衡Selenium 提供 id、name、class name、tag name、link text、partial link text、XPath、CSS Selector 八種定位方式。面試中常問(wèn)“你一般用什么定位”這個(gè)問(wèn)題的潛臺(tái)詞是考察你有沒(méi)有穩(wěn)定的定位策略。優(yōu)先級(jí)上我的習(xí)慣是有 id 用 id穩(wěn)定且速度快沒(méi)有 id 優(yōu)先考慮 CSS Selector表達(dá)簡(jiǎn)潔、瀏覽器原生支持好XPath 留給需要層級(jí)關(guān)系、文本匹配的復(fù)雜場(chǎng)景。不要一上來(lái)就用 XPath 的絕對(duì)路徑/html/body/div[1]/div[2]/form/input這種結(jié)構(gòu)一改就廢。相對(duì) XPath 和 CSS 組合更穩(wěn)妥例如//form[idlogin]//input[nameusername]既圈定了范圍又不容易受外層結(jié)構(gòu)調(diào)整影響。另一個(gè)面試??键c(diǎn)是“定位不到元素怎么辦”。除了換定位器更關(guān)鍵的步驟是確認(rèn)元素是否在 iframe 里、是否在 Shadow DOM 里、是否是動(dòng)態(tài)加載的內(nèi)容。很多人定位不到不是選擇器寫錯(cuò)而是壓根沒(méi)切 iframe。這種細(xì)節(jié)平時(shí)踩坑之后才能記得牢。2.2 三大等待機(jī)制顯式等待為什么被高看Selenium 等待機(jī)制幾乎是必考題而且一定考察代碼功底。先說(shuō)結(jié)論隱式等待driver.implicitly_wait(10)作用于全局輪詢查找元素時(shí)生效。寫法省事但某些場(chǎng)景下會(huì)白白浪費(fèi)時(shí)間比如元素存在但不可點(diǎn)擊時(shí)它不會(huì)管。顯式等待WebDriverWait.until(條件)針對(duì)某個(gè)操作精準(zhǔn)等待能處理元素加載、可見、可點(diǎn)擊等多種狀態(tài)是生產(chǎn)項(xiàng)目里的主力。強(qiáng)制等待time.sleep(5)簡(jiǎn)單粗暴但穩(wěn)定性最差時(shí)間短了不穩(wěn)定長(zhǎng)了拖慢整個(gè)測(cè)試套件只適合少數(shù)外部接口回調(diào)場(chǎng)景。一道稍微進(jìn)階的題“顯式等待底層是怎么輪詢的”??梢詤⒖糤ebDriverWait 默認(rèn)每 0.5 秒調(diào)用一次檢測(cè)方法直到條件滿足或超時(shí)拋TimeoutException。你還可以通過(guò)poll_frequency調(diào)整輪詢間隔某些弱網(wǎng)環(huán)境可以更長(zhǎng)。回答時(shí)如果能帶出一段真實(shí)的期望條件代碼價(jià)值更高from selenium.webdriver.support.ui import WebDriverWait from selenium.webdriver.support import expected_conditions as EC from selenium.webdriver.common.by import By driver.get(https://example.com/login) wait WebDriverWait(driver, 10) login_btn wait.until(EC.element_to_be_clickable((By.ID, login))) login_btn.click()這里要提醒一點(diǎn)不要在隱式等待和顯式等待混用時(shí)把時(shí)間疊得太高。兩者是獨(dú)立機(jī)制但疊加后會(huì)讓定位失敗時(shí)的總等待時(shí)間長(zhǎng)得離譜。面試官問(wèn)到“等待機(jī)制如何取舍”你最好直接說(shuō)“項(xiàng)目主要用顯式等待隱式等待只用于全局兜底”。2.3 復(fù)雜頁(yè)面交互iframe、多窗口、alert、下拉框做過(guò)真實(shí)項(xiàng)目的面試者基本都碰到過(guò)這幾類場(chǎng)景。面試題經(jīng)常是iframe 怎么處理先switch_to.frame()切進(jìn)去操作完再switch_to.default_content()切出。如果是嵌套 iframe可以一層層切或者直接用WebDriverWait等待 frame 可用。多標(biāo)簽頁(yè)怎么處理系統(tǒng)會(huì)分配一個(gè)唯一的 window handle用window_handles獲取switch_to.window(handle)切換。常見失誤是切完之后不回原來(lái)的窗口導(dǎo)致后續(xù)用例找不到元素。alert 彈窗怎么處理Selenium 對(duì) JS 的 alert/confirm/prompt 支持很成熟driver.switch_to.alert.accept()確認(rèn)dismiss()取消需要取文本用.text。下拉框怎么處理原生select可以直接用Select類select_by_visible_text最貼近用戶視角。自定義下拉框本質(zhì)是普通列表先點(diǎn)擊展開再點(diǎn)擊選項(xiàng)即可。這類題目并不難但最能反映實(shí)操手感。面試官如果要挖坑會(huì)追問(wèn)“多個(gè)元素具有相同屬性時(shí)你怎么辦”。這時(shí)該答優(yōu)先通過(guò)包含關(guān)系縮小范圍比如用父級(jí)容器定位子元素或者用find_elements拿集合后循環(huán)判斷文本內(nèi)容。2.4 元素狀態(tài)判斷可見、可用、選中之間差別很大再往下挖一個(gè)容易被忽略的高頻題“元素存在、可見、可點(diǎn)擊有什么區(qū)別”。很多自動(dòng)化失效都源于把“存在”當(dāng)“能操作”。存在DOM 樹里有這個(gè)節(jié)點(diǎn)但可能隱藏、可能被遮擋??梢姵霈F(xiàn)在頁(yè)面上且占據(jù)空間is_displayed() 返回 true??牲c(diǎn)擊不僅可見還處于啟用狀態(tài)且不被遮擋。點(diǎn)擊按鈕時(shí)報(bào)ElementClickInterceptedException就是這個(gè)元素被遮住了。經(jīng)典處理方式先滾動(dòng)到元素可見區(qū)域再等待可點(diǎn)擊狀態(tài)然后才 click。很多人只加了一個(gè)定位等待就硬點(diǎn)自然不穩(wěn)定。這也是面試?yán)铩澳愕挠美秊槭裁纯?flaky”的常見根源。3. 從寫腳本到搭框架工程能力和產(chǎn)品思維的試金石3.1 數(shù)據(jù)驅(qū)動(dòng)與參數(shù)化從硬編碼到一套用例跑出多組數(shù)據(jù)面試官問(wèn)到“你們項(xiàng)目里用例怎么組織”是希望聽到框架化思路而不是“我有一堆腳本”。這個(gè)階段第一個(gè)關(guān)鍵詞是數(shù)據(jù)驅(qū)動(dòng)。最簡(jiǎn)單的數(shù)據(jù)驅(qū)動(dòng)是把測(cè)試數(shù)據(jù)從代碼里剝離出來(lái)放到 Excel、CSV 或 YAML 里利用框架的參數(shù)化能力循環(huán)執(zhí)行。拿 Python pytest 舉例一組登錄用例可以這樣參數(shù)化import pytest pytest.mark.parametrize(username,password,expected, [ (admin, 123456, 歡迎回來(lái)), (tester, wrong, 用戶名或密碼錯(cuò)誤), (, 123456, 請(qǐng)輸入用戶名), ]) def test_login(driver, username, password, expected): login_page.login(username, password) assert expected in login_page.get_message()這樣一組代碼就能覆蓋多條數(shù)據(jù)而且測(cè)試報(bào)告直觀展示每組的通過(guò)情況。面試時(shí)如果只說(shuō)“我用數(shù)據(jù)驅(qū)動(dòng)”不夠最好能順帶講一句“測(cè)試數(shù)據(jù)和腳本分離后業(yè)務(wù)同學(xué)也能補(bǔ)數(shù)據(jù)不需要懂代碼”。3.2 PO 模式與 pytest fixture維護(hù)成本下降的秘密Page ObjectPO 模式幾乎是測(cè)試開發(fā)崗位默認(rèn)答案。核心思想是把頁(yè)面元素和操作封裝成類測(cè)試腳本只負(fù)責(zé)業(yè)務(wù)流程和數(shù)據(jù)斷言。封裝之后頁(yè)面改動(dòng)只需要改對(duì)應(yīng) Page 類不用去改幾十條用例這是運(yùn)維成本的根本改善。一個(gè)最簡(jiǎn)的 PO 結(jié)構(gòu)class LoginPage: def __init__(self, driver): self.driver driver self.username_input (By.ID, username) self.password_input (By.ID, password) self.login_button (By.ID, loginBtn) def login(self, username, password): self.driver.find_element(*self.username_input).send_keys(username) self.driver.find_element(*self.password_input).send_keys(password) self.driver.find_element(*self.login_button).click()配合 pytest 的 fixture 做瀏覽器生命周期管理結(jié)構(gòu)會(huì)更完整。fixture 可以控制瀏覽器在 class 級(jí)還是 function 級(jí)創(chuàng)建決定用例間要不要復(fù)用會(huì)話pytest.fixture(scopeclass) def driver(): options webdriver.ChromeOptions() options.add_argument(--headlessnew) driver webdriver.Chrome(optionsoptions) yield driver driver.quit()一個(gè)加分項(xiàng)是“失敗自動(dòng)截圖”。結(jié)合 pytest 的鉤子在失敗時(shí)把截圖掛到 report 或 allure 里排查問(wèn)題時(shí)能省掉大量溝通成本。面試時(shí)提到這個(gè)細(xì)節(jié)會(huì)給面試官留下“真做過(guò)項(xiàng)目”的印象。3.3 Grid 與執(zhí)行策略并行、跨瀏覽器矩陣和 CI 集成“你們跑全量回歸要多久”是高頻追問(wèn)。本地上百條用例串行跑可能 40 分鐘用 Grid 并行或者多線程分發(fā)能壓縮到幾分鐘。Selenium Grid 4 的架構(gòu)是 Hub 管理任務(wù)Node 注冊(cè)到 Hub 上執(zhí)行用例你可以讓瀏覽器矩陣覆蓋 Chrome、Firefox、Edge 等組合。CI 里的用法更常見Jenkins/GitLab CI 上跑一條 Job拉取代碼、安裝依賴、啟動(dòng) Grid 容器、執(zhí)行 pytest。面試時(shí)如果能說(shuō)一句“我們直接在管道里用 docker compose 起 Selenium Grid方便復(fù)現(xiàn)”說(shuō)明你不是只在本地寫腳本而是把自動(dòng)化當(dāng)成工程體系在運(yùn)營(yíng)。還有一個(gè)實(shí)際體驗(yàn)并行跑用例時(shí)要注意資源隔離和數(shù)據(jù)隔離。同一賬號(hào)并發(fā)登錄可能互踢產(chǎn)生臟數(shù)據(jù)。我們?cè)驗(yàn)橛美g共享賬號(hào)并行后一晚上報(bào)幾十條誤報(bào)。后來(lái)改成測(cè)試賬號(hào)池、每個(gè)用例獨(dú)享賬號(hào)才算穩(wěn)下來(lái)。4. 反爬與自動(dòng)化防護(hù)這些年和網(wǎng)站的攻防拉扯4.1 網(wǎng)站為什么要檢測(cè)自動(dòng)化操作面試中偶爾會(huì)碰到“Python Selenium 反爬蟲”相關(guān)的話題尤其做爬蟲方向的同學(xué)。這事放到測(cè)試領(lǐng)域同樣有意義因?yàn)楹芏嗑W(wǎng)站對(duì)大流量自動(dòng)化機(jī)器做了防護(hù)普通腳本很容易在登錄后被風(fēng)控?cái)r截。理解對(duì)方的檢測(cè)邏輯是做穩(wěn)定自動(dòng)化的基本功。網(wǎng)站檢測(cè)自動(dòng)化通常出于幾類原因保護(hù)數(shù)據(jù)不被批量采集、防止刷接口、降低垃圾流量。它們的手段主要分幾個(gè)維度請(qǐng)求特征UA 里帶 Selenium/HeadlessChrome 特征IP 訪問(wèn)頻率短時(shí)間異常。瀏覽器指紋Canvas、WebGL、字體渲染結(jié)果異常。行為軌跡鼠標(biāo)軌跡、點(diǎn)擊停留時(shí)間、頁(yè)面滾動(dòng)速度與真人偏差太大。環(huán)境探測(cè)檢測(cè)navigator.webdriver、某些 DOM 屬性是否被注入。面試或者項(xiàng)目復(fù)盤時(shí)能把這幾類手段說(shuō)清楚就比單純一句“被反爬了”強(qiáng)得多。4.2 常見自動(dòng)化特征規(guī)避純技術(shù)視角解析這里講的是測(cè)試自動(dòng)化場(chǎng)景下如何繞過(guò)網(wǎng)站環(huán)境探測(cè)讓瀏覽器會(huì)話盡量接近真實(shí)用戶。注意以下方式的邊界是僅用于你自己的賬號(hào)、合法授權(quán)環(huán)境下的自動(dòng)化測(cè)試或數(shù)據(jù)獲取同時(shí)遵守目標(biāo)網(wǎng)站協(xié)議和法律法規(guī)。最經(jīng)典的檢測(cè)標(biāo)志是navigator.webdriver。普通用戶瀏覽器該屬性是 undefined而 WebDriver 控制下的瀏覽器默認(rèn)是 true。規(guī)避思路是頁(yè)面加載前注入 JS 重新定義屬性driver.execute_cdp_cmd(Page.addScriptToEvaluateOnNewDocument, { source: Object.defineProperty(navigator, webdriver, { get: () undefined }); })這是通過(guò) Chrome DevTools Protocol 在每次新文檔加載前執(zhí)行腳本比直接driver.execute_script時(shí)機(jī)更早很多頁(yè)面探測(cè)就抓不到特征了。同類做法還包括修正navigator.plugins、navigator.languages以及補(bǔ)充一個(gè) UA。再往下是行為層。Selenium 的click()是瞬間完成的真人點(diǎn)擊有按下、抬起、停頓的軌跡??梢越栌?ActionChains 模擬更自然的操作from selenium.webdriver.common.action_chains import ActionChains actions ActionChains(driver) actions.move_to_element(btn).pause(0.2).click().perform()頻率控制也很關(guān)鍵。批量場(chǎng)景下請(qǐng)求間隔加上隨機(jī)延遲避免每分鐘幾十次的固定節(jié)奏。曾經(jīng)有人抱怨自己的腳本“用一段時(shí)間就觸發(fā)驗(yàn)證碼”大概率不是代碼問(wèn)題是訪問(wèn)頻次暴露了機(jī)器行為。選擇 headless 模式時(shí)也要注意--headless并不是“隱身模式”它有獨(dú)立指紋特征。部分網(wǎng)站對(duì) headless 的 Canvas 指紋和 UA 做了識(shí)別。如果測(cè)試目標(biāo)網(wǎng)站對(duì)無(wú)頭模式敏感可以改用有頭模式配合虛擬顯示器或者用真實(shí)瀏覽器直接跑。綜合考慮穩(wěn)定性和合規(guī)風(fēng)險(xiǎn)有頭模式配低頻率跑是更穩(wěn)妥的路線。4.3 驗(yàn)證碼與風(fēng)控的處理姿勢(shì)驗(yàn)證碼是自動(dòng)化繞不過(guò)的坎。面試題可能直接問(wèn)“驗(yàn)證碼你怎么辦”。合理的答題結(jié)構(gòu)是優(yōu)先避開、其次人工介入、最次再談識(shí)別。避開測(cè)試環(huán)境關(guān)閉驗(yàn)證碼開關(guān)或者使用萬(wàn)用驗(yàn)證碼這是最高效的做法。人工介入部分場(chǎng)景彈出后暫停測(cè)試人員手動(dòng)輸入適合低頻流程。自動(dòng)識(shí)別識(shí)別精度依賴圖片質(zhì)量也容易觸發(fā)更高級(jí)的風(fēng)控不建議作為常規(guī)手段。風(fēng)控?cái)r截之后最忌“硬剛”。正確姿勢(shì)是降低頻率、延長(zhǎng)間隔、換一組符合真人習(xí)慣的數(shù)據(jù)重新跑同時(shí)保留現(xiàn)場(chǎng)日志和響應(yīng)內(nèi)容。做測(cè)試自動(dòng)化多年我發(fā)現(xiàn)真正讓腳本脫困的往往不是更高級(jí)的繞過(guò)技巧而是“放慢”。慢一點(diǎn)像人一樣思考腳本反而更穩(wěn)。5. 面試官最愛(ài)追問(wèn)的異常場(chǎng)景與排查思路5.1 高頻異常清單一句話定位根因Selenium 面試題里至少有一半是問(wèn)異常的。就算不問(wèn)面試官也會(huì)拿一個(gè)報(bào)錯(cuò)截圖讓你分析。常見異常和根因大致如下異常常見根因排查手段NoSuchElementException定位器錯(cuò)誤、元素未加載、iframe 未切換先手動(dòng)畫頁(yè)面確認(rèn)元素檢查選擇器是否唯一TimeoutException顯式等待超時(shí)、網(wǎng)絡(luò)慢、條件寫錯(cuò)抓取當(dāng)前頁(yè)面源碼和截圖確認(rèn)加載狀態(tài)StaleElementReferenceException頁(yè)面局部刷新后元素重掛載重新獲取元素引用或加入重試機(jī)制ElementClickInterceptedException元素被遮擋、按鈕不可點(diǎn)擊滾動(dòng)到可見區(qū)域再等待可點(diǎn)擊狀態(tài)WebDriverException驅(qū)動(dòng)版本與瀏覽器不匹配、端口沖突核對(duì)版本、殺掉殘留進(jìn)程、檢查日志這里面最煩人的是StaleElementReferenceException。它的本質(zhì)是元素先到了一個(gè)引用頁(yè)面 DOM 更新后舊引用失效。解決思路不是 fix 一個(gè)引用而是把“重新查找元素”變成習(xí)慣操作前重新find_element或者用顯式等待封裝一層“查找后再點(diǎn)擊”的公共方法。def retry_stale_click(driver, locator, retries3): for i in range(retries): try: element WebDriverWait(driver, 5).until(EC.element_to_be_clickable(locator)) element.click() return except StaleElementReferenceException: continue raise ElementClickInterceptedException(f重試 {retries} 次仍失敗: {locator})5.2 一套通用的排查思路面試后半段面試官往往會(huì)問(wèn)“你遇到 flaky 用例怎么定位”。如果你說(shuō)“重跑一遍”這基本扣分。真實(shí)項(xiàng)目里穩(wěn)定方案是搭建一套現(xiàn)場(chǎng)證據(jù)采集機(jī)制失敗時(shí)自動(dòng)截圖并保存 HTML 源碼。記錄當(dāng)前 URL、瀏覽器版本、執(zhí)行時(shí)間。監(jiān)聽關(guān)鍵操作事件打印到日志。結(jié)合網(wǎng)絡(luò)請(qǐng)求日志判斷是前端渲染失敗還是后端接口異常。二八原則之下絕大多數(shù) flaky 用例都源于三類等待不當(dāng)、元素狀態(tài)判斷不準(zhǔn)確、數(shù)據(jù)不隔離。優(yōu)先從這三類去查比逐行讀代碼更高效。我見過(guò)一個(gè)團(tuán)隊(duì)為查一個(gè)偶發(fā)失敗花了一個(gè)下午最后發(fā)現(xiàn)是下拉選項(xiàng)被一個(gè)半透明浮層擋住了用戶看不見但腳本能點(diǎn)到于是加上“等待遮擋消失”后一個(gè)用例都沒(méi)再掛。6. 冷門但真實(shí)Excel VBA Selenium 的辦公自動(dòng)化場(chǎng)景搜索熱詞里有一個(gè)組合很容易被忽視Selenium VBA。測(cè)試開發(fā)面試可能不會(huì)直接問(wèn)但作為自動(dòng)化能力的外延它能體現(xiàn)你的技術(shù)視野。辦公場(chǎng)景里有些同事不會(huì) Python卻整天在 Excel 里對(duì)賬、抓數(shù)據(jù)這時(shí)給 Excel 加上瀏覽器自動(dòng)化能力就很實(shí)用。VBA 里使用 Selenium 通常是借助 SeleniumBasic 類庫(kù)先注冊(cè)引用再通過(guò) ChromeDriver 啟動(dòng)瀏覽器。比如一個(gè)最簡(jiǎn)單的“打開頁(yè)面抓取數(shù)據(jù)回填單元格”Sub SeleniumFetch() Dim driver As New ChromeDriver driver.Get https://example.com/data Dim data As String data driver.FindElementByCss(#result).Text ActiveSheet.Range(A1).Value data driver.Quit End Sub這里有幾個(gè)典型的坑對(duì)象引用的名稱在不同版本的 SeleniumBasic 里可能不同安裝后先查看對(duì)象瀏覽器的確切類名。Excel 里執(zhí)行代碼前需要啟用宏并且允許對(duì) VBA 項(xiàng)目對(duì)象模型訪問(wèn)。VBA 處理頁(yè)面加載狀態(tài)沒(méi)有 Python 等價(jià)的 WebDriverWait 類需要自己寫循環(huán)判斷document.readyState否則很容易取到空值再寫進(jìn)單元格。每輪循環(huán)里都要及時(shí)Quit釋放瀏覽器進(jìn)程否則運(yùn)行久了會(huì)積累一堆殘留進(jìn)程內(nèi)存被吃光。說(shuō)實(shí)話VBA 的調(diào)試體驗(yàn)比 Python 差不少但它最大的價(jià)值是零門檻。業(yè)務(wù)人員打開 Excel 點(diǎn)一下按鈕就能完成瀏覽器操作這種“把技術(shù)能力打包給業(yè)務(wù)”的思路在面試?yán)镏v出來(lái)其實(shí)挺討喜。它證明你不只會(huì)寫代碼還能把自動(dòng)化能力隔離出技術(shù)棧解決真實(shí)業(yè)務(wù)痛點(diǎn)。7. 面試答題時(shí)的連接技巧與實(shí)戰(zhàn)話術(shù)7.1 把“項(xiàng)目經(jīng)驗(yàn)”講成“決策復(fù)盤”測(cè)試開發(fā)面試的后期差距往往不在技術(shù)點(diǎn)而在表達(dá)方式。同樣做過(guò) PO 模式一個(gè)候選人說(shuō)“我用 PO 把登錄頁(yè)封裝了寫了很多頁(yè)面類”另一個(gè)說(shuō)“我當(dāng)時(shí)把元素和操作封裝成 Page 類之后需求變更只需要改一個(gè)文件半個(gè)月維護(hù)成本明顯降下來(lái)”你覺(jué)得哪個(gè)更能打動(dòng)面試官回答技術(shù)問(wèn)題時(shí)不要只描述動(dòng)作要說(shuō)動(dòng)作背后的決策依據(jù)。問(wèn)“為什么不用隱式等待”別只說(shuō)“項(xiàng)目規(guī)范不讓用”要答“因?yàn)椴糠衷丶虞d完成但不可點(diǎn)擊隱式等待管不了狀態(tài)只能等存在導(dǎo)致偶爾點(diǎn)擊失敗后來(lái)就把關(guān)鍵操作全部換成顯式等待”。一個(gè)具體的踩坑經(jīng)歷比十句標(biāo)準(zhǔn)答案更有說(shuō)服力。7.2 不會(huì)的題怎么接把“不知道”轉(zhuǎn)化成“分析框架”面試?yán)锟傆锌赡軉?wèn)到?jīng)]接觸過(guò)的點(diǎn)。這時(shí)候最忌諱編答案。更好的做法是把問(wèn)題拆開表達(dá)你的分析路徑。比如問(wèn)“如何在 Selenium 里繞過(guò) HTTPS 證書錯(cuò)誤”如果你沒(méi)配置過(guò)可以這樣答“這類問(wèn)題常見于自簽名證書環(huán)境。我了解瀏覽器驅(qū)動(dòng)支持忽略證書錯(cuò)誤的參數(shù)具體和所在環(huán)境有關(guān)。如果是我的項(xiàng)目我會(huì)先復(fù)現(xiàn)檢查證書錯(cuò)誤是出現(xiàn)在頁(yè)面加載階段還是資源請(qǐng)求階段再判斷是在驅(qū)動(dòng)參數(shù)層解決還是在網(wǎng)絡(luò)層解決?!边@一段話沒(méi)有背答案的痕跡但清晰展示了排查思路。7.3 面試官端10 分鐘內(nèi)判斷候選人水平的考察點(diǎn)如果你平時(shí)也有帶人、出題的任務(wù)這里送一套 10 分鐘快捷考察方法問(wèn)三個(gè)層層遞進(jìn)的問(wèn)題——讓他手寫一個(gè)顯式等待問(wèn)“隱式等待為什么在自動(dòng)化中口碑不好”再問(wèn)“如果頁(yè)面元素一會(huì)有一會(huì)無(wú)你的腳本怎么設(shè)計(jì)”。第一個(gè)看基本功第二個(gè)看理解深度第三個(gè)看設(shè)計(jì)能力。這套方法我用了很多年準(zhǔn)確率一直不錯(cuò)。能完整寫出顯式等待的人有三分之一能把等待、異常、重試封裝到合理抽象層的人不到十分之一。你希望自己是哪個(gè)位置的候選人平時(shí)練習(xí)就往那個(gè)方向用力。我之前帶人的時(shí)候最大的體會(huì)是Selenium 面試題其實(shí)是一組探測(cè)器它探測(cè)的不是你記住多少 API而是你在自動(dòng)化這條路上踩過(guò)多少坑、又從坑里提煉了什么東西。API 一周就能學(xué)會(huì)但如何設(shè)計(jì)穩(wěn)定的用例、如何快速定位問(wèn)題、如何在架構(gòu)上控制維護(hù)成本才是長(zhǎng)期價(jià)值的來(lái)源。所以這篇文章里每道題我都盡量把答案拉回“為什么”層面。下次面試前你不妨把每一章當(dāng)成一道自測(cè)題合上書自己講一遍。能講順了對(duì)面問(wèn)什么你都接得住。
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
极品人妻VIDEOSSS人妻| 99热手机在线精品| 91精选国| 国产资源91在线| 欧美综合婷婷欧美综| 五月激情六月综合| 亚洲婷婷婷| 三十熟女| 五月婷婷综合网| 开心五月婷婷婷美女| 久色激情| 亚洲婷婷丁香五月亚洲| 一区操| 五月天亚洲色| 热99精品视频五月| 日韩免费视频| 99免费在线视频| 婷婷六月天天| 日韩AV免费看| 91视频精品99| 婷婷丁香成人在线视频| 久久最新色色色| 夜夜谢天天干| 婷婷五月天小说网| 婷婷五月亚洲综合| 区欧美日韩成人| 婷婷婷婷婷婷婷婷| 丁香久久AV| 99碰网站| 国产高潮白浆一区二区| 激情5月婷婷| 久久激情五月婷婷| 日韩欧美四五区| 丁香婷婷五月综合欧美另类| 26uuu亚洲| 99精品热| 五月丁香六月| 超碰99资源站| 五月天婷婷网站| 9色视频在线| 1024在线观看免费视频| 91国产精品视频播放| 91九色国产| 成人片久久网站| 潮汕成人AV片在线| 五月色婷丁香| 成人无码髙潮喷水A片| 五月丁香六月色| 婷婷 久综合| 欧美婷婷综合| 极品精品一区二区三区在线| 91猫咪国产在线播放| 色婷婷成人做爰A片免费看网站| 操骚货在线| 99精品热| 婷婷丁香九月| 亚洲精品视频在线播放| 婷婷成人五月天成人文学| 日韩成人网站精品久久大全| www.五月婷婷久久.com| 激情亭亭五月| 久久丁香九| 五月婷婷丁香六月| 天天射综合网站| 丁香婷婷激情| 色吧五月婷婷| 丁香五月婷久久| 综合激情五月天| 婷婷五月成人| 在线观看中文字幕| 无码91中文字幕| 99免费超碰在线| 日日干天天爽| 婷婷丁香91综合| 99碰碰| 99视频精品在线| 五月天激情小说| 免费看成人747474九号视频在线观看| 亚州色色色| 丁香五月成人社区| 狠狠噪| www99精品亚| 狠爱婷色| 在线观看亚洲视频影院| 天天日综合网射| 五月色婷婷中文字幕| 天天操天天插天天射| 色噜噜婷婷| 色婷婷综合久久久久| 婷婷五月六| 久久九九国产精品怡红院| 精品久久9| 亚洲免费99| 国产成人在线精品| 人妻久久久久久久| 亚洲无码影片| 99热欧美| 天天婷婷天天| 五月婷婷丁香大陆免费| 五月花激情| 亚洲激情综合| 99久久综合狠狠综合久久| 琪琪色网在线| 九九热精品| 啊V视频在线观看| 9精品视频在线| 六月婷婷最新网址| 五月激情六月| 激情人妻综合| 狠狠色婷婷7777久| 另类国产区| 97碰成超视频免费视频| 米奇激情婷婷| 五月丁香啪啪| 亚洲超级碰| 久人操| 99色这里| 人人干女人| 色999;丁香五月| 亚洲精品又粗又大又爽A片| 人操91在线| 99热精品在线播放| 五月丁香欧美在线| 天堂综合久久 | 九九热这里精品| 蜜乳中文字| 婷婷色正月| 思思热精品在线视频| 97操在线| 丁香婷五月| 婷婷五月天色综合| 激情综合丁香五月| 天天五月香欧美| 综合久久影院| 五月天婷婷综合免费| 五月婷婷婷丁香播| 99久操视频| www.婷婷| 五月婷婷另类| 亚洲综合激| 少妇激情五月天| 激情五月天色播| 中字幕视频在线永久在线观看免费| 综合www色| 色情综合网| 狠狠综合网| 色五月综合网站| 亚洲狠狠婷婷综合久久久| 999婷婷综合| 激情婷婷22月间| 激情伍月 欧美| 激情亚洲网| 日韩九区| 亭亭五月丁香综合欧美| 丁香 久久| 婷婷热色| 九九这里只有精品| 外国碰视频网站97| 久久视频这里有精品99| 天天综合91入口| www.久久av.com| 91九九热| 久热 91| 婷婷五月天97干| 停停色综合伊人| 亚洲乱码精品久久久久..| 99热国产在| 裸睡玩奶头(高H)| 五月婷婷co.m| 九九十99视频| 婷婷五月天成人网| 欧美成人色婷婷| 日本三级色| 五月婷婷在线免费观看| 1024日韩| 99久久99综合| 狠狠操狠狠| 六月丁香停| 婷婷丁香色五月| 日韩人妻在线播放| 婷婷天堂综合| 亚洲性爱99在线| 综合色99| 只有精品视频在线观看| 亚洲综合五月天婷婷丁香| 色色综合日韩| 影音先锋秋秋五月婷婷| w婷婷五月婷婷w| 婷婷五月天堂网| 亚洲亚洲人成综合网络| 99热精品综合| 99热日韩| 绿色小导航AV| 亚洲综合激情五月久久| 丁香五月天激情免费在线观看AV777| 婷婷五月天你懂的| 在线不卡视频| 欧美丁香五月| 色五月婷婷五月| 激情婷婷色小说| 教师性爱毛片| 久9视频| 91精品综合久久久久久五月丁香 | 天天天综合网| 丁香色情五月天| 九九re精品视频在线观看| 天天人人综合| 久久99大全| 五月天婷婷基地| 99热中国| 欧美日韩成卜| 婷婷五月天久久久| AAA久久| 五月天激情AAAA| 99碰网站| 婷婷五月六月丁香| 六月丁花香啪啪激情欧美| 久久总和99| 国际国外精品欧洲南美洲专区无码不卡| 人妻丰满精品一区二区A片| 欧美日韩aaaa| 超碰在线免费9| 熟女人妻一区二区三区免费看| rr天天操| av在线色五月丁香婷区久| 婷婷综合中文字幕| 四虎国产精品永久在线国在线| 色丁香五月| 婷五月天在线草| 97性视频| 丁香五月婷婷色情综合| www,com,五月色色| 日本在线视频看se99| 少妇性按摩无码中文A片| 亚洲精品视频电影| 超碰色综合| 激情五月丁香六月| 丁香五月婷婷影院| 99精品视频免费观看| 夜夜天天久久婷婷| 一二三区视频韩国| 色欲五月婷婷| 成人在线综合| 思思99久久| 色综啪啪啪啪啪啪| 伊人大香蕉在线视频| 色婷婷网大全在线| 激情五月丁香五月| 国产激情综合五月久久| 激情五月天婷婷| 丁香五月久久| 女人天堂AV| 人妻人人操| 午夜成人综合| 日日操日日撸| 裸体做A爰片毛片A片免费| 狠狠狠色激情综合适合| 在线只有精品| 亚洲无线视频| 丁香六月婷婷久久综合| 国产又粗又大又爽又黄| 老妇六区| 超91在线视频| 99草在线免费观看视频| 丁香花婷婷五月天| 99热这里只有精品1025| 六月婷色| 色色激情| 中文字幕日韩无码制服诱或| 天天狠狠六月婷丁香影院| 亚洲视频99| 五月婷婷六月丁香五月| 四色永久成人网站| 日本不卡一区二区三区| 激情婷婷综合网| 五月婷婷九九久久| 99热99成人| 九九久久99| 99视频在线观看欧| 99热网址| 免费观看全黄做爰的视频| 亚洲六月综合激情久久下卡| 色婷天天| 秋霞电影理论| 99啪啪网| 怡红院AV亚洲一区二区三区H | 国产偷人妻精品一区| 99免费热视频在线| 激情网五月天| 91猫咪国产在线播放| 激情婷婷网| 亚洲国产成人在线| 丁香婷婷啪啪啪| 五月天国产成人| 九九热视频免费的| 久久久久久综合88| 91九色 熟| 伊人久久大香蕉网| www五月天激情com| 欧美丁香五月夫妻天| 亚洲高清在线| 中文字幕av久久爽| 九九热视频网站| 综合伊人狠狠| 久久九九99| 亚洲AV成人精品网站在线播放| 玖玖婷婷五月| 99色免费视频| 色噜噜婷婷| 五月婷九九草| 狠狠狠激情网| AV操操操| 丁香五月婷婷Av| 成人色站,在线视频,看片-SS1AV| 久久人人九| 国产SUV精品一区二区883| 91色在线| 久狠狠| 五月天综合网| 五月婷久久| 99免费热视频| 成人.在线日韩| 99热老司机| 国模淫穴色图| 草草女人亚洲| 国产色色网址网站| 精品色色| 久久婷婷激情五月天一区二区| 免费观看欧美成人AA片爱我多深| 色女人久久| 粉嫩AV久久一区二区三区| 色综合久久88| 亚洲色网址| 黄网在线免费| 欧美日韩大黄| 人人干人人看| 99久久久久| 婷婷五月av| 密着浓厚中出乚交尾GvG935| 色婷婷内射| 九热免费视频| 五月婷婷|欧美| 久久A V无码视频| 午夜精品人妻无码一区二区三区| 五月丁香婷婷在线综合蜜桃| 99视频自拍| VA色婷婷| 在线观看中文字幕| 久久无码激情视频| 天天日天天干天天操| 啪啪日本欧美| 狠狠色综合网站| 丰满老熟妇BBBBB搡BBB| 激情99热| 六月成人网| 婷婷欧美激情综合| 国产毛片欧美毛片久久久| 成人看片网站| 久久小视频| 成人噜噜网| 国产激情视频在线观看| 婷婷五月69| 99热18| 丁香五月激情棕合| 激情六月婷婷| 亚洲综合色丁香五月天| 抽插特写| 欧美Va婷色| 日韩一级网站| 九九亚洲视频| 色狠狠伊人久久五月丁香| 国外亚洲成AV人片在线观看| 激情色情五月天| 免费视频1区| 精品三区影院| 国产精品色婷婷久久久精品| 欧美久热| 校园激情 亚洲| 超碰免费电影| 97碰碰人人| 色五月婷婷久久| 色色com| 久久五月丁香六月婷| 九九婷| 婷婷五月婷婷| 99在线观看精彩视频| 爽tv | www.亭亭五月天| 怡红院91a√| 色婷婷888| 天天射夜夜爽| 影音先锋五月天婷婷丁香在线观看| 激情五月狠狠| 99色婷婷| 丁香六月亚洲| 丁香五月天激情综合| 色欲五月天| 婷婷9月天| 日日操天天操| 九九热在线观看视频网站| 91re色综合视频| 五月丁香亭亭| 五月婷婷,六月激情| 99热日本精品| 色婷婷丁香五月| 深爱激情网综合| 色婷婷久久综合久色综| 中国操逼99| 黄色一级影片| 天天舔天天摸天天透| 开心五月婷婷婷美女| 狠狠综合网| 亚洲色五月天| 激情五月视频| 久这里只有精品99| 六月婷婷久久| 欧美偷偷操| 久久这里只有精品热在99| 婷婷五月天激情AV影院| 九月丁香婷婷综合激情| 婷婷五月综合久久中文字幕| 亚洲欧美成人在线观看| 五月丁香影视| 日本久久高清| 人人摸人人| 欧美另类五月激情| 另类五月婷婷| 欧美色图45678| 国产超碰av| 天天拍天天操| 色五月激情五月开心五月| 五月婷婷在线播放| 综合色色婷婷| 久久伊人日日夜夜| 婷婷色播六月无码| 国产噜一噜天天噜| 亚洲成人免费电影| 国产精品成人AV在线| 熟妇国产| 婷婷成人av| 专区无日本视频高清8| 久碰婷婷视频| 五月丁香婷婷深深爱| 六月丁香激情综合| 99成人精品| 激情宗合哪里能看| 久久久久久久综合狠狠综合| 秋霞性爱AV| 五月天婷婷操逼视频| 97超碰色| 色欧美日| 丁香玖玖| 日韩欧美成人片| 无码动漫AV| 97干在线视频精品店| 日本欧美成人片AAAA| 99热精品无码| 久久曰曰| 国自产拍偷拍精品啪啪一区二区| 日日夜夜天天| 最近中文字幕2019视频1| 激情五月天综合网| 少妇大叫太大太粗太爽了A片| 五月丁香人妻| 色99视频| 777米奇影视第四色| 亚洲综合九九| 婷婷情色开心五月天99| 丁香婷婷老熟女综合网| 开心五月婷婷伊人| www.久久久久久久久久久| 青青草99re| 九月婷婷在线观看| 婷婷九月亚洲| 婷婷五月丁香综合亚洲| 99久久黄色顶级视频| 深爱五月激情网| 色色综合日韩| 天天综合影院| 另类激情五月| 操操碰| 熟女人妻一区二区三区免费看| 色99视频| 亚洲av成人一区二区电影在线| 九九成年视频| 九九99九九99九九99视频网| 丁香六月AV| 另类图片激情五月天| 五月婷婷伊人网| 射久久丁香五月| 五月激情婷婷丁香天堂| 久久综合九九| 久久婷婷免费| 99热免费精品| 色五月婷婷成人视频| 色五月成人在线| 五月天精品视频| 成人综合视频在线| 亚洲精品一区无码A片| 色噜噜狠狠狠狠色综合久欧美| 久久99久久久久久久噜噜| 欧美婷婷日本| 色五月天在线| 大香蕉婷婷色| 射满了还射免费在线观看 -午夜版全集-新视觉影院 | 伊人六月无码视频| 99视频| 99精品视频网| 任你搞在线观看视频| 日韩精品一区二区亚洲AV观看| 人妻性爱av网站| 婷婷色五月综合| 久热9| av操B网站| 婷婷激情九月| 天天操综合网站| 日韩黄黄| 久草嫩草在线观看| 深爱激情小说五月婷婷| 久久激情五月婷婷| yellow视频在线观看91| 丁香五月人妻| 97超级啪啪在线观看| 99久久精品色老| 激情综合婷婷| www.久久久久| 一起草av在线观看| 五月天激情综合10p| 五月伊人网| 五月刺激丁香月综合| 91啪啪| 丁香六月情| 色综合五月天| 情色五月天网站| 直接看的AV网站| 色色无码| 99热99干| 91九色欧美| 久久九九思思| 亚洲九九九九| 五月花婷婷| 欧美六月| 九热...av| 久久青草国| 色五月天天| 丁香五月天电影| 操97免费超级视频| 99热在线观看| 在线伦子99热| 五月天亚洲色| 五月丁香婷婷99| 五月天成人在线播放丁香| 色婷婷激情| 99久re热视频精品98| 女人被男人吃奶到高潮| 色婷亚洲| 天天综合网站| 99久热精品在线| 婷婷五月花丁香| 97色精品视频 | http://www.sd-xiangsu.com/| 亚洲乱码精品久久久久..| 色色吧综合| 久久多色| 成人AV在线电影| 台湾无码A片一区二区| 97在线日本| 色婷视频| 五月天婷综合| 色五月婷婷av| 天天操天天爱天天日| 99精品在线观看| 网色99| 六月丁香久久| 综合激情伊人影视在线| 激情网五月天| 婷婷五月精品在线| 五月丁香久久激情综合| 五月天婷婷无码| 伊人玖玖婷婷| 91丨九色丨东北熟女| 日本超碰在线| 九九综合久久| 天天热夜夜操| 亚洲综合成人网站| 91viP在线看| 26uuu青青| 三级三久久线久久99久目本WW| Xx色综合| 婷久久久| 国产精品久久..4399| 五月六月播婷婷| 成人无码精品1区2区3区免费看| 欧美熟女乱又伦| 人操综合| 亚洲综合九九| 婷婷丁香五另类网站| 五月天婷婷丁香成人网| 婷婷五月综合体验看| 久久9视频欧美| 亚洲综合九九| 丁香婷婷成人网| 五月婷婷亚洲| 国产精品久久久爽爽爽麻豆色哟哟 | 九九伊人网| 天天日,夜夜爽| 色色婷婷丁香五月天| 国产午夜一区二区三区| 米奇影视资源婷婷狠狠色激情欧美五月丁香| 操逼电影免费看| 在线视频99| 美妞av| 色玖玖网| 99激情| www.婷婷五月| 色婷婷五月基地在线| 色色丁香色五月| 丁香五月成人网| 亚洲综合色色色| 九九热99re8热免费观看| 综合久久五| 欧美精产国品一二三区| 亚洲色vA| 婷五月丁香俺| 久久91久久91色欲精品| 桃色成人网| 91丨九色丨熟女|新版| 日本成人小说婷婷六月| 五月色情婷婷| 六月婷婷啪啪| 特黄三级又爽又粗又大| 精品一二三区久久AAA片| 中文AV在线观看| 天天操天爱综合| 伊人婷婷青青cao| 亚洲乱啪| 亚洲成人AV高清字幕| 丁香九月久久| 色情成人五月天| 五月色精品| 色情五月丁香婷婷网| 一区视频网站| 人人插9| 欧美日韩国产一二区| 狠狠色狠狠操| 无码激情| 丁香五月日韩| 这里只有精品视频| 亚洲视频99| 色色免费网战视频| 欧洲日韩一区二区三区| 亚洲综合激情五月天婷婷| 九九99热| 欧美色图天堂网色| 国产AV不卡福利| 丁香婷婷激情四射五月| 五月天丁香婷婷视频网址 | 国产这里只有精品| 婷婷中文字幕| 日韩aaaaa| 激情综合色网| 丁香五月天啪啪| 97人妻碰碰碰久久香蕉| 丁香五月天电影| 婷婷激情五月天激情| 国产裸舞表演WWWW| 色婷婷社区| 99爱视频免费看| 五月婷婷色情| 五月婷婷六月婷| 婷婷综合六月| 五月丁香六月婷婷亚洲综合| 色色色色色网站| 五月天婷a| 亚洲成人乱码av网站| 亚洲十月婷婷综合| 狠狠五月综合在线| 79精品视频在线观看,| 91精品久久久久久综合五月天| 99r这里| 99热九九热| 久久99热免费最新版| 婷婷五月天综合网| 欧美啪啪9| 色~性~乱~伦~噜| 色婷婷五月综合| 国产亚洲99久久精品| 丁香网站| 九九精品丁香花| 影音先锋 一区| 99精品一二三四视频| 色色激情五月天| 狠狠操之狠狠操| 色婷丨日丨天丨综合久久| 婷婷六月天亚州| 综合激情视频| 99久久极情精品一区| 婷婷爱五月天| 五月天丁香婷婷久久九| 婷婷综合九月| 五月花综合| 亚洲 小说 欧美 激情 另类| 日韩五月丁香| 丁香九月婷婷| 久久九九激情五月天 | 丁香五月天激情免费在线观看AV777| 精品人妻一区二区三区四区不卡在| 久青操| 丁香五月电影| 伊人大香蕉综合在线| 五月丁香福利| 天天干,噜噜色,狠狠色| 天天日 天天草| 99视频久久| www...com黄在线观看| 欧美天堂久久| 九六五月天婷婷| 激情六月天| 俺去也五月| 在线99色| WWW、日本色丁香、co m| 饮料下药迷倒漂亮女同事强干| 色爱亚洲| 亚洲激情六月| 久久久久久久久久久久久久人妻视频| 99热国产这里只有精品| 超碰久热| 色婷婷综合综合网| 色性日本| 女人天堂AV| www.99精品视频| 天天色综合色| 亚洲精品电影| AV免费在线网站| 久久激情综合| 久久99婷婷| 狠狠色婷婷丁香五月| 婷婷欧美偷拍综合| 天堂久久婷婷| 亚洲无码猫咪| 五月婷婷六月激情在线| caop在线| 91久久免费| 丁香五月婷婷成人网| www99热| 超级碰碰碰碰视频| 五月婷婷激情四月| 麻豆WWWCOM内射软件| 色婷婷亚洲婷婷| 五月丁香网站| 免费观看日韩成人av| 天堂五月婷婷| 五月天精品| 色区久久| 色吧五月婷婷| 色人久夂| 伊人五月天| 涩玖玖免费视频| 欧美亚洲婷婷五月| 婷婷色情 | 色色综合日韩| 91操操| 色婷婷XXXXX| 久久久久9| 精品成人在线观看| 99热99美国在线观看| 色婷婷亚洲综合av| 五月天婷婷无码视频| 射满了还射免费在线观看 -午夜版全集-新视觉影院 | 激情五月婷黄版| 五月激情网站| 综合精品啪啪| 久久久精品色| 日本三级色| 永久精品| 久久婷婷五月综合色丁香| 激情小说婷婷五月| 婷婷综合伊人| 99热精品在这里| 日本123区日韩欧美不卡在线看| 狠狠激情五月天| 五月色激情综合网| 天天射影院| 伊人网啪啪| 久久免费操| 婷婷五月丁香久久| 亚洲综合成人网| 亚洲高清在线| 99热在线观看| 丁香婷婷六月天| 五月天婷久久| 夜夜夜夜撸夜夜操| 丁香五月婷婷av| 99精品久久| 亚洲国产色婷婷| 国产真人做爰视频免费| 丁香欧美| 99热超碰天堂网| 欧美日韩123| 五月丁香猫咪久久婷婷综合视频激情四射网入口 | 无码人妻少妇色欲AV一区二区| 久久久久久草黄色片AV在线观看| 午夜不卡久久精品无码免费| 99 这里只有精品| 丁香五月婷婷香| 久久五月天网| 97亚洲色 torrent magnet| 国产精品涩涩涩视频网站| 男女久久婷婷五月天| 日本在线视频看se99| 武则天精品久久| 无码网| 97人碰人操| 五夜丁香| 亚洲俩性性爱图片久久第六页| 亚洲中字AV电影在线网站| 九九精品热| 婷婷综合久久| www.ywav| 婷婷视频网| 99视频精品8| 国产精品丝| 色婷婷99| 超碰99热精品| 成人色五月天| 激情四射婷婷色色色| AV电影在线播放| 丁香五月婷久久| 色色99| 九九这里有精品| 久久97| 五月天大香蕉婷| 青草五月天| 99久久玖玖| 色色色视频免费无码| 五月天丁香看婷婷| 大香蕉综合| 丁香五月天激情视频| 天堂AV三级| 国产黄色一级片| 九九色综合| 婷婷五月在线视频| 五月婷色丁香| 激情五月丁香五月| 五月婷天堂视频| 99久久婷婷| 色停停五月,在线观看| 蜜臀av无码久久久久久久久| 草草影院爱爱| 99久久婷婷国产综合精品电影| 婷婷精品在线| 久久精品视频在这里有| 丁香五月第九色| 五月丁香啪啪啪综合网| 99九九免费精品| 欧美内射AAAAAAXXXXX| 亚洲另类婷婷综合| 五月激情六月丁香| 色婷婷五月天堂资源| 久色视频在线| 色婷婷丁香综合中文字幕| 成人国产网| 第四色在线观看| 五月天综合久久| 成人网址在线观看| ji'qi'luan'ren'lun| 色九四色| 国产超碰在线| 色五月天在线观看| 激情无码网| 天天爽综合网| 天天射天天射一道本日本社区| 亚洲美女婷婷五月天| 超碰免费99| 色一情一乱一乱91Av| 日韩啪啪自拍| a毛片二逼wwwwwwwwww| 麻豆AV一区二区三区| 97婷婷色| 97香蕉碰碰人妻国产欧美| 啊V视频在线观看| 色99热| 日韩色久| 9久久久久久久久久久| 天天射影院| 天天干一干| 最新va在线播放| 五月婷婷丁香五月婷婷丁香| 天天婷婷| 无码色| 五月丁香六月色| 日本一毛片| WWW.99热| 激情六月综合| 婷婷久久综合| 国产精品国产成人国产三级| 丁香五月婷婷五月| 成人精品视频99在线观看免费| 99亚洲精品| 日本无码专区| 一本到不卡高清DVD| www.久久久久久久久久.com| 97超碰99热99| 大香蕉人在线65| 久热中文字幕| 看婷婷五月天网| 色婷婷五月天激情在线播放| www.五月天婷婷姐姐| 婷婷五月综合视频| 激情五月六月| 色爱综合网| 99热这里只有精品8| 少妇高潮呻吟A片免费看软件| 91丁香综合| 中文在线视频久9| 久久99看免费| 五月婷婷AV| 26uuu美女三级视频| www 五月天 com| 成人性爱无码| 五月伊人网| 五月丁香| 亚洲中文AV网站| 9999三级片| 色婷婷五月天激情久久| 久久欧洲综合网| 婷婷八月丁香激情综合| 乱码操操| 艹B高清无码| 婷婷五月无码| 久久98| 色婷婷亚洲在线| 亚洲色图五月丁香| 99re6在线视频精品免费| 丁J香六月首页| 性一交一乱一交A片久久四色| 夜夜天天久久婷婷| 久久婷婷五月综合| 日韩婷婷| 婷婷久久婷婷色五月| 九九综合色| 日韩色情亚洲五月天婷婷| 99性爱| 人妻丰满精品一区二区A片| 热久91| 丁香婷婷人妻| 色深爱五月| 丁香婷婷啪啪| 婷婷综合日本| WWW、日本色丁香、co m| 日韩黄色电影| 日韩二区搞逼插逼毛片| 991国产精选视频在线播放下载| 这里只有精品,日韩视频| 人人操av| 美女婷婷激情亚洲| 久久98| 激情欧美丁香五月| 成人午夜天| 九九久久五月天综合伊人| 五月婷婷色吧!| 五月婷婷综合网| 色婷婷性爱| 韩国婷婷丁香五月| 97久久视频| 综合精品99| 久久人妻情侣| 99免费| 五月99久久| 天天色官网| 极品人妻VIDEOSSS人妻| 天堂色婷婷| www色婷婷com| 国产做爰视频免费播放| 久久久人妻人伦| 五月婷婷在线观看黄| 日本WwW色偷偷丁香花久久久京东热| 久久久婷婷婷| 五月天激情小说网| 婷婷五月超碰| 色5月婷婷| 疯狂做受XXXX高潮A片动画| 91精品久久久久| 偷拍91九色| 中文字幕在线不卡视频| 亚洲一区二区无码蜜乳av| 亚洲综合九九| 91中文在线| 国产成人综合在线| 操逼国产91| 丁香五月婷婷在线观看| 婷婷色色网站| 亚洲九九九九| 欧美成人AAA片一区国产精品| 天天狠狠婷婷在线| 亚洲综合网 665566| 99ri视频在线播放| 六月天婷婷| www亚洲无码| 终合激情网| 墨西哥毛片内射精| 六月丁香久久| 91超级碰人人操| 狠狠色噜噜色狠狠狠综合久久成人波| 丰满人妻妇伦又伦精品国产| 久久亚洲精品成人无码网站导航| 婷婷综合视频| 亚洲日韩国产黑丝黑丝AVAV一区二区三区 | 思思热这里只有精品| 九九RE视频在线精品| 99九九精品视频| 日本成人综合| 婷婷色丁香五月| 天天色图| 99热这里只有精品16| 香蕉久久国产AV一区二区| 99久久婷婷| 激情综合五月| 色婷久久| 这里只有精品在线播放| 大香蕉在九| 五月天精品综合| 色综合久久无码| 91se在线观看| 日韩不卡DvD| 婷婷五月天网| 欧美丁香六月激情视频| 色在线免费观看| 色五月激情五月天| 久久五月天视频| 丁香六月欧美| 91dy.av| 最新国产AV| 人人草人人舔| 热99精品视频在线观看| 香蕉AV777XXX色综合一区| 深爱五月日韩| 色99热| 激情综合五| 欧美激情综合色丁香婷婷五月天| 超碰在线94| 99热综合| 色婷婷五月婷婷五月婷婷五月| 色爱爱综合网| 久久久大香蕉| 婷婷五月天色综合翘| 性爱技巧五月| 欧洲亚洲免费视频9| 九九综合精品| 免费看片在线观看| 激情小说视频图片| 久久这里99| 色五月婷婷大香蕉| 丁香五月色| 久久色情综合免费网站| 五月天啪啪视频| 亚洲情综合五月天| 日韩99视频| www,欧美干干干干干干| 超碰中文字幕在线| www.五月天婷婷| 99热在线观看免费| 熟女激情网| 国内熟女黄色系列| 99性视频| 激情五月四色| 九月丁香婷婷综合激情| 9色免费网| 五月丁香啪啪啪| 激情六月丁| 婷婷五月天亚洲色| 91色涩| 久久婷婷免费| 99久在线精品99re8| 99热在线观看亚洲区| 大香蕉伊人久久| 成人精品网站在线观看| 黄网在线播放| 婷婷色操| 亚洲人人操BD| 久久久久久xxxxx| 91丁香婷婷综合资源| 亚洲爆乳无码精品AAA片蜜桃 | 国产亚洲99久久精品熟女| 五月综合色| 先锋资源91| 另类视频丁香五月| 久久久久久久综合狠狠综合| 97超级碰碰碰| 九月丁香久久网| 婷婷六月丁香五月| 色婷婷色99国产综合精品| 人妻熟妇六区| 日日爱678| 91ncm视频| 九色1区视频在线| 老师的粉嫩小又紧水又多A片视频| 91超碰在线播放| 桃色激情网| 色色色欧美色色| wuyuedingxiang99| 97操视频| 日本99色| 国产在线视频1234| 天天插操| 中文字幕精品无码一区二区| 久久性爱视频网站| 婷婷性爱影院| 天天干,天天日| 亚洲日韩欧美综合VA| 五月丁香六月停停| 色婷婷在线综合色播网| 婷婷色激情网| 五月丁香香蕉| AAA久久久| 婷婷综合视频| 天天综合久久| 激情图片久久| 日本精品九九九| 欧美婷婷精品激| 五月丁香婷婷激情四射迷人| 国产九月婷婷| 天堂久久久久天堂网| 国产无套精品一区二区| 99热这里有精品| 少妇熟女视频一区二区三区| 六月丁香久久| 性做爰1一7伦| 先锋影音av色五月天资源站| 日本不卡一区二区三区| 内射干少妇亚洲69XXX| 青青草免费公开视频| 国产精品99久久久久久久女警| 超碰99在线| 日韩少妇内射免费播放| 91精品久久久久久久久久| 日本熟妇乱妇熟色A片蜜桃| 日本不卡一区二区三区| 亚洲愉拍99热成人精品| 午夜精品久久久久久久爽| 六月成人网| 天天肏在线视频| 丁香五月成人自拍| 九九久久免费视频44| 91九色中文字幕女在线观看| 久久婷婷五月丁香网| 久九色| 深爱五月激情综合| www.狠狠操.com| 俺去也在线视频| 婷婷久久草| 激情AV在线| 99这里只有精品|v| 一本道在线电影| 五月婷婷久久大片| 99re视频在线精品| 久操97| 另类视频一区| 青青草搞屄视频网站| 午夜无码精品色综合久久| 99久久大片| 99色在线观看视频| 五月叮香啪| 粉嫩AV久久一区二区三区| 91女人18毛片水多国产| 亚洲成Av人片乱码色第1集| 99精品在线观看视频| 久久网站观看免费欧洲国产| 亚洲激情网站| 激情久久久久久| 激情五月天婷婷| 夜色爱爱亚洲| 丁香大香蕉| 色综合性视频| 久久婷婷亚洲| 久久久激情| 成人在线免费网址| 99久久精| 狠狠操性爱av| 九九色婷婷| 九九色婷婷五月天| 91精品综合久久婷婷九色| 色插综合网| 99玖玖在线视频| 熟女人妻一区二区三区免费看| 日本三级网址| 热久久77777| 能看的av网站| 开心五月婷婷| WWW·色色色·COM| www.五月激情.com| 日本女人久久| 超碰成人公开| 色综合久久44| 五月婷婷综合潮喷| 97精品综合久久| 久9久视频精品| 九九碰九九爱97| 无码任你操| 日韩精品AV一区二区三区| 欧美色色色色色色色色色色| 婷婷综合成人五月天| 色婷婷19| 精品五月花| 丁香五月成人论坛| 爱久综合| 亚洲成人综合网在线免费观看| 婷婷第六色| 日日夜夜干| 九热视频在线伦| 婷婷六月色丁香视频在线观看| 婷婷五月综合社区| 伊人激情影院| 去色色五月天| 天天色综合色| 婷婷伊人网| 正宗黄色毛片| 日日夜夜小色哥| 国产精品色色| 九九香蕉网| 欧美影院| 玖玖综合色区在线观看| 翔田千里aV中文字幕| 免费亚洲婷婷中文字幕| 1囯产午夜仑鲁鲁| 五月天色在线| 狠狠狠狠狠狠| 九月丁香| www.五月天婷婷| 色情婷婷久久五月天| 九九草热在线观看| 操99| 妇激情基地| 亚洲AV中文在线| 青青日韩| 另类五月激情| 91制片厂久久久国产电影| 五月开心六月婷婷在线播放网站| 色五月综合激情| 99狠狠| 99热这里只有精品中文字幕| 丁香五月婷婷色综合| ji'qing'luan'ren'lun| 久久这里只有精品99| 九九碰九九爱97超| 色婷六月| pom538精品视频| AV性爱网| 4399欧美另类视频| 五月天婷婷在线播放| 91黄色五月天视频| 亚洲激情免费视频| 婷婷综合国产| 亚洲综合激情五月| 丁香婷婷浪潮AV久久综合 | 性色99| 久久久久9久无码视频| 天天插天天| 六月色丁香婷婷| 影音先锋秋秋五月婷婷| 丁香五月激情视频在线| 国产毛片操B| 色永久| 亚洲操B视频| 日韩AV片| 成人五月天婷婷|