免费国产精品自在自线-91精品国产色综合久久久浪潮-99热久久免费频精品-国产精品国模在线观看-久久亚洲国产精品成人?V秋霞-久久国产一级A片免费播放-亚洲国产欧洲综合97久久-久久国产白嫩美女呻吟高潮

ARTICLE DETAIL

資訊詳情

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

測試工程師數(shù)據(jù)庫操作實戰(zhàn)指南:從SELECT到事務與性能排查

測試工程師數(shù)據(jù)庫操作實戰(zhàn)指南:從SELECT到事務與性能排查 作為測試工程師你日常的工作流里有一個繞不開的坎不管是功能測試、接口測試還是自動化腳本跑完用例之后總要回到數(shù)據(jù)庫里查一筆數(shù)據(jù)、改一個狀態(tài)、造一條測試記錄。我見過太多測試同行的日常狀態(tài)是——業(yè)務邏輯和用例設計都很熟練但一到數(shù)據(jù)庫環(huán)節(jié)就開始四處求人幫我看下這條數(shù)據(jù)怎么查不出來這個SQL寫錯了哪里測試環(huán)境的數(shù)據(jù)又被搞臟了誰幫忙清一下。說實話數(shù)據(jù)庫操作命令對測試工程師來說不是那種會用就行的錦上添花而是直接影響你工作效率的基礎功。你不需要達到DBA那種能調(diào)參優(yōu)化集群的水平但你必須能獨立完成數(shù)據(jù)準備、結(jié)果校驗、異常數(shù)據(jù)清理這些高頻操作。這篇文章我打算把我自己這些年實測下來最常用的數(shù)據(jù)庫命令、場景化操作方法和踩坑經(jīng)驗做一個系統(tǒng)性的梳理從最簡單的SELECT到事務處理、性能分析都有覆蓋適合各個階段的測試工程師對照著用。1. 測試工程師為什么必須掌握數(shù)據(jù)庫操作1.1 測試工作與數(shù)據(jù)操作的交集在哪里先說一個很現(xiàn)實的問題測試工程師每天都在跟數(shù)據(jù)庫打交道但很多人沒意識到這一點。功能測試里你要驗證提交訂單后庫存表數(shù)量是否減一這需要查數(shù)據(jù)庫接口測試里一個創(chuàng)建用戶的接口跑完你要確認user表里真的多了一條記錄這也需要查數(shù)據(jù)庫自動化測試中你要先往數(shù)據(jù)庫里插入一批符合條件的數(shù)據(jù)作為前置準備測試結(jié)束后還要把這些數(shù)據(jù)清理掉避免影響下一輪測試。我以前帶過一個剛?cè)胄械耐滤麥y一個用戶注銷的功能界面上提示注銷成功他就把這個用例標記為通過了。我問他你怎么確認數(shù)據(jù)庫里的用戶狀態(tài)真的變成已注銷了他愣住了。后來我?guī)麑懥艘粭l簡單的SELECT語句查用戶表的狀態(tài)字段結(jié)果發(fā)現(xiàn)實際狀態(tài)還是正常——原來那個功能的前端校驗有Bug接口壓根沒調(diào)成功。這個例子很典型不做數(shù)據(jù)庫校驗很多看起來通過的用例實際上是在掩耳盜鈴。1.2 測試場景中高頻率使用的數(shù)據(jù)庫操作類型從我個人的實踐經(jīng)驗看測試工程師使用數(shù)據(jù)庫的場景高度集中在四類操作上。第一類是查詢驗證占比最高幾乎所有測試用例都離不開用SELECT語句核對接口或頁面操作后的數(shù)據(jù)結(jié)果。第二類是數(shù)據(jù)準備比如測試下單流程你得先準備一個庫存充足的商品、一個余額足夠的賬號這些前置數(shù)據(jù)往往需要直接用INSERT語句造出來。第三類是數(shù)據(jù)清理一輪測試跑完臟數(shù)據(jù)、關(guān)聯(lián)數(shù)據(jù)、中間表殘留都需要你清理還原避免污染下一輪測試DELETE和TRUNCATE在這里高頻出現(xiàn)。第四類是數(shù)據(jù)修改某些場景下你需要繞過業(yè)務邏輯、直接改一條記錄的字段來模擬特定狀態(tài)比如把訂單狀態(tài)從待支付改為已支付以便測試后續(xù)流程這種操作需要UPDATE語句來實現(xiàn)。了解這些場景之后你會發(fā)現(xiàn)測試工程師對數(shù)據(jù)庫命令的掌握程度直接決定了你的測試效率和質(zhì)量。如果只會百度一個SQL然后復制粘貼你永遠要比別人多花幾倍的時間在處理數(shù)據(jù)和驗證結(jié)果上。2. 最核心的查詢命令SELECT的實戰(zhàn)級用法2.1 SELECT基礎語法與經(jīng)驗習慣查詢是測試工程師使用頻率最高的數(shù)據(jù)庫操作沒有之一。SELECT語句的基本語法很簡單SELECT 字段列表 FROM 表名 WHERE 條件。但我見過很多人在這一步就養(yǎng)成了壞習慣——動不動就SELECT *。我在實際工作中強烈建議你養(yǎng)成顯式列出所需字段的習慣原因有兩個第一生產(chǎn)環(huán)境的表字段可能非常多全字段查詢會拉取大量不必要的數(shù)據(jù)影響查詢效率第二字段過多會把結(jié)果集刷屏你反而看不清自己關(guān)心的字段值。比如你要查訂單表里某條記錄的支付狀態(tài)就寫SELECT order_id, pay_status, amount FROM orders WHERE order_id 12345既清晰又高效。新手最容易忽略的一個細節(jié)是MySQL默認對字符串比較不區(qū)分大小寫所以WHERE user_name admin和WHERE user_name ADMIN查出的結(jié)果是一樣的。但如果某個表的字段設置了BINARY屬性或使用utf8mb4_bin排序規(guī)則大小寫就是敏感的。你在測試排查問題時如果發(fā)現(xiàn)明明有這條數(shù)據(jù)但查不出來先看一眼排序規(guī)則這類問題很坑人。2.2 WHERE條件過濾從基礎到進階WHERE子句是查詢的過濾核心。常見操作符包括、!、、、、、BETWEEN、LIKE、IN和IS NULL。測試場景中有一個高頻需求按時間范圍查數(shù)據(jù)。比如我要驗證過去24小時內(nèi)的所有登錄日志SQL可以寫成SELECT user_id, login_time FROM login_log WHERE login_time DATE_SUB(NOW(), INTERVAL 1 DAY) ORDER BY login_time DESC;這里有個實操經(jīng)驗值得說一下判斷字段是否為NULL必須用IS NULL或IS NOT NULL不能寫 NULL。 NULL永遠返回空結(jié)果這是SQL的規(guī)范設計不是Bug。我每次帶新人都會專門強調(diào)這個點因為在排查為什么數(shù)據(jù)查不出來時WHERE status NULL這種寫法出現(xiàn)的頻率實在太高了。另外測試場景中還經(jīng)常會用到LIKE做模糊匹配。需要注意LIKE %關(guān)鍵字%這種寫法無法利用索引數(shù)據(jù)量大時查詢會很慢。如果只是驗證某條數(shù)據(jù)是否存在我更建議用精確匹配加LIMIT 1或者用EXISTS子查詢效率會高很多。2.3 分組統(tǒng)計與結(jié)果排序數(shù)據(jù)校驗的關(guān)鍵步驟測試中經(jīng)常要驗證數(shù)量對不對。比如注冊功能測試完你要確認今天新增了多少用戶下單功能測試完你要確認訂單總數(shù)和總金額是否正確。這類需求離不開GROUP BY和聚合函數(shù)。我舉一個實際場景測試一個促銷活動活動規(guī)則是每個用戶最多只能參與3次你要驗證系統(tǒng)是否真的限制了同一用戶參與次數(shù)??梢杂靡粭l分組統(tǒng)計SQL快速核對SELECT user_id, COUNT(*) AS participate_count FROM activity_participation GROUP BY user_id HAVING COUNT(*) 3;這條SQL會把參與次數(shù)超過3條的用戶全查出來如果有結(jié)果說明系統(tǒng)限制邏輯存在問題。這里的HAVING是在分組后做條件過濾而WHERE是在分組前過濾兩者區(qū)別必須搞清楚。WHERE無法使用聚合函數(shù)作為條件這就是為什么需要HAVING存在的原因。排序方面ORDER BY支持多字段排序比如ORDER BY create_time DESC, id ASC的意思是先按創(chuàng)建時間倒序時間相同再按ID正序。測試中你要確認最新一條數(shù)據(jù)時最普遍的做法是ORDER BY id DESC LIMIT 1配合自增主鍵非常穩(wěn)健。2.4 分頁查詢LIMIT的正確打開方式分頁查詢在接口測試和頁面測試里出現(xiàn)頻率很高。MySQL中用LIMIT實現(xiàn)分頁有兩種常見寫法LIMIT 10表示只返回前10條LIMIT 10, 20表示從第11條開始返回20條。另一個容易混淆的寫法是LIMIT 20 OFFSET 10它和LIMIT 10, 20的含義是一樣的。這個順序問題我建議你記住一個口訣寫在前面的是偏移量寫在后面的是返回條數(shù)。分頁查詢有一個典型的測試場景驗證列表接口的分頁參數(shù)是否正確。比如前端傳page2size10你要去數(shù)據(jù)庫里數(shù)一下總共多少條數(shù)據(jù)然后手動算出第二頁應該展示哪些數(shù)據(jù)再和接口返回對比。這種校驗光靠肉眼一條條看是低效的直接用SELECT ... LIMIT 10 OFFSET 10查出第二頁數(shù)據(jù)然后和接口返回做比對效率會高很多。3. 數(shù)據(jù)準備與清理INSERT、UPDATE、DELETE的測試應用3.1 INSERT造測試數(shù)據(jù)的正確姿勢測試執(zhí)行前準備數(shù)據(jù)是高頻場景INSERT命令幾乎每天都要用?;菊Z法是INSERT INTO 表名 (字段1, 字段2) VALUES (值1, 值2)。但實際測試中造數(shù)據(jù)的方式遠不止這一種。最基礎的表結(jié)構(gòu)是用戶表、訂單表、商品表之間存在外鍵關(guān)聯(lián)。你不可能只往一張表里插入數(shù)據(jù)就能完事需要同時維護多張關(guān)聯(lián)表的數(shù)據(jù)一致性。比如測試下單流程你需要先有用戶、有商品、有庫存記錄如果直接INSERT一張空訂單表業(yè)務流程走不通。這時候我通常會寫一個SQL腳本按依賴順序依次插入多張表的數(shù)據(jù)并且在一個事務里執(zhí)行保證要么全部成功、要么全部回滾。還有一種非常實用的寫法是復制表數(shù)據(jù)來造數(shù)據(jù)INSERT INTO target_table (col1, col2) SELECT col1, col2 FROM source_table WHERE ...。比如我想給某個用戶多造10個已完成訂單可以直接從已有的相似訂單里復制這樣數(shù)據(jù)更接近真實比手工一個個INSERT效率高得多。3.2 UPDATE場景模擬和狀態(tài)切換的利器UPDATE語句在測試中的應用非常巧妙。比如你要測試訂單列表頁在訂單處于不同狀態(tài)下的展示是否符合預期你沒有耐心一個個通過業(yè)務操作去觸發(fā)狀態(tài)流轉(zhuǎn)那就可以直接改數(shù)據(jù)庫。這屬于典型的測試后門操作合法且高效。UPDATE orders SET order_status PAID, pay_time NOW() WHERE order_id 20240101001;這種操作的性價比非常高幾分鐘內(nèi)你就能把一條訂單從待支付改到已支付再改到已發(fā)貨完整覆蓋各種狀態(tài)下的頁面展示和邏輯分支。但需要注意直接改數(shù)據(jù)庫繞過了業(yè)務邏輯校驗改出來的數(shù)據(jù)可能與正常業(yè)務流轉(zhuǎn)產(chǎn)生的數(shù)據(jù)存在細微差異。所以這種操作適合功能驗證不適合做嚴格的接口數(shù)據(jù)一致性測試。我踩過的一個大坑是UPDATE語句忘了加WHERE條件結(jié)果把整張表的數(shù)據(jù)全部更新了。這事在測試環(huán)境還好說恢復一下就行但如果在生產(chǎn)環(huán)境后果不堪設想。所以我給自己定了一個鐵律寫UPDATE和DELETE語句時先寫WHERE條件再回來寫UPDATE或DELETE后面的部分。同時養(yǎng)成寫完SQL先執(zhí)行SELECT驗證影響范圍的習慣。3.3 DELETE與TRUNCATE數(shù)據(jù)清理的學問測試結(jié)束后的數(shù)據(jù)清理是很多人忽略但必須重視的環(huán)節(jié)。DELETE和TRUNCATE都能刪除數(shù)據(jù)但區(qū)別很大。DELETE是逐條刪除支持WHERE條件刪除過程記錄日志可以配合事務回滾TRUNCATE是直接清空整張表速度快但不可回滾也不能加WHERE條件。我建議的清理策略是只清理你這次測試造出來的數(shù)據(jù)用DELETE加精確的篩選條件比如按測試標識、特定時間段或特定的測試賬號前綴來刪。TRUNCATE這種全表清空操作只適合用在完全獨立的臨時表上。我曾經(jīng)見過一個測試為了省事直接TRUNCATE了一張基礎數(shù)據(jù)表結(jié)果整個測試環(huán)境所有依賴這張表的模塊全部報錯修復花了大半天得不償失。一個更穩(wěn)妥的做法是造數(shù)據(jù)的時候帶上明顯的測試標識。比如插入測試用戶時用戶名統(tǒng)一加test_前綴或者加一個固定的batch_no字段這樣清理時一條DELETE就能精準搞定不會誤刪別人的數(shù)據(jù)。4. 聯(lián)表查詢驗證跨表數(shù)據(jù)的核心技能4.1 INNER JOIN、LEFT JOIN的場景差異測試中經(jīng)常要驗證多張表的數(shù)據(jù)聯(lián)動。比如用戶下單后用戶表要扣余額、訂單表要生成訂單、庫存表要減庫存、流水表要記一筆明細。你要驗證這些數(shù)據(jù)的一致性不可能一張表一張表分開查了再自己比對直接聯(lián)表查詢更高效。INNER JOIN只返回兩張表中匹配上的記錄適合驗證應該有對應關(guān)系的數(shù)據(jù)。LEFT JOIN返回左表所有記錄右表沒有匹配的字段顯示為NULL適合驗證左表存在的記錄在右表是否有對應記錄。我舉一個典型的測試場景驗證所有已支付訂單是否都有支付流水。這個需求用LEFT JOIN最容易查出不匹配的數(shù)據(jù)SELECT o.order_id, o.pay_status, p.pay_id FROM orders o LEFT JOIN payment_records p ON o.order_id p.order_id WHERE o.pay_status PAID AND p.pay_id IS NULL;這條SQL查出的是已支付但沒有支付流水的訂單如果有結(jié)果說明系統(tǒng)存在數(shù)據(jù)不一致問題這就是一個真正的Bug。測試中這類校驗特別管用。4.2 聯(lián)表查詢中的別名使用與常見錯誤寫聯(lián)表查詢時給表起別名的習慣非常重要。多個表有同名字段比如每張表都可能有create_time或status如果不加別名區(qū)分SQL會報模糊錯誤。實踐中的正確寫法是SELECT o.order_id, p.pay_time FROM orders o INNER JOIN payment_records p ON o.order_id p.order_id。我還想提醒一個高頻錯誤JOIN條件寫錯會導致結(jié)果集爆炸。比如兩張表通過兩個字段才能唯一關(guān)聯(lián)你只寫了一個關(guān)聯(lián)條件結(jié)果就會產(chǎn)生笛卡爾積式的重復數(shù)據(jù)查詢結(jié)果比實際數(shù)據(jù)多出無數(shù)倍。我排查過一次訂單數(shù)據(jù)翻倍的問題最后發(fā)現(xiàn)是JOIN條件漏了o.user_id p.user_id這第二個關(guān)聯(lián)字段。4.3 子查詢在測試中的應用子查詢也是測試中的常用手段。比如你要查購買過商品A的所有用戶可以先查出購買記錄里包含商品A的user_id集合再查這些用戶的詳細信息。寫法有兩種用IN子查詢或用JOIN測試中的數(shù)據(jù)量通常不大兩者都可以但IN子查詢語義更直觀SELECT user_id, user_name FROM users WHERE user_id IN ( SELECT user_id FROM order_items WHERE product_id P001 );如果你的測試數(shù)據(jù)量特別大建議用JOIN代替IN因為JOIN在多數(shù)數(shù)據(jù)庫優(yōu)化器里能走更好的執(zhí)行計劃。5. 索引與性能觀測定位測試中的慢SQL5.1 索引是什么測試工程師也需要了解很多測試工程師覺得索引是開發(fā)或DBA才需要管的東西。其實不然。你寫的SQL如果沒走對索引一條本來幾毫秒的查詢會變成幾秒鐘直接影響測試執(zhí)行效率。尤其是接口性能測試和全量回歸測試階段慢SQL一多會導致整個測試進度被拖累。索引的核心原理可以類比成一本書的目錄沒有目錄你要一頁頁翻有目錄你直接翻到對應頁碼。數(shù)據(jù)庫里的索引就是給表的某個或某幾個字段建立快速查找路徑。測試中最常見的是普通索引和唯一索引。查詢條件經(jīng)常用的字段比如訂單號order_id建議建索引而唯一索引可以保證字段值不重復在造數(shù)據(jù)的時候還能幫你防止插入重復數(shù)據(jù)。5.2 用EXPLAIN快速分析SQL執(zhí)行計劃排查SQL效率問題時EXPLAIN是必備工具。用法超級簡單在SQL前面加EXPLAIN關(guān)鍵字執(zhí)行后數(shù)據(jù)庫會告訴你這個SQL打算怎么執(zhí)行。關(guān)鍵要看幾個字段type表示訪問類型從好到差依次是const、eq_ref、ref、range、index、ALLALL代表全表掃描說明你的SQL沒有走索引需要重點排查key表示實際使用的索引名rows是一個估算值表示預計要掃描多少行這個數(shù)字越大說明SQL越低效。我之前排查過一個典型的案例查詢一條訂單記錄耗時2秒多用EXPLAIN一看type是ALL全表掃了兩百多萬行。后來發(fā)現(xiàn)order_id字段沒建索引建議開發(fā)加了索引之后同樣一條SQL幾十毫秒就返回了。整個排查過程不到十分鐘但如果沒有EXPLAIN這個工具你可能還在那里懷疑是不是數(shù)據(jù)庫服務器性能問題。5.3 測試環(huán)境與生產(chǎn)環(huán)境的性能差異提醒這里有一條重要的經(jīng)驗測試環(huán)境的SQL執(zhí)行耗時和生產(chǎn)環(huán)境往往差異巨大因為數(shù)據(jù)量完全不在一個數(shù)量級。你在測試環(huán)境看一條SQL跑200毫秒覺得沒問題但在生產(chǎn)環(huán)境可能因為數(shù)據(jù)量增長變成1秒、甚至5秒這就可能在真實的流量場景下拖垮接口。所以我的建議是測試工程師不要光看SQL能不能查出正確結(jié)果還要養(yǎng)成跑EXPLAIN的習慣看關(guān)鍵查詢是否走索引、預計掃描行數(shù)是否合理。如果發(fā)現(xiàn)明顯是全表掃描要提缺陷或反饋給開發(fā)這是性能隱患不只是測試效率問題。6. 事務與鎖保證測試數(shù)據(jù)一致性的基礎概念6.1 手動控制事務測試聯(lián)動的硬保障造數(shù)據(jù)時如果涉及多張表關(guān)聯(lián)插入最穩(wěn)妥的做法是把多步操作包在一個事務里。MySQL中默認是自動提交每一條SQL執(zhí)行完就立即生效無法回滾。手動控制事務的語法是START TRANSACTION; INSERT INTO users (user_id, user_name) VALUES (U001, test_user); INSERT INTO user_account (user_id, balance) VALUES (U001, 1000); COMMIT;這個事務保證了users表和user_account表的插入要么同時成功要么同時失敗。如果中途某條SQL執(zhí)行失敗你可以執(zhí)行ROLLBACK把整個事務回滾不會留下只有用戶沒有賬戶這種臟數(shù)據(jù)。事務的經(jīng)典特性ACID我簡單解釋一下原子性指事務中所有操作要么全部成功、要么全部失敗就像轉(zhuǎn)賬要么扣款和入賬都完成要么都不發(fā)生一致性指事務前后數(shù)據(jù)狀態(tài)符合業(yè)務規(guī)則隔離性指多個事務并發(fā)執(zhí)行時互相不干擾持久性指事務一旦提交數(shù)據(jù)永久生效。對測試工程師來說理解原子性和持久性已經(jīng)能覆蓋日常90%以上的事務應用場景。6.2 隔離級別與鎖測試并發(fā)場景時要注意什么并發(fā)測試中會涉及隔離級別和鎖的概念。MySQL默認隔離級別是REPEATABLE READ可重復讀意味著同一個事務內(nèi)多次查詢結(jié)果一致。如果你在并發(fā)測試中發(fā)現(xiàn)數(shù)據(jù)出現(xiàn)了明明事務提交了另一個連接卻查不到的情況多半跟隔離級別或事務未提交有關(guān)。這里有一個我反復用到的小技巧測試并發(fā)接口時為了確認數(shù)據(jù)庫層面的真實數(shù)據(jù)變化建議新開一個數(shù)據(jù)庫連接去查詢不要復用已經(jīng)開啟事務的連接。因為同一個連接里未提交的事務修改可能可以被自己查到容易造成數(shù)據(jù)已生效的誤判。在實際工作中我把這個坑叫同連接事務幻覺不少測試都栽在上面。鎖方面最直觀的場景是一個測試人員開啟事務執(zhí)行了UPDATE但沒提交另一個測試人員再去UPDATE同一行數(shù)據(jù)時會被阻塞等待。這不是數(shù)據(jù)庫卡死了是行鎖被第一個事務持有。排查這種問題時可以用SHOW PROCESSLIST查看當前連接和執(zhí)行的SQL找到那個一直掛著沒結(jié)束的事務確認后要么讓其提交要么殺掉對應連接。這類情況在共享測試環(huán)境里特別常見掌握查看命令能省下很多溝通成本。6.3 隔離級別設置查看與修改命令查看當前會話的隔離級別用SELECT transaction_isolation臨時修改用SET SESSION TRANSACTION ISOLATION LEVEL READ COMMITTED。測試工程師不太需要深入理解每種隔離級別的實現(xiàn)細節(jié)但要清楚不同隔離級別下相同的并發(fā)操作可能產(chǎn)生不同的數(shù)據(jù)表現(xiàn)。如果你測的是一個高并發(fā)扣庫存的接口發(fā)現(xiàn)庫存出現(xiàn)負數(shù)先別急著報Bug去確認一下數(shù)據(jù)庫隔離級別和接口的事務實現(xiàn)方式這個排查思路會幫你少走很多彎路。7. 測試場景中的高階技巧與實戰(zhàn)案例7.1 造數(shù)據(jù)腳本的模板化管理我工作中積累的一個經(jīng)驗把常用的造數(shù)據(jù)SQL整理成模板腳本按業(yè)務模塊分門別類存放。每次接到新需求需要造數(shù)據(jù)直接復制模板修改參數(shù)比從頭寫SQL快得多。一個典型的造數(shù)據(jù)腳本大概長這樣-- 造測試用戶 INSERT INTO users (user_id, user_name, phone, reg_time) VALUES (U_20240101_001, test_user_001, 13800000001, NOW()); -- 造用戶賬戶并初始化余額 INSERT INTO user_account (user_id, balance, version) VALUES (U_20240101_001, 1000.00, 0); -- 造一張已支付訂單 INSERT INTO orders (order_id, user_id, amount, pay_status, create_time) VALUES (O_20240101_001, U_20240101_001, 99.50, PAID, NOW());腳本化之后你的數(shù)據(jù)準備時間能從十幾分鐘壓縮到幾秒鐘。另一個細節(jié)凡是腳本造出來的數(shù)據(jù)我都會在關(guān)鍵字段上標注測試特征比如ID前綴加TEST_或時間戳這樣清理時一條SQL就能精準搞定而且不會誤傷手工測試同學的正常數(shù)據(jù)。7.2 清理數(shù)據(jù)的正確思路與操作順序清理數(shù)據(jù)是有順序講究的。先刪子表、再刪父表因為有外鍵約束的表刪除順序反了會報錯。舉例來說訂單明細表(order_items)引用了訂單表(orders)的主鍵清理時必須先刪order_items再刪orders。但現(xiàn)實測試環(huán)境中很多表壓根沒建外鍵這時候刪除順序雖然不會報錯但如果你亂刪可能會出現(xiàn)明細還在、主單已刪的空殼記錄影響下一輪測試。一個更穩(wěn)的清數(shù)思路是不直接刪除原表數(shù)據(jù)而是把測試數(shù)據(jù)所在行標記成廢棄狀態(tài)或者整體遷移到一張歸檔表。不過這種做法需要和開發(fā)約定如果測試環(huán)境的數(shù)據(jù)口徑完全由你控制直接DELETE最省事。還有一點必須提醒清理前先備份。哪怕是在測試環(huán)境養(yǎng)成SELECT * FROM orders WHERE ...先確認影響行數(shù)的好習慣能避免很多意外。7.3 數(shù)據(jù)校驗的黃金組合界面、接口、數(shù)據(jù)庫三查合一真正嚴格的測試需要把界面展示、接口返回、數(shù)據(jù)庫記錄三者對齊校驗。我把它叫三層一致性驗證。舉個例子測一個訂單詳情頁界面顯示訂單狀態(tài)為已發(fā)貨接口返回的JSON里order_status是SHIPPED這兩個一致還不能立刻斷言通過。你還得去數(shù)據(jù)庫里查orders表的實際狀態(tài)字段如果表里是PAID而接口返回SHIPPED說明接口層存在數(shù)據(jù)轉(zhuǎn)換錯誤或緩存未更新的問題。實際執(zhí)行中先跑接口拿返回結(jié)果再用接口返回的關(guān)鍵字段比如order_id去數(shù)據(jù)庫里比對最后對照界面展示。這套組合拳打下來很多隱蔽問題才會現(xiàn)出原形。我在之前的項目里靠這種方式查出過好幾個接口返回正常但數(shù)據(jù)庫實際數(shù)據(jù)錯誤的深層Bug如果只看界面基本發(fā)現(xiàn)不了。8. 常見問題與排查技巧實錄8.1 SQL執(zhí)行很慢應該從哪里入手排查測試中最讓人抓狂的問題之一就是同樣一條SQL不知道為什么突然跑不動了。我的排查套路一般是三步走。第一步用EXPLAIN看執(zhí)行計劃確認有沒有走索引、掃描了多少行第二步看是不是有鎖等待用SHOW PROCESSLIST查看當前數(shù)據(jù)庫連接狀態(tài)如果發(fā)現(xiàn)大量Waiting for table metadata lock這類狀態(tài)說明有其他事務占著資源第三步看是不是查詢條件寫得太寬泛比如LIKE %關(guān)鍵字%導致無法走索引。給一個具體的經(jīng)驗數(shù)字一張百萬行級別的表走索引的精確查詢應該在幾十毫秒內(nèi)完成如果超過500毫秒基本就能判定SQL或索引存在優(yōu)化空間。你把這個基準記在心里排查時就知道問題大概出在哪個環(huán)節(jié)。8.2 數(shù)據(jù)查不到的幾類隱蔽原因我整理了一個高頻問題速查表覆蓋測試中最常遇到的數(shù)據(jù)查不到場景現(xiàn)象可能原因排查方向明明有數(shù)據(jù)但SELECT查不到查詢條件字段類型不匹配比如字段是VARCHAR但條件用了數(shù)值檢查字段類型和條件寫法查出來的結(jié)果和想象中不同數(shù)據(jù)庫連接到了錯誤的環(huán)境比如測試連到預發(fā)庫確認連接配置和當前環(huán)境WHERE條件看起來正確但返回空字段是NULL用條件永遠匹配不上改用IS NULL中文條件查不到字符集或排序規(guī)則不一致查看表字符集和連接字符集時間范圍查詢結(jié)果不對時區(qū)設置差異導致時間偏移用NOW()和字段值對比檢查這類問題大多數(shù)時候不是SQL寫錯了而是對數(shù)據(jù)本身和環(huán)境的理解不夠。排查時先確認我在哪個環(huán)境這張表長什么樣數(shù)據(jù)到底存了什么比反復改SQL更有意義。8.3 測試環(huán)境數(shù)據(jù)被污染后的自救方法共享測試環(huán)境最怕的就是數(shù)據(jù)被污染你造的數(shù)據(jù)被別人改掉了或者別人跑測試留下了一堆半成品數(shù)據(jù)導致你的用例執(zhí)行總是失敗。我的自救方案是造數(shù)據(jù)時盡量帶上自己的測試標識同時把關(guān)鍵數(shù)據(jù)的查詢條件設計成能精準鎖定自己數(shù)據(jù)的形式。比如用戶名加前綴、訂單號加批次號、備注字段寫入自己的標記這樣不管別人怎么污染你都能一條SQL精準撈回自己需要的數(shù)據(jù)。如果污染已經(jīng)發(fā)生且無法定位備份恢復是最后的底牌。我會在造完關(guān)鍵數(shù)據(jù)后用mysqldump導出單表數(shù)據(jù)備份測試過程中如果發(fā)現(xiàn)數(shù)據(jù)異常直接用備份文件恢復。這個操作在MySQL里相當實用準備大版本數(shù)據(jù)時一定要做。8.4 日常工作中的數(shù)據(jù)庫操作安全底線講幾個我給自己立的規(guī)矩希望對你有參考價值。第一條任何UPDATE和DELETE操作先寫WHERE、再寫語句主體這是保命級的習慣。第二條操作前先SELECT確認影響范圍哪怕影響一條數(shù)據(jù)也要確認。第三條嚴禁在測試環(huán)境執(zhí)行沒經(jīng)過驗證的腳本更不用說生產(chǎn)環(huán)境。第四條共享環(huán)境操作完主動清理現(xiàn)場不給別人留坑。這些底線聽起來像老生常談但我在真實項目中見過太多因為忽視這些規(guī)矩導致的事故比如一條未加WHERE的UPDATE把整張訂單表狀態(tài)全部刷成已支付開發(fā)排查了一整天。做測試的人對自己操作的數(shù)據(jù)要有敬畏心。數(shù)據(jù)庫命令的熟練度不是一蹴而就的它的提升路徑和測試用例設計很像——你不需要背會所有命令而是要在真實場景里反復用用多了自然就內(nèi)化成自己的經(jīng)驗。我希望這篇整理能幫你在日常測試工作中少走一些彎路也歡迎你把自己的實戰(zhàn)心得補充進來數(shù)據(jù)庫這個領域越交流越漲經(jīng)驗。
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
人妻AV在线| 欧美成人精品A片免费一区99| 5月婷婷五月天| 成人精品在线| 成人色情五月天婷婷丁香| 另类专区在线观看| 婷婷丁香五月综合激情小说| 开心久久爱五月天| 五月婷婷黄色| 日日夜夜九九| 婷婷九九| 五月天综合区| 欧洲一区二区| 黃色三级三级三级三级 qixing300.shrkbk.com www.jinbozs.com tianmiaosw.com | 久99久视频精品| 丁香婷婷五月六月天| 最新av在线观看| 天天色图| 亚洲va久久久噜噜噜久久天堂| 色色五月天婷婷丁香| 噜噜操操| 婷婷五月丁香综合亚洲| 性按摩玩人妻HD中文字幕| 成人性爱无码| 淫荡综合网| 人人草碰| 五月婷性爱| 无码橾| 婷婷五月开心中文字幕在线| 99操久久| 久热欧美| 久久 无毛。| 婷婷色网| 色婷婷狠| 久热只有精品| 97干欧美| 天天插综合网| 九九热这里只有精品9| 色综合色综合网| 玖久久网站| 五月丁香成人网| 噜噜五月天综合| yazhou seshipin| 五月天综合区| 日韩激情人伦人| 草美女在线观看视频在线播放| 殴美日比视频| 丁香五月天.com| 99国产精品白浆在线观看免费| 久久婷婷视频| 五月天婷婷成人| 七七九九色色| 亚洲精品色色| 在线播放中文字幕| 丁香5月啪啪| 97婷婷丁香五月天激情图片| 五月色婷婷综合色| 天天干,天天舔| 六月激情婷婷| caopeng97日韩| 久久66er久久| 大香蕉人妻| 国产色色网址网站| www.五月天婷婷.com| 99热99网| www天天爽| 色播五月丁香婷婷| 丁香五月欧美激情| 99自拍视频在线观看| 97色婷婷成人综合在线观看| 99在线精品观看99| 久久五月婷天天干| 亚洲AV网址| 五月情涩综合婷婷| 免费人人操| 人人干女人| 97AV人人插人人操| 婷婷五月天丁香| va婷婷在线| 综合五月丁香久久| 五月婷婷视频在线观看| 思思色播| 色五月之第四色| 久久婷婷网| 久草九九| 婷婷五月天久久| 色五月综合婷婷久久综合婷婷久久综合婷婷久久综合婷婷久久 | 超碰99久久| 色色综合成人网| 婷婷中文字幕版| 五月久视频| www,婷婷| 丁香六月婷婷综合激情欧美| 五月婷婷很很色| 久re热视频| 日韩无码乱轮| 亚洲色综合| 夜夜骑日日夜夜| 天天日天天爽| 久久99久久99久久99人受| 99精色| se色99| 开心五月激情五月丁香五月婷婷| www.99热这里精品| 色五月婷婷在线观看第一页舔| 婷婷五月a| 欧美噜噜免费观看| 丁香六月啪| 久久九九热38| 热九九精品| 热99这里只有精品视频| 色综合五月天| 99热 在线播放| 色噜噜狠狠色综合成人网| 久久婷婷六月| 99精品热| 狠狠舔| 天天色宗合| 亚洲AV综合网| 97热久久| 五月丁香婷婷五月| 日韩操啪| 国产婷婷色综合AV蜜臀AV| 久久丁香五月天| 色婷婷五月天偷拍| 亚洲综合另类| 色色色九九九五月婷婷| 五月社区婷婷激情| 久九男女天堂| 丁香婷婷基地| 激情五月,婷婷五月,丁香五月| pom538精品视频| 中文字幕乱码亚洲精品一区| 丁六月激情| 成人av在线电影| 激情综合在线播放| 激情网五月天| 丁香婷婷色色| 99操碰| 日本九九视频| 99热国产精品| 久久五月天色婷婷| 九九热精品视频在线观看| 中文字幕亚洲-区久久99婷婷| 色五月五月丁香| 天天婷婷综合亚洲亚洲| 99人碰碰碰| 婷婷五月丁香五月综合网| 婷婷91视频| 天干干夜夜操| 婷婷五月色综合香五月| 婷婷六月情| 亚洲无码影音| 婷婷五月天综合在线 | 五月婷婷之美女图片| 乱精品一区字幕二区| 日本老女人黄页在线播放| 99爱无码| 亚洲av电影在线| 丁香五月自拍| 五月婷婷啪啪啪啪| www.五月天婷婷姐姐| 狠狠穞A片一區二區三區| 人妻系列久久久久久久久久久| 久久精彩免费视频| 开心五月天激情网站| 五月婷婷伊| 色五月激情五月天| 超碰在线网站| 婷婷五月六月丁香| 久久久五月婷婷| 日本久久色| 深爱五月日韩| 综合激情在线| 久久一操| 丁香啪啪| 激情五月网站| 极品精品一区二区三区在线| 九月激情综合| 综合久久婷婷| 婷婷碰碰| 久久曰曰| 五月丁香婷婷俺| 99热超碰天堂网| 91色色色| 开心丁五月| 激情内射人妻1区2区3区| 天天狠狠色综合| 婷婷激情五月天激情小说| 激情综合婷婷| 99热人人| 久久日曰| 色噜噜狠狠色综无码久久合欧美| 天堂在线9| 综合激情在线观看| 在线观看免费观看在线9久| 天天干天天干天天干天天干天天干| 六月婷婷七月丁香| 激婷网| 婷婷亚洲五月| 丁香五月婷婷成人网| 狠狠色丁香久久综合婷婷亚洲成人福利| 无码动漫av| 开心深爱五月天| YW无码| 激情五月开心五月丁香五月| 五五月丁香花激情综合网| 精品九九九久| 久久视频在线视频| 丁香五月婷婷六月| 综合在线丁香五月| 激情综合青草| 日韩成人av在线| 婷婷五月激情基地| www.夜夜操| 五月成人网站| 六月久久狠狠| 婷婷伊人久久无码色五月| 思思99精品视频在线观看| 色亭亭九月| 色五月播五月| 久久婷婷五月综合伊人| 可以直接看的av网站| 看全色黄大色大片| 日韩无码亚欧无码| 狼人伊人天堂| 在线看片h站| 久9热在线视频| 热成人网| 天天操综合网站| 五月天成人伊人| 免费观看亚洲AV片| 久久精品4| 超碰自拍天堂| 99国产精品白浆在线观看免费| 五月丁香做爱视频| 五月涩涩网| 色呦呦美女| 天天插天天插| 亚洲AV成人在线| 国产精品色色| 日本成人小说婷婷六月| 亚洲中文乱字字幕线在永久| 色欲丁香久久| 五月丁香六月婷婷综合网| 日本色色图| 97干免费视频| 色情婷婷| 五月天天丁香婷婷在线中| 久艹大香蕉| 9超碰在线| 亚洲人成网站999久久久综合| 狠狠爱深色婷婷综合| 欧美激情性做爰免费视频| 东京热伊人| 91精品久久久久久久| 岛国av网站| 日本色色视频| 激情五月天啪啪| 日本色综合| 色婷婷六月综合| 五月婷婷丁香五月亚洲色| 九九re精品视频在线观看| 新激情综合| 久久婷婷五月综合一| www.99免费视频| 激情四射亚洲| 99 福利 导航| 超碰人人干| 久久综合激情| 亚洲五月天综合| 亚洲99视频| 日日夜夜综合| 五月天天天色| 99熟女| 99热这里是精品| 99操久久| www.色多多婷| 丁香五月激情啪| 另类专区在线观看| 五月婷婷免费在线观看| 99久久久久久www| 欧美在线视频99| 婷婷五月天伊人| 成人免费黄色短视频| 91男人资源站| 天天激情5月天亚洲| 丁香狠狠| 欧美天堂久久| 国产真实乱了老女人视频| 欧美五月婷婷综合| 狠狠综合网| 天天综合干| 五月丁香六月婷婷的女人| 激情综合网激情五月天| 亚洲国产精品二二三三区| 91狼友视频在线观看| 午夜丁香六月婷| 狠狠看狠狠| 欧美性爱5月天天天看| 色视频五月天| 亚洲妇女熟BBW| 性爱久久| 99九九在线观看免费| 亚洲五月婷婷在线| 五月婷啪啪| 国产精品天天狠天天看| 九色PORNY自拍成人精彩视频| 综合激情网五月激情| 色色色色五月| 色伊人91在线视频| AV伊人青草丁香六月| 午夜婷婷五月天| 六月婷婷av| 色一色综合| 国产老熟妇亲子乱对白| 五月天深爱激情网| 天天爽天天| 婷婷的色色五月天| 亚洲另类噜噜| 成人做爰A片免费看网站找不到了| 欧美日韩国产一区二区| 婷婷五月天亚洲图片| www婷婷| 99热在线极品极品| 五月丁香激情综合网官网| 五月婷婷五月| 最新久久99视频网站| 日本精品。999| 另类图片激情五月| 五月天色站| 伊人丁香花综合影院| 九九热精品视频| 久久婷婷东京热| 色婷婷六月天在线| 狠狠色色色| www99热| 91超级碰在线| 天天搞天天色综合| 另类 在线| 色色综合网。| 欧美成人精品老美女噜噜噜| 狠狠ri| 开心激情色婷婷五月天| 99热精品在线在线| ri电影在线| 色色婷婷五月| www.无码com| 五月天夜夜爱夜夜操| 婷婷色五月激情| 五月婷婷六月丁香综合| 色婷婷基地| 五月丁香啪综合| 丁香五月天成人网站| 91丨九色丨首页| 九九热这里只有精品12| 97五月婷| 噜噜国产| 久久婷狠狠色| 激情欧美五月丁香| va中文资源在线观看| 五月婷久久| 天天天久久久| www九九免费视频| 色婷婷五月亚洲| 激情综合网激情五月婷婷| 色婷婷视频| 久热这里只有精品6| 婷婷五月香蕉| 天天操天天插| 天天干天天色天天干| 成人龟情网丁香五月| 丁香五月六月激情| 极品九九九九九九| 99在线精品观看99| 26uuu国产精品| 99热10在线高清播放| 久久综合天天综合| 99热99极品观看| 996热re视频精品视频| 九色视频91| 狠狠五月天| 中文无码精品一区二区三区| 成人国产网站| 青青草五月天| 天天撸天天干天天插| 麻豆精品| 超碰国产在线| 婷婷深爱五月丁香| 欧美成人Va| 色婷婷五月综合激情中文字幕| 五月丁香六月激情啪| 一操久久| 国产AV一区二区三区日韩| 色婷婷亚洲在线| 丁香五月婷婷色偷偷| 五月色网| 97韩国久久电影院| 久久婷婷的综合色丁香五月| 九九碰九九爱97超碰| 色欲五月天| 99啪啪骑| 国产成人精品一区二三区熟女在线| 五月天激情视频网站| 欧美色色色色色色| 精品久久久久成人码免费动漫| 六月婷婷在线视频| 国产va在线视频| www网站在线观看| 另类专区在线观看| 激情综合五月婷婷六月丁香 | 欧美大道不卡| 天天日天天久久青青| www。五月天。com| 国产91视频| 综合色图婷婷| 丁香六月综合| 青青草轻轻操| 思思热在线免费视频| 成人欧美日韩| 免费V片在线| 婷婷色播婷婷| 婷婷久久综合久| 五月丁香操亭亭网| 另类小说五月天综合| 日本激情五月| 久热这里只有精品在线观看| 亚洲啪啪视频| 另类在线观看视频| 色播色丁香五月| 青草五月天| 俺去也婷婷| 99在线视频在线观看| 欧美六月| 九九婷婷综合| 国产精品丝| www.夜夜操.com| 日日夜夜狠狠| www.日日夜夜.com| 色色COm| 亚洲激情电影五月天色婷婷丁香一起草 | 黑人无码一区| 九九99在线| 美女婷婷激情亚洲| 久久色大香蕉| 五月天丁香婷婷久久九| 99热在线观看| 欧美性生交A片免费看| 99在线小视频| 五月天婷婷久久视频| 日日肏夜夜干| 天天爽夜夜爽夜爽精品| 精品人妻久久久久久久| 思思久久思思| 五月丁香色狠狠干大屄| 亚洲丁香网| 婷婷五月天人妻| 狠狠狠狠免费| 久久精品小视频| 久久综合网免费视频| 九九久久精品| 天天操婷婷| 人妻videos人妻高清| 99精品视频免费在线播放| 亚洲第一成人无码A片| 亚洲xx网| 超碰人人操在线| 成人短视频在线| 亚洲在线综合| 无码四色色色| 思思久久96热在精品国产,| 婷婷五月丁香影院| 激情五月天色爱| 久久这里只有精品16| 26uuuu精品一区二区| 五月色欧洲| 丁香婷婷伊人| 色99色| www.久久爱.com| 丁香五月激情啪| 97碰碰人人| 狠狠色色| 日本少妇裸体做爰高潮片 | 亚洲日韩26uuu| 五月天婷婷导航| 天天做天天摸| 五月丁香啪啪激情| 免费无码毛片一区二区A片| 男女啪啪做爰高潮无遮挡| 日本婷婷色| 中文字幕黄色电影网址| 婷婷丁香久久| 五月天艹天天| 五月天婷综合| 熟女人妻一区二区三区免费看| 免费无码毛片一区二区A片 | 四川BBB搡BBB搡多人乱亂| 婷婷色色亚洲| 大香蕉五月天婷婷丁香91| 色 免费网站视频| 五月激情开心婷婷| 激情五月综合亚洲另类| 久热免费视频| 人妻激情视频| 四色 爱 婷婷 精品 亚洲 五月天| 热久久视频99| 99热日韩| www.韩日视频| 天天天久久久| 五月天久久91| 五月丁香影院| 成人免费在线电影| 五月天综合区| 91色综合| 六月婷婷日| 狠狠色色| 天天综合网站| 五月天丁香色色| 成人综合视频在线| 成人九九视频| 激情综合五月丁香| 色狠狠综合网| www.99情趣网| 亚洲在线免费成人| 婷婷丁香五月天综合AV| 久久怕怕视频| 韩国中文字幕91| 综合色五月| 婷婷五月天激情五月天网站| 久久9视频| 99丁香五月婷婷在线| Av性爱网站| 99玖玖在线视频| 婷婷丁香九色| 亚洲激情99| 成人av在线网址| 亚洲欧洲美女在线观| 99久久九九| 日本色五月| 国产精品天天狠天天看| 婷婷五月天AV网| 丁香五月人妻| 九九无毛| 久热只有这里精品| ..真实国产乱子伦对白在线_欧| A片一曲| 热99在线| 亚洲影院婷婷色| 四色 爱 婷婷 精品 亚洲 五月天| 色婷婷AAA| 欧洲精品爱爱| a久久| Av在线不卡一区| 九九九九九九九热| 欧美黄色一级录像| 亚洲无码成人性爰网| 色婷婷五月综合| 99激情网| 日本精品99| 99riAv1国产在线观看| 五月婷婷在线视频观看| 94干大香蕉| 色婷婷裸体色性在线| 婷婷色色欧美综合网| 丁香五月激情欧欧美| 久久丁香五月天| 异能之下短剧免费观看全集| 六月丁香激情网| 成人AV在线电影| 欧洲亚洲免费视频9| 五月天激情四射网站| 人人色婷婷| 操逼巨乳91| 五月丁香六月婷婷成人电影| 97在线刺激| 91无码视频| 久久婷婷网站| 激情五月天视频| www.夜夜操.con| 99热这里有精品| 婷婷激情综合网| 99视频综合| 思思精品热在线| 五月丁香婷婷色播无码| 久久这里只有精品无码| 亚洲第一成人AV| 狠狠五月激情丁香六月| 色婷六月| 久操热| 亚洲日韩26uuu| 国产精品男人AV不卡| 色五月婷婷在线观看| 激情五月份婷婷| 色婷婷操逼| 丁香婷婷综合激情五月色,开心五月丁香花综合网,激情综合五月亚洲婷婷,五月天 | 精品无码99| 日本欧美啪啪| 婷婷导航| 五月丁香六月婷婷亚洲| 丁香六月婷婷社区| 99热8| 丁香五月综合在线播放| 99热99| 狠狠干无码| 亚洲五月婷天天操| 殴美日韩成人| 思思热在线| 五月情婷婷| 美女黄频aⅴ视频| 精品久久99| 夜夜骑日日操| 丁香五月婷婷高清| 丁香六月在线| 丁香五月婷婷激情中文| 久久五月天婷婷| 欧美私人家庭影院| 久9精品视频| 中国AV性爱观看| 九色无码| 综合天堂AV久久久久久久| 少妇综合网| 天天做综合| 婷婷色色欧美| 国产精品久久久爽爽爽麻豆色哟哟 | 午夜福利8055| 全部老头和老太XXXXX| 欧美婷婷五月天| 99热在这里只有免费精品| 97操男人的天堂| 久久久婷| 五月天开心色情网| 五月天六月婷婷电影| 色五月综合| 99精品网址| 色婷婷狠狠| 97九色视频| 五月婷婷六月奇米网丁香| 另类专区在线观看| 人人看人人97| av婷婷丁香| 婷婷五月综合在线| 五月丁香无码| 激情婷婷六月天| 色婷婷丁香AV综合| 丁香六月色婷婷欧美| 亚洲性视频| 婷婷五月天激情四射五月天激情| 五月激情丁香| 精品人妻一区二区三区四区不卡在| 九九热视频免费的| 狠狠夜夜五月丁香| 超碰免费人人| 色9月| 色色色色色日韩午夜激情| 天天做天天爱天天高潮| 丁香婷婷啪啪| 天天射美女| 色色a| 婷婷丁香五月天中文字幕| 久久五月人人摸| 五月色在线| 操人91| 婷婷综合精品| 9久热在线视频精品| 一起操 91N.com| 五月天久久小说| 91919191919久久成人视频| 久久久人妻| 人妻中文在线| 激情小说五月天| A久久| 99综合视频| 99久久九九| 99在线观看精品视频| 狠狠色婷婷7777久| www激情| 色99在线观看| 国产激情综合| 欧美性生交XXXXX无码小说| 日产精品一线二线三线芒果| 天天色粽合合合合合合合| 久久九九99| 国产99久久久国产精品免费看| 丁香五月婷婷基地| 中文字幕日产A片在线看| 亚洲无AV在线中文字幕| 综合久久五| 五月婷婷综合在线视频| 国产小网站| 非洲一级AV| 91九色在线| 丁香六月天婷婷在线| 小视频aaa久久久| 人色五月天婷婷| 中文不卡一二区| 五月丁香激情综合网| 99热这里都是精品| 五月天色丁香| 一级AV片| A级毛片高清免费不卡播放谢谢谢谢| 久9免费视频| 区区久久妻| 天天干,噜噜色,狠狠色| 深爱激清网| 97人凄人人操人人爽| 丁香五月六月综合激情| 精品少妇人妻AV无码专区偷人| 日本波多野结衣视频| www激情网站| 婷婷月五天在线在线看| 激情五月天色婷婷综合| 91狠狠色丁香| 婷婷五月天丁香| 亚洲123区高清入口| 成人精品人妻| 玖玖精品视频99| 日本狠狠干| 五月婷在线| 98热精品| 亚洲99激情| 丁香五月天在线观看| 久草五月天| 伊人激情综合| 欧美激情综合| 99热这里只有精品免费观看| 色欲色香综合网| 欧美一级a| 99色色爰| 婷婷伊人网| 99操逼| 日本97久久久精品| 五月情综合| 丁香花五月天激情| 东北熟女高潮99综合99| 五月色婷婷亚洲 | 色噜噜狠狠色综无码久久合欧美| cao视频,现在观看| 久久婷婷丁香五月一二三| 丁香六月在线| 专区无日本视频高清8| 亚洲成人高清在线| 天天综合影院| 亚洲欧洲中文日韩久久AV乱码| 久热69| 亚洲色A| 五月婷婷综合网| 久久与婷婷| 五月天激情亚洲| 天天爽夜夜操| 丁香五月婷婷色情综合| 99热这里只有精品首页| 久草婷婷网| 丁香六月婷婷综合激情欧美 | 噜噜五月天综合| 色欲婷婷五月天丁香| 五月丁香婷庭在线| 99热在线观看| 天天搞夜夜叫| 天天色综网| 99九九在线观看免费| 婷婷五月丁香基地| 日操夜操天天操不卡| 亚洲综合干| 天天射影院| 激情综合亚洲| 五月天丁香网| 五月丁香 啪啪| 热99免费在线| 婷婷成人AV| 日本色综合| 69精品无码一区二区三区| 亚洲精品性色| 婷婷激情久久| 狠狠色噜噜狠狠狠888了| 国外亚洲成AV人片在线观看| 色婷婷丁香五月天在线视频| 婷婷在线视频| 丁香六月婷婷综合麻豆| 丁香五月成人| 337p午夜影院| 九九操屄| 婷婷丁香五月综合激情视频| 97涩婷婷婷婷基地| 婷婷五月天伊人网| 色噜久| 射区导航| 国产激情AV| 97色色视频| 婷婷五月丁香五月丁香| 色99视频| 色综合性视频| 超碰人人插| 六月婷婷在线| 97欧美在线| 色五月天丁香| 丁香五月丐人妻| 国产成人精品一区二三区熟女在线 | xxx.色婷婷| 六月丁香婷婷综合狠狠爱夜夜爱| 激情综合区| 热99精品视频在线观看| 国产69久久久欧美黑人A片| 丁香久久五月天视频在线观看| 五月婷婷综合在线亚洲视频| 五月婷视屏在线观看| 香蕉伊人综合| 狠狠草在线观看| 蜜桃婷婷丁香五月天狠狠久久综合| 丰满少妇猛烈A片免费看观看| 天天日婷婷| 日韩伊人大香蕉| 久操婷婷| www激情网| 五月色亚洲| 人人操五月天| 伊人狠狠干| 久久久宗合| 中文字幕按摩做爰| 欧美日韩一区二区三区四区| 玖玖爱资源站| 桃色成人网| 五月婷婷影院| 亚洲亚洲激情| 色婷婷色和| 九九99精品视频在线观看| 久久五月婷综合网| 丁香密臀AV激情网| 香蕉AV福利精品导航| 丁香婷婷成人网| 婷婷丁香色五月亚洲| 色色色色色色综合网| 激情人妻综合| 26UUU在线观看| 亚洲情色一区| 性爱网五月婷婷| 亚洲精品无码久久| 乱色色色| 看婷婷五月天网| 婷婷五月欧美AA片免费| 婷婷亚洲综合| 婷婷五月天色播| 婷婷久久国产视频| 婷婷va| 九九九色综合| 综合久久五月| 久久丁香五月天| 性爱视频久久| 嫩BBB槡BBBB搡BBBB视频| 午夜成人AV在线| 玖玖婷婷五月天毛片| 99re这里只有| 日本在线99| 五月丁香花免费视频| 99久在线精品99re8热| www.韩日视频| 国产精品第一国产精品| 婷婷精品在线| 亚洲色99| 色情一区二区播放| 热久久成人| 91色五月| 二级黄色毛片| 五月婷婷综合色啪首页| 国产乱妇无乱码大黄AA片| 婷婷激情在线| 五月丁香六月欧美综合网站| 日批在线看| 99热99在线| 五月丁香啪啪综合| 性爱七区| 99热人人操人人操| 天堂婷婷综合| 无码人妻精品一区二区蜜桃色欲| 日本九九九九| 婷婷五月丁香91| 夜夜干夜夜操| 人人爱人人添| 五月丁香六月婷婷手机无线| 久久精品国产色| 亚洲婷婷视频| 五月丁香六月在线欧美| AV在线观看网站| www.9797国产| 国产九九一区二区三区| 亚洲国产另类av| 久久久久97| 91碰碰视频在线观看| 91丁香综合| 图片区 小说区 区 亚洲五月| 五月天综合视频| 99热在线观看| 可以看的av网站| 99思思| 丁香六月欧美| 婷婷久久网| 99欧美| 中文字幕无码人妻少妇免费视频 | 婷婷瑟瑟五月天| 99热日韩| 人人射人人高潮| 欧美五月丁香| 开心激情站| 丁香婷婷91在线观看视频| 99视频在线播放大全| 成人版视频在线观看| 五月丁香久久久久| 激情五月天在线视频| 丁香五月成人网| 久久久久久人妻| 欧美性生交XXXXX无码小说| 亚洲精品无码一区二区| 97在线观视频免费观看| 91呦呦呦| 金品在线视频99| 91九色精品女同系列| AV大香蕉| yazhouzonghesese| 国产精品日韩十五区| 婷婷五月天狠狠色| 97人人操人人干| 青青草免费公开视频| 天天干在线播放| 日韩久综合| 色99视频| 开心日韩丁香婷婷五月| 天天做天天摸| 中文字幕综合网| 婷婷激情五月| 四季日韩AV无码综合| 成人综合视频在线| 影音先锋女人av鲁色资源网小说免费| 天天舔天天插天天干| 色久天| 夜夜操天天干| 激情五月天婷婷播播久久综合91| 亚洲在线播放| 五月丁香狠狠爱| 五月色丁香激情| 欧美日韩成人在线观看| 操操啪| 俺去婷婷 丁香| a网站免费观看| 丁香五月天啪啪激情综和网| 夜夜大香蕉婷婷丁香| 99噜噜噜在线播放| 日韩无码91| 丁香五月网络网络| 停停五月丁香| 婷婷五月天影院| 色婷婷丁香AV综合| 思恩热国产视频右线观看| 天天xxxxxx天天日| 日韩中文欧美| 色开心五月婷婷丁香HD| 久热这里只有精品6官网亚洲| 婷婷五月天干干| 婷婷五月天开心网| 91婷婷丁香五月亚洲| 五月婷丁香| 丁香六月无码播放| 超碰99在线观看| 五月丁香五月丁香五月丁香五月丁香91| 久久这里只有精彩| 久久丁香五月天| 97超碰婷婷五月天| 五月丁香色情| 性色天| 怎么样可以看免费的一级av| 五月丁香婷婷色色| 伊人五月天在线| 午夜69成人做爰视频| 伊人网碰碰| 亚洲激情97五月天| 日本高清久久| 色婷婷伊人| 婷婷开心激情| 婷婷色五月大香蕉在线| 综合五月草| 五月天久久综合| 日韩性爱无码| 天天操夜夜肏| 五月丁香啪| 日本九九九九| www.婷婷,com| 色五月婷婷影视| 五月天欧美激情| 91久久久久久久| 五月婷婷av| 五月丁香在线| 黄页免费一级视频懂色| VA婷婷亚洲| 黄桃AV无码免费一区二区三区| 综合色五月天| AV色婷婷| 神马欧美精| 99性色| 九九99视频精品| 欧美性爱5月天天天看| 国产精品第一国产精品| 这里只有精品视频视频在线观看| 中文字幕不卡+婷婷五月| 五月婷婷丁香网| jiqingliuyuetian| 亚洲成AV人片在线观看| 亚洲色域网| 国产熟妇的荡欲午夜视频| 五月婷六月综合在线观看| 五月亭亭六月天| av网址在线| 97操在线视频| 99久re热视频精品98| 欧美熟女99| 久久九九爽| 国产成人+综合亚洲+天堂| 午夜成人天堂久久无码日韩久久| 91丨九色丨白浆| 九色自拍| 色婷婷小说| 5月激情天| 九九色精品| 五月丁香六月婷婷免费| 日本色色影片| 久久久久久五月天| 日韩三级视频一区二区| 五月婷激情| 97欧美在线| 婷婷五月情| 怕怕視頻| 激情内射人妻1区2区3区| 26uuu亚洲色| 国产免费一区二区三州老师F1……| www.99热. com这里只有精品| 九热视频在线伦| 六月综合婷婷开心伊人| 日本久久视频| 久色| 九九热这里只有精品9| 色五月婷婷丁香凹凸| 激情五月综合婷婷| 亚洲在线操| 久久久18| 五月天激情开心网| 超碰伊人碰婷婷五月| 成人av在线电影| 五月丁香五月丁香| 99色人| 这里只有精品无码| 丁香五月婷婷色| 国产精品久久久爽爽爽麻豆色哟哟| 快色t v在线入口| 99热精品10| 久久激情五月| 凹凸操Av| 伊人狠狠丁香婷婷综合尤物| 久久九色| 午夜丁香五月天综合| 99免费热视频在线| 国产精品涩涩涩视频网站| 性生活久久朋友人妻| AV色婷婷| 国产69久久久欧美黑人A片| 91婷婷五月天嫩女| 天天骑日日爽| 人人操婷婷| 色色婷| 欧美激情-区二区三区| 婷婷99热| 8050一级网| 五月婷婷丁香综合| 99久久er| 亚洲久热| 野外99热| 五月综合视频| 六月婷婷综合| 丁香婷婷六月天| 久99久视频免费观看| 欧美人与性动交CCOO| 1024操逼视频| 色婷五月天网站| 激情六月婷婷| 就爱日五月天| 99热都是精品| AVDV久久| 99热这里只有精品热| 4399在线日本A片| 激情婷婷在线| 丁香五月天堂网| 九月婷婷激情| 婷婷丁香综合成人| 激情综合婷婷五月| 久久精品综合色| 色吧婷婷五月亚洲| 婷婷社区五月天| 98永久精品| 欧美激情综合色综合色| 夜夜躁狠狠| 色噜噜夜夜夜综合网| 最新国产AV| 99热这里有精品| 亚洲综合在线视频| 婷婷五月天成人| 丁香婷婷激情网站| 这里只有精品99www| 五月综合亚洲色| 狠狠色狠狠| 久久中国毛毛片爱久久| 日日噜噜夜夜狠狠久久丁香五月| 婷婷五月天色播| 五月天婷婷基地综合网| 九九热只有精品| VA婷婷亚洲| 五月天成人伊人| 色婷婷色五月另类综合| 日本啪啪天堂| 手机在线日韩视频中文字幕| 成人VAV视频在线观看| 国产一级黄色影片,| 熟妇内谢69XXXXXA片| 天天日天天操心| 久久97| 中文字幕永久免费| 久久精品五月天| 26uuu欧美| 五月天激情久久| 色五月在线播放| 人妻久久久久久久久久久| 久久婷婷操| 99精品在| 婷婷五月天人妻| 99热这里有精品24| 五月开心啪啪| 欧美色色色| 五月丁香婷中文| 中文字幕 久久9999| 五月婷婷久久网| 第一区久久网站| 淫荡综合网| 五月婷婷六月婷| 婷婷五月天香蕉| 韩国天天婷婷| 中文av网站| 五月花婷婷| 婷婷色啪| 九九综合久久| 天天综合色| 99热免费| 99久久精品免费精品国产_国产精品久久久久久_国产在线|日韩_久久国产精品电影 | 6080av| 五月婷婷激清网| 天天干天天爽天天操| 很很干夜夜干| 超碰人人干| 日韩AV色色色| 婷婷五月图片小说视频| 激情五月婷婷六月丁香| 六月丁香激情| 五月婷婷欧美| 色一情一乱一乱一区91Av| 69精品人人人人| 丁香六月婷婷基地| 午夜成人在线免费视频| 激情综合在线观看| 大香蕉久久伊人婷婷五月丁香| 色色亚洲无码| 国产精品久久久久久五月天加勒比 | 超碰在线网站| 黄网在线免费观看| 九九sese| 欧美成人精品老美女噜噜噜| 激情五月天婷婷丁香| 色色五月天丁香| 欧美日韩成人在线| 草榴成人影片| 成人一级片| 99热热九九| 天天爽天天日天天舔| 97碰碰在线看视频免费| 亚洲天堂热| 韩国97天堂| 婷婷五月天久久久| 五月综合在线婷婷图片| 夜夜骑夜夜操| 99精品视频在线| 色婷婷五月综合| 26UUU精品一区二区c〇m| 欧美婷婷五月丁香| 色婷婷久久综合| 极品人妻VIDEOSSS人妻| 婷婷五月天AV在| 99这里只有精品视频免费| 激情网婷婷婷| 在线播放中文字幕| 色色色五月天婷婷| 熟女网站久久| 五月天婷婷伊人 | 91人人操人人爱| 成人美女网| 日本操片| 26uu| 日本啪啪网| 日韩一级一片内射视频4K| 成人丁香色| www.六月丁香看AV| 婷婷五月色播放| 五月丁香综合久久夜夜| 狠狠艹狠狠艹| 亚洲99在线| 婷婷丁香五月天综合在线日韩| 性爱网五月天| 日日狠狠久久偷偷四色综合免费| 色五月激情婷婷| 东北黄色一级| 综合性视频99| 婷婷伊人綜合中文字幕| 亚洲乱啪| 亚洲爱爱无码婷婷色五月| 91色五月| 久久色吧| 国产精品色色色色| 国产成人99久久亚洲综合精品| se婷97| 色视五月天婷婷| 婷婷午夜天| 超碰资源在线| 啪到高潮激情丁香五月| 无码AV免费精品一区二区三区| 97干在线播放| se99视频| 超碰婷婷色| 乱女乱妇熟女熟妇综合网站| 婷婷色情网| 激情AV中文| 色五月婷婷内射| 熟妇人妻中文字幕无码老熟妇| 97人人操人人爽| 99操免费视频| 久久艹网| 婷婷色av| 欧美十二区| 五月婷婷成人w| 丁香五月激情啪啪| 69热在线| 激情综合五月| 91seav| 狠狠色噜噜狠狠狠狠综合| 永久热91| 综合网视频| 色色丁香婷婷五月天| 噜噜噜精品欧美成人在线观看| 久热免费视频| 激情五月图| 五月丁香激情综合| 四色综合网| 99精品在线| 色色综合成人网| 五月天成人综合| 五月天激情小说| 99免费| 99re这里只有精品9| 五月花免费视频| 综合色情网| 丁香五月电影| 日本激情ⅩXX免费视频| 人妻av在线| 婷丁香五月天| 丁香六月婷婷色XXXX|