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

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
返回資訊列表
婷婷福利影院| 伊人久久婷婷| 激情五月天婷婷| 天天综合.com| 另类小说五月天| 亚洲性爱AV在线| 丁香婷婷激情五月天无毒不卡蜜桃| 超碰久热| 中文字幕婷婷| 色五月婷婷av| 99日本在线| 婷婷94s| av在线资源| 婷婷五月天电影区小说区| 日韩欧美一级大黄网站| 久久久性爱视频| 69凹凸成人综合网| 超碰操日| 亚洲视频在线网| 91精品丝袜久久久久久| 婷婷成人五月天成人文学| 五月天基地| 99'无码| 在线网黄| 婷婷五月天av| av 一区三区四区| 4399亚洲视频| 五月丁香啪啪啪| 99色.com| 六月婷欧美| 91色综合久久| 色欧美日| 美女网黄| 婷婷五月丁香狠狠| 26uuu欧美亚洲日韩| 五月五婷婷网| 色亭亭五月天网扯| 开心五月综合| 高清无码视频网址| 天堂久久婷婷| 99性色| 99在线视频播放| 亚洲婷婷欧美婷婷| 91五月天| 中文字幕日产A片在线看| 婷婷五月天伊人网| 国产伦亲子伦亲子视频观看| 亚洲六月综合激情久久下卡| 婷婷人妻激情| 综合久久97| 秋霞AV美国| 五月天丁香婷婷社区| 丁香五月婷婷亚洲天堂| 9l视频自拍九色9l视频自拍九色9l社区| 99在线爽| 91狠狠综合久久久| 伍月激情天| 综合狠狠干| 五月天成人在线精品| 亚洲AV久久久久久久久久久久久久久久 | 99超级碰碰| 狠狠爱深色婷婷综合| 久久人妻熟女一区二区| 久操大屁股女人av| 五月婷在线| 开心婷婷五月激情网小说| 亚洲色9| 五月天小说激情| 少妇激情五月婷婷| 五月激情站| 久久伦乱| 丁香六月成人| 婷色五月| 六月婷婷久久大全| 操骚货在线| av九九| 538在线精品| 久久这里只有精品视频15| 亚洲AV永久无码影院黑人 | 激情AV中文| 91 原创 在线 九色| 99乱视频| 婷婷五月天亚洲综合| 国产五月天欧美色| 亚洲国产精品二二三三区| 亚洲传媒在线观看| 激情丁香婷婷六月天| 六月色狠狠色| 26uuu精品国产| 亚洲婷婷性爱| 婷婷五月综合婷婷| 久热黄色| 亚洲第二AV| 婷婷五月天色色| 涩涩婷婷五月| 网站免费一站二站| 欧美综合五月丁香六月婷| 天天艹夜夜爽| 中文字幕在线观看视频www| 97超级免费无码| 久草性爱| 色五月婷婷影院| 性av| 五月熟妇婷婷久久| 婷婷激情五月| 91超碰人人操| 成人版视频在线观看| 天天色天天操天天射| 在线99精品| 日日干日日s| WWW免费视频碰碰碰碰| 亚洲免费看片| 2015好吊操| 天干夜夜操| 丁香五月偷拍| 丁香五月六月久久综合| 深爱开心激情| 这里只有精品亚洲| 婷婷五月天开心网| 色一情一乱一乱一区91Av| 逼里香不卡| 激情综合五月| 99热这里只有精品手机在线观看| 玖玖资源在线视频| 激情小说五月天社区丁香| 婷婷五月天播播| www。久久久久一b。Cc| 一本道综合网| 人人爽网| 天天五月情| 色婷婷六月| 五月丁香亭亭操逼| 26UUU精品一区二区| 色色色在线观看| 五月丁香激情深爱婷婷| 99久久婷婷综合| 婷婷五月激情片| 婷婷五月综合在线| 综合五月草| 色久女| AVV黄| 亚洲另类噜噜| 丁香花五月天社区| 97色天堂| 五月丁香啪啪啪免费看| 成人午夜天| site:wpjngj.com| 九九人人操| 欧美色图45678| 8区视频在线| 久久综合色五月| 婷婷香五月天| 色啪综合| 色狠狠色噜噜AV天堂五区| 再次出发二| 色九月| 梁铮版《蜘蛛女侠》在线| 久久婷婷视频| 丁香五月天综合网| 人人操人人爽成人AV| 性综合网| 天天日天天狠狠操| ai97re99一本| 91丨九色丨熟女|新版| 色五月偷偷| 九九99在线| 久久丁香久久| 激情五月天色色| 精品人妻一区二区三区四区不卡在| 激情五月综合网| 色色色免费视频| 丁香五月另类小说在线阅读| 大香伊人婷婷影院| 老司机伊人| 激情五月天之六月婷婷| 天堂网色色| 996er热| 丁香婷婷五月天网站| 嫩草AV久久伊人妇女超级A| 天天拍夜夜爽日日| 欧洲精品爱爱| AA片在线观看视频在线播放| 亚洲综合视频在线| 99青青草| 丁香丁婷五月激情| 五月亭大香蕉| 天天肏在线| 丁香午夜天| 久久久五月五丁香| 日本丰满久久| 大战熟女丰满人妻AV| 丁香五月婷婷激情蜜桃| anquye伊人| 狠狠色综合久久久久| 激情爱爱网站超大免费| 五月停停丁香| 国产1区2区3区在线观| 99在线资源视频| 玖玖99免费视频| 操人妻90p| 97色综合| 国产全是老熟女太爽了| 久久婷婷五月天| 亚洲无码九九| 久婷婷久草| 99热在线看| 欧洲亚洲免费视频9 | 九色在线五月婷婷网址| 99热官网| 4399亚洲视频| 99爱在线观看视频| 日日射天天射| 青青草原中文字幕| 国产av基地| 色欧美色色色| 激情综合五月| 婷婷五月丁香五月| 久久网日本| wwwwww.色| 青草青草久热这里只有精品| 亚洲视频国产一区| 99天堂网最新| 91在线看片| 天天色天天操天天射| 色色色热| 欧美人妻一区二区| 夜夜做夜夜愛| 严洲天天插| 青青草性爱视频| 日韩伊人大香蕉| 国产看真人毛片爱做A片| 五月婷六月| 天天擼久久擼在线| 狠色狠色综合久久| 色欲久久久久| 亚洲无码色色| www.五月.com| 性综合网| 精品成人在线观看| 九九精品热播| 久久香蕉丁香| 日本人人草草| 色婷婷777狠狠| 激情av网| 97黑人精品区| 激情欧美婷婷| 99热这里只有精品国产免费| 五月天三级| 青青夜夜狠狠夜夜狠狠| 五月情婷婷五月| 婷婷丁香六月五月天| www.色色五月天.com| 国产九月婷婷| 人操人人| 激情五月天色色网| 丁香五月综合色婷婷| 超碰人人操人人干| 婷婷五月丁香六月伊人网| 九九五月天| 天天摸天天肏| 97亚洲色 torrent magnet| 欧美综合五月丁香六月婷| 婷婷终合色图| 另类图片天天影视在线观看| 激情五月天开心网丁香无码| 五月婷婷六月奇米网丁香| 天天日夜夜草进麻麻的子宫| 婷婷五月天日本无码| 久久性爰视频这里只有精品| 99热这里只有精品9| 天天骑天天操| 天天操比比| 婷丁香久综合| 五月丁香六月婷婷色| 婷婷大美在线| 亚洲成人五月| 夜夜躁爽日日| 内射 无码 伊人| 美女91一起草| 青青草原中文字幕| 五月天婷婷婷| 激情婷婷| 五月丁香婷婷伊人日韩| 超碰九九热| 五月婷丁香花| 婷婷播5月| 淫视馆AV在线| 九九操屄| 色婷网| 婷婷色五月亚洲| 色婷五月| 色吧综合网| 青青草免费公开视频| 中文字幕操比影片| 91Chinese在线| 日本美女天天日天天爽| 久久视频婷婷| 国产av天天插天天操天天爽| 91久久久久久久| 影音先锋激情网| 天堂草在线看www| 久热 91| 中国女人做爰A片| 婷婷伊人綜合中文| 五月丁香婷婷人体| 色色国产| 日亚二欧美| 丁香五月天激情五月天激情五月天激情网 | 51精品国自产在线| 色五月色五天色情网| 一个色的综合| 九九九色综合| 色婷婷久久7777| 狠狠做五月| 亚洲欧美999| 久久久精品色| 五月婷精品| 五月婷婷自拍视频| 99re热视频这里只精品| 久久只有这里精品免费| 五月丁香六月婷婷久久肏| 国产日韩欧美| 91九九| 激情网五月| 欧美性色A片免费免费观看的| 久久久久亚洲AV无码网影音先锋| 久热久69| 99热这里只有精品69| 亚洲愉拍99热成人精品| 久热久操久热久草国产91| www.色婷婷。com| 噜噜干日本| 99热观看| 婷婷草| 夜精品无码A片一区二区蜜桃| 色婷婷久久综| 开心激情综合| 色爱综合五月| 强伦轩人妻一区二区电影| 亚洲精品白浆高清久久久久久| 99在线视频精品| 草逼大片| 日本少妇AA一级特黄大片| 亚洲激情视频网| 狠狠操天天干| 丁香亭亭久久| 玖玖色综合| 狠狠色丁香| 99在线热视频| 丁香五月区| 影音先锋天天日| 色色色色色色色色色色色色色色,网站| 亚洲俩性性爱图片久久第六页| 99ri在线| 五月婷婷丁香成人网| 站长推荐无码播放| 色色色五月婷婷| 97干网站| 久热久色| 亚洲成人无码专区| 婷婷五月天亚洲丁香| 综合五月亭亭9| 丁香九月婷婷| 九九免费视频在线| 超碰在线网站9| 五月天婷婷丁香蜜桃91| 五月停停大香蕉| 六月婷色六月| 美腿丝袜AV天堂网| 影音先锋噜一噜| 久久人人九九| 色色99| 婷婷久久五月天亚洲欧美国产日韩在线观看| 久久婷婷五月天| 99在线观看免费精品视频| 做爰丰满少妇1313| 婷婷天天色| 五月天丁香综合久久国产| 99视频在线播放大全| 婷婷五月激情网| 亚洲精品99| www.狠狠狠.com| 激情五月婷婷老师| 狠狠干狠狠干| 亚洲精99| 大香蕉九九操| 夜精品无码A片一区二区蜜桃| 激情五月婷婷伊人| 91视频综合网| 激情婷婷五月天| 激情五月天免费视频| 区啪精品| 激情色色| 五月婷婷九九热| 久久色情| 一级韩国产精品毛| 久久精品性爱| 99热精品在这里| 色久女| 婷婷丁香社区| 伊人五月婷婷| 婷婷丁香精品视频在线观看| 亚洲激情婷婷| 色婷婷综合视频| 婷婷六月色开| 久久日本wwww色| 网色99| 婷婷综合激情五月综合| 中文字幕在线免费观看视频| 激情五月天.色网| 婷婷五月香蕉| 99er精品视频| 日本五月婷婷久久久六月丁香| 热久久这里只有三级视频| 97干欧美| 噜噜视频| 国产一级婬片毛片| 丁香色五月直播| 婷婷日韩| 人妻丰满精品一区二区A片| 天天摸天天舔| 天天日日爽| 国产 亚洲 在线| 人妻视频一区而且二区| 少妇高潮呻吟A片免费看软件| 久久99热免费最新版| 婷婷综合五月激情| 97亚洲色 torrent magnet| 超碰人人草| 激情婷婷| 夜夜资源站| www,setingting| 丁香婷婷大香蕉| 亚洲中文乱字字幕在线永久| 天天做天天爱综合| 爱的综合网| 啪啪91| enecarbon-materials.com污K127封锁请涟系@wip1688 | 夜夜夜叫天天天做| 色噜噜婷婷| 99伊人婷婷在线| 91男人操女人视频| 桃色五月天| 婷婷91| 欧美婷婷综合| 热99这就是精品视频| 五月丁香婷婷婷婷综合网| 性色人人爽| 久久综合伊人77777蜜臀| 免费视频1区| 99热在线观看| www久久久久久久久久久| 影音先锋一区二区资源站| 亚洲性受XXXX五月丁香| 久久99婷婷| 色狠狠999综合| 五月婷婷九| 久久精品日| av不卡网站| 美女婷婷激情亚洲| 久草婷妨| 久久九九经典| 91九色欧美| 婷婷五月色惰| 九九碰九九爱97超| 99re熱| 91丨九色丨大屁股| 久久视频这里都是精品| 亚洲第精品| 涩涩五| 99爱免费在线视频| www.99情趣网| 欧美天堂久久| 深爱五月激情五月| av高清无码| 婷婷视频在线| 亚洲激情五月| 亚洲精品亚洲人成人网| 九九综合精品| 国产一二三四五六七八视频| 五月天丁香婷婷社区| 99熟女视频| 婷婷五月天影院| 亚洲国产精品SUV| 色欧美色色色| 亚洲色图81p| 九九精品综合| 亚洲色欲欧美一区二区三区| 淑女丝袜bi操逼123| 日本激情91| 丁香五月欧美| 97超级碰| 黄色AV日韩| 激情五月婷婷欧美极品 | 99爱操| 五月婷免费视频| 亚洲AV网站| 亚洲色五月天是什么| 九九色99| 婷婷色丁香五月| 99热在线播放| 99人妻碰碰碰久久久久| 99热6这里之有精品| 欧美草久久五月天91| 婷婷五月天社区| 狠狠干天天日| 激情婷婷五月天丁香| 色综合丁香| 天天爽曰日爽| 色婷| 九一九九黄色| 伦乱美欧| 欧美精品啪啪| 婷婷丁香五月在线观看91| 婷婷网影院| 五月婷婷熟女| 婷婷午夜| 丁香五月婷婷激情完整版| 五月天亚洲图片婷婷| 丁香综合网| 色爱亚洲| 玖玖色资源| 色 五月俺去也| 熟女网站久久| 色五月色五天色情网址| 人人操Av| 色噜噜狠狠色综合日日| 五月婷婷97| 婷婷的五月天另类视频| 久久草大香蕉| 久久超视频| 69激情小说| 99热这里只有精品66| 9在线9在线婷婷在线国产| 久热这里只有精品性色AV| 第五色婷婷| 亚洲深喉aV| 亚洲五月天,激情视频| 五月天婷婷综合免费| 国产看真人毛片爱做A片| 天堂久久性| 俺去啦综合网| 丁香五月婷婷激情97| 91色久| 色色五月天婷婷丁香| 婷色影院| 99热精国产这里只有精品| 欧美人妻一区二区| 色色激情网| 亚洲丁香五月天视频| 91re色综合视频| 丁香婷婷免费| 九九色色| 日日操夜夜爽天天天| 天天激情站| 日韩精品999| 六月份天丁香婷婷| 国产亚洲99久久| 色色AV色色色东莞| 9色免费网| 五月天社区狠狠| 九九操屄| 五月天婷婷无码视频| 亚洲丁香五冃97色| 开心色播色五月婷婷| 久久婷婷五月天| 五月天婷五月天综合网在线观| 99久久久| www色婷婷久久综合久色| 色色性爱视频| 色欲婷婷夜夜| 97在线观看| 少妇激情五月婷婷| 99操九九网| 久狠日av| 久久综合色五月| 97色色综合| 亚洲综合视频在线| 99热这里只有精| 丁香婷婷精品视频| 丁香婷婷欧美综合| 一本色道久久综合狠狠躁小说| 婷婷激情五月视频| 亚洲高清在线| 五月丁香婷婷无码A∨| 少妇被躁爽到高潮无码文| 插插干干干色| 欧美日本高清视频99| 九九热在线视频| 天天射综合网站| 色五月婷婷网| 天天搞天天色综合| 色婷婷888| 狠狠操天天干| 亚洲婷婷激情五月天| 碰碰人人漕| 久久九九色| 久久这里99| 五月丁香六月婷婷久久| 99热婷婷| 26uuu在线观看| 无码人妻激情| 苗黎美女四级成人版一级二级毛片| 亚洲A色| 激情亚洲婷婷| 国产精品激情AV久久久青桔| 久久五月天婷婷| 久热9| 色婷婷综合久久| 婷婷 丁香 精品| 五月丁婷香| 天堂久久久久天堂网| www.色九月| 欧美美女国产日韩一区二区久 | 高清无码 一区 二区 三区| 9久9久9久女女女九九九一九| 97热精品| 青草热视频这里只有精品| a九九热www| 中文成人在线| 天天摸天天肏| 天天操天天操天天操天天操天天操天天操| 九九aV| 中文AⅤ大全| 丁香综合网| 亚洲综合婷婷六月丁香五月| jiujiu热在线视频| 亚洲成人av在线播放| 99热这里只有精品8| AAAA网站| 五月婷婷免费视频| 婷婷六月丁香激情| 欧美月久久| 99精品国产在热久久| 久久99精品九九久久久婷婷| 天天爽日日爽夜夜爽| 再次出发二| 五月天丁香成人| 国产黄色在线| 婷婷99| 狠狠色狠狠| 这里只有久久精99| AV国产有码| eeuus五月婷| 婷婷欧美综合| 91精品无码久久久久久五月天| 涩丁香| 99re在线观看| 婷婷激情图片| 婷婷五月天色色| 26uuu国产| 丁香婷婷在线| 天天天日天天天干| 亚洲九九在线| 亚洲瑟瑟精品在线| 五月丁香花伦理电影| 五月丁香六月激情综合网| 五月丁香久久呀| 人妻操日日| 久久免费干| 99久久婷婷精品视频| 亚洲精品V天堂中文字幕| 婷婷开心激情| 五月天色不卡| 国产精品电影| 老师的粉嫩小又紧水又多A片视频| 九九热免费| 亚洲av免费在线| 色色色99| 五月婷婷六月丁香综合在线| 亚洲激情婷婷| 亚洲操逼网| 操人91| 九九热精品在线| 国产激情综合五月久久| 五月天伊人| 国产黄色在线| 婷婷黄色网| 人人操大| 精品99在线看| 日韩性视频| 久草五月| 婷婷色天香| 99re这里只有精品在线观看| www99热| 99re这里只有| 91日本在线| 婷婷狠狠操| 日产精品一线二线三线芒果 | 亚洲婷婷丁香五月| 亚洲AV第二区国产精品| 丁香蜜臀黄色婷婷五月天| 亚洲操人| 欧洲综合视频在线观看。欧洲,亚洲综合食品在线观看。 | 第二色AⅤ| XXXX岛国| 丁香月六月| 一区二区乱码视频| www99热| 久久色六月| 日韩AV中文字幕在线| 婷婷激情人妻| wWw色五月| 久久开心五月婷婷| 亚洲免费99| 成人做爰A片免费看视频| 7777久久亚洲中文字幕| 久99久热| 婷婷六月激情丁香| 五月天婷婷影院| 激情五月婷婷综合| 超级久久久| 婷婷激情四射| 79色色色色| 婷婷五月天av| 激情六月婷婷啪啪| 丝袜人妻| 色丁香婷婷| 丁香五月婷婷色| 玖玖99婷婷| 五月天激情影院| 丁香五月欧美色综合| 五月丁香啪啪综合| 伊人丁香在线| www.色婷婷| 五月婷婷丁香网| 丁香五月天视频| 激情综合婷婷久久| 色婷婷综合中心| 色色色在线观看| 久久精品国产精品| 热九九精品| 日韩AAAAA| 国产又粗又大又爽又黄| 激情六月天婷婷| 五月天狠狠干| 色色色com| 极品另类| 思思久热6| 亚洲精品色| 色色丁香五月天| 色欲天天综合| 国产亚洲精品久久久久久久久动漫| 影音先锋四区| 99热在线播放| 激情玖玖综合网| caobi四区| 婷婷丁香熟妇综合网| 九九综合图片网| 天天爽夜夜爽夜爽精品| 激情网五月天| 丁香亭亭久久| 亭亭五月色男人| 日本97在线视频| 天天摸天天做天天爱天天爽| 毛片九九九九九九九九18| 久久婷出差欧美色两性综合网| 婷婷色情网| 狠狠se| www五月天com| 91碰操| 色丁香婷婷| 成人AV在线中文版| 秋霞电影理论| 专区无日本视频高清8| 亚洲小视频免费播放| 欧美婷婷丁香五月社区| 国产精典视频在线观看| 色婷婷精品视频| 五月亭久久无码视频| 婷婷激情五月天在线| 狠狠干最新地址| 99视频在线观看欧| 六月婷综合| 婷婷五月天第四色| 久久精品熟女亚洲AV麻豆| 99爱最新免费视频在线观看| 青草视频在线播放| 国际国外精品欧洲南美洲专区无码不卡| 亚洲亚洲人成综合网络| 六月激情婷婷综合| 韩日另类| 丁香六月激情网C0W| 久久丁香网| 午夜做爱影院| 久99久99精品免| 色情五月天丁香社区| 婷婷色情网| 五月天狠狠| 婷婷五月天六月综合| 激情性爱五月天网页| 五月丁香六月婷婷网站| 免费看片在线观看| 欧美婷婷日本| 欧美va亚洲va| 五月天丁香婷婷网| 天天操天天操天天操天天操天天操天天操天天操天天操天天操 | 婷婷五月激情六月| 色噜噜狠狠色综合成人99| 五月香婷婷| 色五月天天| www.婷婷五月.com| 大天天伊人| 这里只有精品亚洲| 无码少妇高潮喷水A片免费| 日日懆天天懆| 五月天三级久久| 天天色天天日| www.lingjunshare.com| 五月天婷婷激情网| 欧洲亚洲精品| 婷激情五月| 婷婷五月中文字幕| 激情五月婷婷五月| 婷婷激情六月天视频| 亚洲色婷婷五月天| 国产精品美女| 国产色色色色| 婷婷激情五月综合| 激情九月丁香婷婷| 另类精品视频在线观看| 岛国av网| www.综合久久.com| 丰满女老板BD高清A片| 深爱激清网| 超碰人妻在线| 丁香狠狠色婷婷久久无码视频| 色婷| www.av骚货| 欧美六月| 就去色色五月丁香婷婷久久久| 丁香五月色五月| 久色中文| 99久久九九| 久久99精品久| 亚洲无码99| 日日操夜夜撸| 人妻久久久久久久久| 中美月韩免费A片| 丁香五月天堂婷婷| 婷婷丁香五月激情| 亚洲成人五月| 另类小说婷婷色| 丁香五月婷婷黑人妻黄色电影院| 婷婷五月丁香青青草在线| 五月婷婷影院| 五月婷婷第四色| 婷婷五月天激情综合婷婷五月天激情综合 | 日韩色色视频| 五月丁香久久| 五月天精品综合在线| 99久热在线精品| 综合网网欲色| 4399无码视频二区| 一起草AV| 99精品在线观看| 激情五月天视频| 蜜桃五月天色| 五月婷婷色男女| 伊人干综合| 久久久久久久久久久44| 五月丁香婷婷欧美色图视频五月丁香777电影 | 久er7久热| 激情五月天色网站| 天天综合91入口| 91九色 熟| 日本一级淫| 色婷婷狠狠| 九九黄色网| 永久免费视频| 婷婷五月精品中文字幕| 婷婷五月综合亚洲| 天天爽天天摸| 丁香社区婷婷五月| 五月丁香欧美综合免费视频| 影音先锋女人av鲁色资源网小说免费| 五月天综合久久| 日本成人综合| 久久婷综合网| 99久久五月丁香野外| 婷婷情色五月| 中文不卡av| 五月婷婷很很色| 精品9197碰| 色无婷婷| 99久久97| 9色天堂| 91 久热| 婷婷色色宗合网| 色婷婷亚洲综合av| 91在线观看www| 1024你懂的欧美曰韩| 丁香婷婷老司机久操| 久久一伦| 国产综合81p| 第四色五月婷婷| 六月婷色| 五月天综合在线| 日日骑夜夜撸| 79亚洲精品少妇| 天堂婷婷五月色| 天天艹天天色| 激情五月天激情综合网| 五月天最新网| 婷婷的色色五月天| 综合色播| 双性美人被调教到喷水A片| 午夜性做爰电影| 五月婷婷久久大片| 色站9/| 五月婷婷六月色| 丁香婷婷激情| 97操视频| 内射爽无广熟女亚洲| 成人在线二区| 亚洲免费av观看| 五月丁香免费视频| 日韩成人网站精品久久大全| 天天爽天天爽夜夜爽| av狠狠操| 99re热在线视频| 99国产精品久久久久久久久久久| 亚洲视频综合网| 婷婷五月天综合AV| 99re最新地址视频| 99re思思精品在线观看| 天天精品视频免费观看| www.超碰在线| www免费在线视频| 青青艹b| 深夜男女福利刺激影院一区完整| 99热思思在线观看| 色欲色香伊人| 九九碰九九爱97超| 色135综合网| 99久免费视频| 琪琪秋霞| 人人视频人人干人人做| 欧美激情综合| 九久久九精品视频| 超碰在线观看99| 五月丁香花免费视频| 色五月丁香婷婷久草| 超碰在线成人| 婷婷九月丁香天堂丁香天堂| 激情五月激情综合俺也去婷婷小说| 天天摸夜夜爽天天做| 丁香六月婷婷综合缴| 99色| 亚洲婷婷激情综合激情999精品| 天天激情5月天亚洲| 综合激情深爱| 五月叮香啪| 久色大香蕉| 婷婷五月天激情文学小说| 久热这里只有精品视频免费观看| 97人人操在线| 婷婷五月激情综合网| www.久久| 色婷婷五月天激情在线观看| www.久久99| 九九大香视频| 五月婷婷丁香色播网| 综合色色色| 色婷婷久久视屏| 一级A片天天操夜夜操| 激情五月综合网| 99caobi| 色情五月天首页| 99热18| 夜色综合网| 淫水导航| 熟妇人妻中文字幕无码老熟妇| 99爽视频| 亚洲国产精品VA在线看黑人| 天天色综网| 色婷婷中文字母五月丁香| 色五月婷婷91| 五他月天啪啪啪| 五月丁香六月婷婷中合网| 五月丁香六月婷| 欧美大道不卡| 思思re99视频在线观看| 最近中文字幕2019视频1| 色六月丁香婷婷啪啪啪| www.久久99热地址发布| 一区二区三区四区牛| 99热这里只有精品最新地址获取| 亚洲精品久久久久久久久久吃药| 久久婷综合| 综合色五月| 991精品在线视频| 色噜噜狠噜噜视频| 亚洲蜜乳AV| 色久天| 色色色色色日韩午夜激情| 亚洲AAAA网| 亚洲色无码A片一区二区麻豆| 4399在线观看免费高清电视剧| 久99| 亚洲成人网站在线观看| 91日本在线| 久久久激情视频| 九九综合精品| 97自拍视频在线| 99热官网精品在线| 中文字幕永久在线| 操骚货在线| 99精品亚洲| 91精品婷婷国产综合久久| 99啪在线| 久久久无码精品成人A片小说| 久久182| 啪啪啪五月天| 国产精品美女| 五月丁香婷色| 99小视频| 丁香九月综合| 97人妻碰碰碰碰碰久久久久久| 尤物一区二区| 五月综合视频| av狠狠操| 色色免费网站| 色五月欧美| 色婷婷亚洲六月婷婷中文字幕| 婷婷之六月丁香| 亚洲婷婷开心五月| 最新日本A片| 久久9视频| 手机旧版看人妻1025| 亚洲成人中文字幕| 色婷婷91激情小说| 牛牛澡牛牛爽| 色天堂婷婷| AA片在线观看视频在线播放| 九九热AV| 激情第四色| 五月天婷婷影院| 九九色综合九九色| 五月综合色| 综合五月婷婷| 99色在线视频| 六月丁香久久| 99久久6| 99热在线精品观看| 五月婷在线观看| www九九| 黄网免费看| 色射影院| 99热在这里只有精品| 婷婷精品| 亚洲第一综合| 天天干天天做| 少妇被下春药玩弄A片| 久久久GOGO无码啪啪艺术| 在线观看免费视频| 无码成人AAAAA毛片AI换脸| 久久er99热精品一区二区| 亚洲国产精品VA在线看黑人| 极品人妻VIDEOSSS人妻| 日韩人妻AV在线| 国内自拍1区| 色五月色情| 超碰在线网站| 久久久宗合| 伊人激情| 国产裸舞福利资源在线视频| 五月天色婷婷视频| 五月丁香六月综合激情网| 欧美激情凹凸丁香网| 色五月婷婷很很操| 91九色中文| www.久久久久| 丰满人妻一区二区三区| A片试看120分钟做受图片| 超碰在线免费观看3 9| 国产永久一黄| www久久久久久久97| 激情婷婷丁香五月天小说| 天天色综合色| 丁香五月五月婷婷五月天激情四射| 丁香五月婷婷在线观看| 久99久精品视频| 夜夜谢天天干| 亚洲亚洲人成综合网络| 激情五月天.色网| 黄色一级影片| 婷婷激情伍月网| 婷婷五月综合在线视频| 五月婷婷激情视频| 91大神操美女| 极品人妻VIDEOSSS人妻| 久久久久久久,99精品视频| 久艹大香蕉| 99热这里只有在线播放| 丁香六月亭亭久久综合| www.色综合.com| 婷色五月| 色婷婷另类| 色五月天.con| 亚洲色色色色| 欧美日韩成人在线网站| 99精品免费| 伊人超碰在线| 99热超碰| 亚洲激情免费视频| 97狠狠色| 色婷婷狠狠禁18久久| 亚洲色激情| 五月婷婷久久开心网| 五月天婷婷激情小说电影| 99色在线| 91狼友视频网页更新| 欧美丁香五月97色| 激情久久天天| 9久久婷婷国产综合精品性色| 欧美性做爰大片免费看办公室| 丁香六月欧美| 精品色情一区二区三区四区| 亚洲成人人人操| 丁香六月激情综合| 综合精品99| 激情五月婷婷网在线观看| www.久热| 欧美色综合天天久久综合精品| 丁香五月天激情四射网| 久久与婷婷| 成人网在线视频| 秋霞AV吧| 色婷婷丁香五月天| 五月婷婷天| 国产精产国品一二三在观看| 激情五月天色婷婷综合| 丁香五月婷婷色五月| 99超级碰碰| 久久受www免费人成| 激情五月天婷婷| 五月婷婷综合在线视频小说| 色婷婷亚洲婷婷| 在线观看av网站| 天天舔天天摸天天透| 丁香五月天啪啪| 日韩黄色电影| 丁香社区婷婷五月| 99热亚洲| 狠狠久久婷五月| 五月婷婷,六月丁香| 麻豆AV一区二区三区| 中文字幕黄色片| 66色在线日韩| 99久久婷婷国产综合精品| 99国产小视频2013| 五月丁香久| 牛牛色av| 久久人妻人人槡| 日产精品久久久久久久蜜臀| 91久久久久久久久| 五月综合视频| 大大香蕉综合在线| 黄涩毛片| 综合色播| 亚洲超碰在线| 狠狠爱激情网| 超碰AV成人| 婷婷五月图片小说视频| 最近中文字幕大全免费版在线 | 丁香五月婷婷啪啪啪| 六月婷婷激情| 午夜福利8055| 九九性视频| 久久婷婷五月天大香蕉| 婷婷区日本| 97色色网| 激情图片亚洲| 久久视频这里有精品99| 色婷婷成人网| 99在线免费视频| 亚洲无码yw| 五月激情小说| 婷婷五月天丁香激情| AAAA网站| 97碰碰人人视频| 色婷视频| 成人va在线| 啄木鸟丝袜美女福利视频| 丰滿爆乳一区二区三区| 激情婷婷五月色| 国产黄大片在线观看画质优化| 蜜乳.comcom| 九九在线精品| 五月天激情在线视频| 艹B高清无码| 婷婷丁香九色| 九月婷婷丁香| 超碰日韩成人| 五月丁香六月欧美| 欧美日韩成卜| 色播丁香婷婷五月激情| 婷婷五月欧美综合| 久久久人妻门| 91丁香婷婷综合久久欧美| 色色色免费视频| 丁香五月婷婷激情完整版| 天天狠狠六月婷丁香影院| 久久久久久久久久久44| 69色婷婷| 在线中文字幕视频| 五月婷婷在线视频| 天天看片日日夜夜| 538在线精品| 亚洲激情精品| 日本123区日韩欧美不卡在线看| 五月丁香综合网| 97干欧美| 天天日天天爽| 内射激情在线| 视频一区二区在线| 五月天综合在线观看视频| 五月婷婷婷综合网| 色吧五月婷婷| 亚洲婷婷开心五月| 久9热视频在线| 色播播五月| 九热...av| 色一情一乱一乱一区91Av| www.91有码.com| 五月黄色婷婷| 色婷婷www| 99热精在线九九久久保| 牛牛澡牛牛爽| 色婷婷色99国产综合精品| 成人在线不卡| 午夜少妇在线观看视频| 五月激情综合深爱| 天天肏高清在线| 丁香五月色| 我要射综合| 91久久久久久久久久| 99热.com| 久久丁香五月婷婷| 激情五月综合久久| 婷婷五月天成人| 天天热夜夜操| 五月天婷婷爱| 丁香激情网| 九九色综合九九色| 丁香五月性| 久久九久久| 色噜噜狠狠色综合成人网| 人妻系列久久久久久久久久久| 色五月天 丁香| 亚洲中文字幕AV| 99热99免费| 久9热视频| 在线观看国产高清视频免费网站| 亚州色色色| 丁香六月婷婷激情综合| 亚洲AV久久久久久久久久久久久久久久| 99国产精品久久久久久久久久久 | 久久久久久久久99精品| 亚洲视频一区| 五月婷婷五月丁香| 青草性爱视频| 丁香五月婷婷99| 色婷婷基地 | 九热精品|