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
返回資訊列表
亚洲热手机在线观看| 狠狠色综合无线观看| 天天日天天添| 久久xx| 91婷婷在线观看| 欧美综合激情丁香五月六月婷| 久久在线大香蕉| 日日色综合| 亚洲综合网激情小说| 果冻传媒A片一二三区| 国产婷婷五月天| 99在线免费视| 99热人人| 97干综合网| 日产精品一线二线三线芒果 | 天天搡日日搡aaaaⅩ| 九九色色| 五月天综合在线| 五月激激激情综合网| 91viP在线看| 久久精品A片777777| 超碰在线网站| 久久婷婷五月综合色丁香花| AV电影在线播放| 天天干狠狠| 天天搞夜夜叫| 色爱综合视频| 亚洲激情 久久| 91要啪| www.丁香六月婷婷久久天堂影院.con| 成片免费播放| 丁香婷婷影院| 天天天天操| 激情5月婷婷| 五月情四婷婷| 天天爱天天做天天爽| 99色色网| 那里有AV网址| 成人必爱视| 精品成人在线观看| 中文字幕av久久爽一区| 九九久久精品| 婷婷久久精品| 99精品在线观看视频| 国产成人亚洲综合A∨婷婷| 综合伊人久久| 武则天精品久久| 久久婷婷激情四射五月天| 天天舔天天爽| 国产精品第一国产精品| αv中文字幕在线观| 午夜丁香婷婷| 精品9197碰| 五月激情天| 五月丁香色色网| 99热天堂| 99色综合| 午夜69成人做爰视频| 91操碰| 欧美丁香婷婷五月| 强壮的公次次弄得我高潮A片日本 | 五月婷在线观看| 成人网址在线观看| 天天干夜夜想| 免费无码毛片一区二区A片| 激情综合五月天| 免费视频99| 九九视频在线观看| 丁香激情综合| 在线99精品| 97久久五月丁香婷婷| 91人在线观看| 成人资源在线| 丁香色六月| 色五月婷婷久久| 婷婷久久综合| 26uuu亚洲| 九九热精品视频在线观看| 操骚货在线| 婷婷天天色| 久久婷婷色| www色婷婷| 99色婷婷| 97人碰人操| 日韩AV一区二区三区| 九九九午夜视频| 婷婷九色| 天天拍天天做视频| 色五月婷婷老师| 深夜男女福利刺激影院一区完整| 久久久国产精品黄毛片| 久久3p| 婷婷六月激情| 五月丁香婷在线| 婷婷深爱五月丁香| 人妻内射一区二区在线视频| 久婷婷五月综合欧美| 96精品久久久久久久久| 色五月婷婷DVD| 精品无码人妻一区| 97碰久久| 日韩AV在线免费| 丁香五月婷久久| 超碰在线看| 另类少妇人与禽zOZZ0性伦| 亚洲视频在线观看| 九九碰九九爱97超| 橾逼网| 99热国产精品| 激情五月瑟瑟| 9久热| 天天插轮理| 色情成人五月天| 日日夜夜干| 天天视频精品9| 超碰人人艹| 色色色.com| 五月婷婷色播| 精品无码片| 天天草人人摸| 中文AV在线观看| 91中文在线| 69天堂99| 丁香五月,激情五月,深爱五月| 五月天综合激情网| 亚洲春色奇米影视| 99在线观看免费精品视频| 激情五月婷婷开心网| 91久操| 超碰妻人人| 九九国产精视频| 玖玖资源站中文| 99热精品在线在线| 这里只有精品视频222| 99久久极情精品一区| 色婷婷电影网| 欧日美女Va| 9l视频自拍9l视频自拍九色学生| 夂夂夂夂夂夂夂夂夂夂夂夂夂夂夂夂夂夂夂亚洲亚洲亚洲亚洲亚洲亚洲亚洲亚洲色 | 五月婷视频久久| 狠狠xx| 亚洲第一成人无码A片| 久久婷婷综合基地| 一区视频网站| 中文资源在线a| 五月天综合视频| 欧美99热| 精品久久99码| 五月丁香久久| 人妻综合网| 老司机伊人| 国产又黄又爽又色的免费| 国产免费AV在线| 五月天天久久香| 国产亚洲精品久久久久久牛牛| 亚洲成人免费电影| www.激情| www.亚洲激情| 日本在线wwww| 婷婷五月色情| 五月天婷婷激情网| 午夜69成人做爰视频| 无码色色色色色| 久久六月综合| 9热视频在线观看| 网站免费一站二站| 大香蕉五月天| 丁香六月天| 久久亚洲色导航| 91啪啪视频| 激情深爱综合| 久草免费福利视频| 久久Xx| 97人人搞| 日韩在线99| 日韩另类在线观看| 五月丁香在线| 丁香婷婷视频| 97香蕉久久超级碰碰高清版| 色色五月天激情| 欧美大奶熟女噜噜噜噜| 91色综合久久| 亚洲啪啪啪啪| 五月婷婷综合色拍| 91九色中文字幕女在线观看| 五月丁香六月天| 婷婷五月蜜桃成人桃色丁香| www99xxxx五月丁| 五月天激情小说欧美激情| 光棍影院日韩精品| 天天爽天天操| 五月天伊人| 色五月成人| 99久久久久| 思思热在线视频99| www.激情com| 深夜男女福利刺激影院一区完整| 三十路磁力链接| 婷婷丁香五月天熟女丝袜| AV成人在线播放| 久久激情视频| 久久久久久18| 99视频| 激情综合网之激情五月| 9999热在线免费观看| 五月丁香婷婷综合网| 五月丁香啪啪啪免费看| 丁香玖玖视频大全| 婷婷色色综合| www.99热| 丁香五月区| 性婷婷| 丁香五月婷婷亚洲激情四射| 国产精品扒开腿做爽爽爽A片唱戏| 色爱五月天| AV大香蕉| AV动漫不卡无码免费| 久久激情五月| 五月婷婷激情久久| AV性爱在线| 五月婷婷在线丁香| 91网站黄| 91视频久久久| 国产精品美女久久久久AV超清| 五月激情婷婷丁香天堂| 99热日本| 国产99美少妇| 五月天丁香六月综合| 色色色色色九九九九九| 亚洲精品久久久久久久久久吃药| 大香蕉综合网| 4399在线日本A片| 九九色视频| VA婷婷| 五月天婷婷社区久久综合| 欧洲MV日韩MV国产| 欧洲第一无人区观看| 丁香久月| 日本成人噜噜噜| 热99久久这里只有精品| 99'无码| 视频一二区| 91嫩草国产线观看亚洲一区二区| 最近免费中文字幕大全高清大全1 免费看欧美成人A片无码 | 开心激情久久久久久久| 色五月开心五月激情五月| 超碰免费电影| 日本大逼91| 97操操网| 亚洲一区二区色图-亚洲精品国产精品乱码-成人AV | 一级片sese片.COM| 婷婷五月天色色| 国产44页| 日亚二欧美| 激情五月综合| 国产成人网址| 538在线精品| 久久综合五月| 天天爽天天| 激情丁香五月婷婷| 婷婷五月花| 97色色色| 99无码视频| 激情丁香五月婷婷| 超pen个人视频97| 激情婷婷五月天| 一级黄色影片| 成人草榴视频| 国产99久9在线| 日本乱子人伦在线视频| 五月丁香婷婷五月色| 国产乱子轮XXX农村| 亚洲第一综合| 嫩模草| 激情五月黄色| 久久免费试看120秒| 人人97操| 超碰成人电影| 干婷婷五月天| 69激情小说| 操逼棍操逼| 综合久久人妻| 91九色国产| 欧美激情VA永久在线播放| 狠狠插狠狠插| 丁香五月偷拍| 欧美三级视频| 色5月婷婷色| 色色五月天婷婷| 色综合区| 日本五月婷| 成片免费播放| 91婷婷五月丁香碰| 91大屁股精品| 五月丁香婷婷激情在线| 99久久网站| 四虎成人精品永久免费AV九九| 九九热九九| 97人人超| 丁香婷婷婷五月综合色情| 婷婷中文无码| 日日肏夜夜干| 99精品视频网站| 51精品国自产在线| 中文av在线观看| 久久久99视频| 91久久婷婷人人澡草| 日日干天天| 亚洲午夜av| 五月情婷婷五月| 婷婷久久综合久色| 午夜大香蕉| 日本婷婷色| 大香蕉99热| 天天拍夜夜爽日日| 久久婷婷五月综合激情国产| 成人国产欧美大片一区| www九九热| 啪啪啪五月天| 99激情视频| 丁香九月色| 日本九九九九| 亚洲va欧美va天堂v国产综合| 久久婷婷精品| 麻豆精品| 婷婷丁香六月五月天| 婷婷五月深爱五月| 国产精品第一国产精品| 女同激情久久av久久| 丁香五月天欧美| www、色色色| 亚洲日日操| 激情色情五月天| 99 re视频一区| 婷婷情色激情| 久久小说网| 亚洲午夜av| 蜜桃婷婷丁香| 国产毛片精品一区二区色欲黄A片| 五月天婷婷在线播放| 天天干电影| 欧美月久久| 六月婷婷色五月| 成人欧美日韩| www久| 五月天婷五月天综合网在线观| 久久久99日本大片| 六月激情久久婷婷| 120分钟婬片免费看| 久久一伦| 五月花免费视频| 八戒青柠影视剧在线观看| 婷婷丁香花五月天| 色婷另类| 色色色五月婷| 天天拍天天做视频| 99精品综合视频| a片在线免费观看一区| 少妇久久诱惑视频| 亚洲乱码日产精品BD| 国产五月丁香在线| 江苏少妇性BBB搡BBB爽爽爽 | 成人免费黄色短视频| 天天综合干| 97香蕉碰碰人妻国产欧美| 91超碰九色| 久久婷婷亚洲| 日韩黄黄| 99色综合| 婷婷五月天人妻| 亚州美女| 有哪些A片网站| 99热97美女| 婷婷六月色播| 色综合香蕉| 婷婷色丁香五月| 俺也去五月婷婷丁| 色永久| OYIWbGcPu8H| 久久久五月四色| 激情综合五月丁香六月婷婷| 99热66| 五月丁香黄色| 天天综合精品| 99青青草| 伊人五月婷| 日日夜夜爽| 婷婷丁香婷婷97| 丁香桃色网| 日本91在线播放| 婷婷激情五月色综合| 91九色无码内射| 欧美丁香五月夫妻天| 99久热精品在线| 九月婷婷综合| 婷婷五月婷婷五月| 久草A片| 天天日夜夜爽| 亚洲成人网站在线播放| 综合激情五月丁香| 成人版视频在线观看| XX色综合| 色五月婷婷很很操| 开心久久xxx色| 97涩婷婷| www.色综合| av五月天婷婷丁香| 国产免费一区二区三区三州老师F1F1.CC| 综合久久综合久久| 久久99激情五月天| 99热| 色色色色色色色色色色色色色97| 337p午夜影院| 啊v视频在线观看| 5月丁香美女影院| 99re视频在线播放| 五月婷婷天| 伊人五月天男人的天堂在线| 玖玖99精品视频| 色婷婷基地| 丁香成人五月天| 丁香五月亭亭六月综合激情网| 国产亚洲99久久精品熟女| 久久精品99| 丁香五月乱中文字幕| 色噜噜狠狠色综合日日| ′久久99一| 婷婷五月丁香亚洲| 伊人激情AV一区二区三区| 久久激情网| 久久五月天激情视频| 九九热啪啪| WWW、99热| 亚洲AV免费在线| 人人操人人爰人人一天天碰夜夜拍夜夜爽-中国A级毛片天天看天天谢… | 色99在线视频| 思思热久久久在线| 六月婷婷日| 亚洲五月天,激情视频| 亚洲国产网站| 婷婷五月欧美AA片免费| 大香蕉婷婷婷| 国产婷伊人| 俺去也婷婷| 日本婷久久| 天天高潮夜夜爽| 婷婷五月天亚洲激情戏精品| 婷婷丁香五月天在线视频| 97干97色| 色久女| 99热99美国在线观看| 日韩大片艹艹| 五月六月丁香激情| 色婷婷香蕉丁丁网| 狠狠色无码| 成人婷婷色五月天| 五月婷婷色男女| 精品99这里有| 五月丁香色婷婷伊人| 97综合在线| 五月丁香啪啪啪综合网| 亚洲中文字幕网| 日韩人妻在线观看| 丁香婷婷久久 | 色你久久| 丁香五月在线人妻| 一区二区三区四区五区| 五月婷婷久久开心网| 五六月婷婷| 色热久资源| 激情五月婷婷丁香六月| 日韩 欧美 国产 一区 二区| 婷婷五月丁香综合激情小说| 久久婷婷五月天激情| 天天插天天干天天舔| 久久婷婷亚洲五月天| 麻豆五月丁香婷婷| 丁香婷婷社区| 大香蕉AV在线| 国产伦亲子伦亲子视频观看| 91国产精品视频播放| 久9热在线免费观看| 九九久久腿| 亚洲在线成人| 天天插天天玩天天干| wuyuedingxiang99| 婷婷色Av| 天天综合五月天| 天天色综网| 99激情视频| 婷婷五月激情黄色| www91在线| 操人91| 久久久婷婷婷| 色一色综合| 天堂久久大香蕉| 大香蕉五月婷婷| 婷婷欧美激情综合| 国产26uuu| 婷婷婷婷婷婷婷五月丁香| 婷婷五月天AV| 天天色综| 五月激激网w'w'w| 五月天五月天成人网亭亭成人色网站| 九色91视频| 六月丁香五月婷婷| 色婷另类| 亚洲99在线视频| 91碰碰视频| 国产精品久久久久久久久久| 午夜福利8055| 爱草视频在线观看| 999激情视频| 免费看欧美成人A片无码| 高清 码 免费看片短视频| 婷婷丁香视频在线观看免费| 夜夜骑天天操| 激情五月黄色| 久操b网| 色色综合色| 九九色热| 日韩另类在线观看| 日本激情综合| 成人做爰A片免费看视频| 久久久久久18| 五月婷婷m| 六月丁香久久| 99伊人性爱在线影院| 五月婷婷co.m| 狠狠综合网| jiujiujiuwuyuetian| 亚洲婷婷丁香五月视频| 五月天激情婷婷| 日本久草福利| 亚洲成人婷婷| 男同色五月开心五月激情五月| 九九热在线观看6| 六月份天丁香婷婷| 亚洲人成播放网站| 国自产拍偷拍精品啪啪一区二区| 久婷久婷激情肉| 久久久精品人妻录| 久久人人添人人爽添人人片αV | 国产精自产拍久久久久久蜜 | 99这里只有免费的精品| 色色色9| 69色婷婷| 激情丁香五月天| 99干免费视频| 三级大香蕉网| 夂夂夂夂夂夂夂夂夂夂夂夂夂夂夂夂夂夂夂亚洲亚洲亚洲亚洲亚洲亚洲亚洲亚洲色 | 99爱爱| 97久久视频| 中文字幕精品在线观看| 激情视频综合| 99热这里只有精品8| 久9热视频在线| 婷婷激情五月天色| 亚洲精品无AMM毛片| 婷婷五月四狠狠| 日韩无码专区| 69热在线| 99在线观看| 女性自慰系列第五页| 亚洲永久免费| 天天色月| 婷婷五月花| 秋霞午夜理论| 精品香蕉99久久久久网站 | 亚洲AV成人一区二区在线观看| 99热在这里只有免费精品| 婷婷在线视频| 精品无码色欲AV| 免费观看欧美成人AA片爱我多深| 这里只有精品99www| 成人无码精品1区2区3区免费看| 伊人大香五月天| 久久99综合| 五月丁香 久久久| 国产精产国品一二三在观看| 淫五月停停| 国产一区男女| 丁香五月 激情文学| 天天做天天爱天天综合| 激情图片99| 97资源欧美日韩大香蕉超碰一区| 日本综合色色| 亚洲精品久久久久久久久久吃药| 99热的无码| 日hao1区| www.99热| 99热视精品| 大香久久伊人网| 五月婷精品| 99热国产国产| 久久久久久久久久久久久久久久久精典| www.婷婷.com| 色婷婷手机在线| 国产亚洲精品久久久久久久久动漫 | 五月天社区| 婷婷五月天亚洲综合网| 偷偷操99| 国产精品扒开腿做爽爽爽A片唱戏| 五月丁香六月停停| 人人操人人爰人人一天天碰夜夜拍夜夜爽-中国A级毛片天天看天天谢… | 激情欧美五月丁香| 亚州精品色情无码A片| 色婷婷基地 | 五月天婷婷激情在线色图| 五月久久婷婷丁香| 影音先锋男人站,影音先锋男人色资源网,影音先锋AV最新资源站,影音先锋AV资源 | av网址在线| wwccc久久久| 久久jiuwww| 人人操AV| 99啪99| 婷五月丁香| 五月丁香啪。| 亚洲视频一区| 色99色| 激情五月天之六月婷婷| 99热99美国在线观看| 日本欧美成人片AAAA| 激情五月天com| 婷婷色系婷色| 久操人妻| 久久sp免费视频| 疯狂做受XXXX高潮A片| 色婷婷五月天久久| 亚洲九九九九| 丁香五月激情六月欧亚激情综合导航| 亚洲99精品欧美一区| 丁香色五月 97干| 大香久久综合网| 任你草| 狠狠99| 久久婷婷五月草视频| 丁香六月啪啪| 91精品国产99久久久久久天美| 久久无码成人| 天天弄天天操| 九九热在线99| 伊人激情综合网| 99热这里只有免费精品| 日批在线看| 激情久久久| 国产精品视频| 五月天基地| 精品9久| 五月婷婷六月激情| 欧美日韩成人| 色五月激情五月| 色五月婷婷在线| 日本成人噜噜噜| 伊人狠狠操| 色五月激情五月丁香五月婷婷啪啪综合| 久热综合| 99热99干| 99九九精品| 亚洲六月色婷婷| 亚洲AV无码影院| 嫩草哈哈操| 9热成人在线视频| 欧美性猛交99久久久久99按摩| 狠狠干在线| 久久综合九九| 伊人啪啪网| 午夜一区| 五月色综合| 国产99热| 另类在线| 一级操逼大片| 97成人丁香| 99re视频在线精品| 超热久碰.com| 五月天另类图片区99| 99免费青青蜜臀| 久久精品噜噜噜成人A∨色欲| www亚洲无码| 第四色网婷婷| www.99热视频| 五月天激情国产综合婷婷婷就去爱| 久久久久久久97| 九九香蕉网| 那里有AV网址| 五月婷婷影视| 久久性爱视频网站| 九九热啪啪| 五月婷av| 狠狠色噜噜狠| 五月天色色色色色| 五月丁香婷婷在线| henhencao国产在线| 欧洲亚洲欧洲99久久| 五月天激情子轮| 99热官网| 丁香五月激情网| 超级碰碰97在线| 激情文学 综合 九月| 亚洲色夜| 六月激情婷婷综合| 拳交大逼| 丁香五月婷久久| 99ER热精品视频| 一起操 91N.com| 91ncom.色| 天天拍夜夜爽日日| 婷婷五月情| 丁香成人五月天| 激情98色婷婷五| 色激情五月| 久月丁香爱婷婷综合| 一本到不卡高清DVD| 丁香 亚洲 久久| 亚洲色婷婷色| 亚洲va欧美va天堂v国产综合| 色色色免费视频| 久热A片| 婷婷在线精品| 欧美国产一区二区三区| 久99久视频| WWW、日本色丁香、co m| 97色色婷婷| 天天做天天摸| 色色色999| 九九综合图片网| wuyuedingxiang99| 能看的AV| 亚洲操女| 九九精品片一| 97热精品| www.99操| 六月丁香婷婷网| 婷婷97碰碰| 日本大人久久| 噜噜综合网| 激情久久久久久久久久久| 日韩综合成人| 色久播播| 色色免费网站| 99久久婷婷国产综合亚洲| 九九热色视频| 久久婷婷五月综合伊人| 97色一二三| 淫五月停停| 99热只有精品在线播放| 婷婷大乡焦噜噜| 精品国婬伦V无码久久久| 久久久婷| 久婷婷婷| 五月久久网| 五月丁香六月婷婷视频| 99国产在线精品视频| 激情丁香五月天综合| 婷婷五月天小说| 亚洲精品第一国产综合亚AV | 色婷婷狠狠久久综合五月| 77799热| 久碰视频| 色月九九| www.91婷婷| 性热视频99精品| 99无吗| 99色人| 婷婷五月激情欧美大胆视频| 激情五月天丁香| 可以看的av| 大香蕉狠狠爱主页| 五月天婷婷基地| 午夜成人在线免费视频| 天天日夜夜拍| av在线不卡播放| 婷婷激情五月综合| 人人操人人添人人摸97| 999影院成人在线影院| 人人操9| 婷婷五月深深爱| 色欲色欲久久宗合网| 开心五激情网| AA片在线观看视频在线播放| 天天干天天操天天干天天操天天干天天操| 丁香五月激情五月| www.伊人天堂偷偷婷婷| 丁香六月婷婷色XXXX| 欧美综合激情五月| 超碰一区二区| 激情婷婷五月| 日本97在线视频| 2017狠狠干| 另类专区在线| 色色色色综合网| 深爱激情四射| 丁香五月桃花在线激情综合| 夜夜干夜夜操| 91人人网| 国产一级片| 去干网最新版本亚洲版| www.九九婷婷| 丁香五月网址| 久久综合激情五月天| 亚洲日本韩国| 噜噜久| 手机旧版看人妻1025| 超碰免费人人| 婷婷五月情色| 九九九九成人| 久久98| 丁香六月天婷婷色| 色综啪啪啪啪啪啪| 激情伊人五月天| 啪啪干伊人婷婷| 五月丁香A∨在线| 色99在线视频| 3p日韩网站视频| 色月丁| 丁香婷婷激情| 99热成人在线观看| 久久婷婷五月丁香网| 色婷婷丁香五月| 夜夜操天天干| 丁香婷婷综合激情五月色,开心五月丁香花综合网,激情综合五月亚洲婷婷,五月天 | 五月丁香激情综合| 99这里只有精彩视频| 这里只有精品久久| 97caop| 婷婷丁香色五月久久88| 99在线精品视频| 亚洲一二三网| 色婷婷色综合| 综合网五月| 亚洲三A| 婷婷色五月大香蕉在线观看| 精品国产va久久久久| 天天综合亚洲综合| A1片久久久| 八戒青柠影视剧在线观看| 亚洲成人av在线观看| 色婷视频| 深爱五月日韩| 色香欲综合| 中文字幕91,综合| 久久99热这里只有精品首| 99热精品在线播放| 色综合久久88色综合天天99| 日日夜夜婷婷| 婷婷五月在线| 第2色五月婷| 午夜丁香婷婷| 欧美成人精品A片免费一区99| 六月激情婷婷综合| 26uuu国产精品| 大香蕉精品视频| 七七色综合| 在线视频色五月| 五月婷婷丁香五月婷婷丁香| 亚洲乱码日产精品BD| 久热AA| 色情五月天婷婷| 久久婷婷综合五月天| 婷婷五月a| 五月丁香狠狠爱婷婷综合| AV在线中文| 亚洲无码免费看| 久久久久综合激动五月天| 日日夜夜干| www99精品在线观看| 蜜乳9188| 激情另类综合| 91精品国产综合久久蜜芽解析速度| 国产婷婷五月中文字幕高清 | 欧美日韩精品人妻狠狠躁免费视频| 色色色婷婷五月| 色 色 色综合com| 亚洲色图欧美色图日本视频| 丁香五月婷婷六月婷婷| 丁香婷婷色色| 色黄啪啪| 人人操人人爱丁香五月| 亚洲乱码精品久久久久..| av色婷婷| 久re热视频| 91综合色噜噜| 激情五月婷在线精品| 国产精产国品一二三在观看| 色婷婷亚洲婷婷| 久久与婷婷| 久久sp免费视频| 天天日,天天射,天天舔| 欧美激情综合五月色丁香| 婷激情五月天视频导航| 九九久久精品| 五月婷婷欧美| 偷偷操99| 超碰不卡在线| 天天做天天爱天天高潮| 日韩美女羞羞网站在线观看| 天天摸夜夜夜| 99久久婷婷国产综合亚洲| 亚洲瑟瑟精品在线| 日日鲁鲁鲁夜夜爽爽狠狠视频97| 思思99精品视频| 99色色| 无码一区二区三区四区五区| 九九视频在线| VA婷婷| 五月婷婷激情四季| 99精在线| 欧美性二区| 丁香五月伊人| eeuus五月婷| 天天操综合网| 77799热| 精品夜夜澡人妻无码AV| 婷婷丁香五月天在线视频| 裸体做A爰片毛片A片免费| 日日操,日日爽| 人与禽A片啪啪| 91大屁股| 夜色.cnm| 色噜噜狠噜噜视频| 欧美在线看| 色色色999| 五月天丁香六月综合| 97婷婷色| 丁香五月婷婷88在线| 五月丁香婷婷钟和色图| 色五狠狠| 九九性爱网| 亚洲色综合| 就要去操亚洲成人精品五月天丁香婷婷| 色丁香五月婷婷| 五月深爱婷婷| 玖玖综合色区在线观看| 99热在线只有精品| 99在线视频精品| 婷婷丁香18| 婷五月丁香| 亚洲狠狠色丁香婷婷综合久久| 丁香五月天欧洲在线| 五月丁香色婷婷| 丁香久久五月天视频在线观看| 国产成人AV不卡| 激情99在线视频| 日本久久视频| 五月婷婷六月丁香在线| 天天综合图片| 一级七香蕉| 九色七七| 五月婷六月综合在线观看| 99久久国产宗和精品1上映| 国产成人va在线| 五月丁香色综合| 九色PORNY9l原创自拍| 婷婷五月天成人动漫| 五月婷婷之综合激情| 丁香五月婷婷色五月| 丁香色情五月综合激情| 成人AV中文字幕| 26uuu淫色| 五六月婷婷久久| 99狠狠| 亚洲五月天天| 大香蕉伊然在亚洲90| 亚洲不卡| 激情久久五月网| 91热久| 夜夜谢天天干| 亚洲综合激| 欧美天堂婷婷日韩| 91九色精品女同系列| wwxx日本| 色婷婷文字幕| 国产乱子轮XXX农村| 天天婷婷色六月| 久久99网站| 久草x色在线观看99| 99久久精品国产色欲| 欧美色播综合在线观看| 五月色激情综合网| 五月激情啪啪| 色色亚洲视频| 婷婷第六色| 成人VAV视频在线观看| www.夜夜操| 五月丁香六月婷婷操操操| 激情另类综合| 日韩AV无码影片| 丁香六月啪啪啪| 丁香五月婷婷色播艳门照| 久久 婷婷 五月天| 九九热视频精品999| 99久久综合| 丁香五月第四色88| 综合激情伊人影视在线| 亚洲av无码影院| 五月天激情小说| 色婷婷先锋| 国产99美少妇| 色五婷婷| 高清av在线国产| 婷婷五月色| 99re热在线观看| 九九机热| site:hcxsz888.com| 99这里有精品视频| www.思思99热| 日本老女人黄页在线播放| 日韩无码人妻一区二区| 久久性爱网| 另类天堂| 欧美性猛交99久久久99| 99色 色| 激情深爱综合| 久久精品9| 免费无码毛片一区二区A片| 丁香五月色色| 五月天成人网在线观看| 五月丁香婷婷久久| 婷婷和五月天| 久久五月网| 五月天激情日色在线| 天天射天天插天天干| 99视频只有精品| 五月婷婷深深爱| 欧美成人色婷婷| 。久久久久久久久久久久久久人妻| 丁香五月色情| 日韩色五月| 超碰99热精品| 操草草草| 日日操夜夜操不卡| 欧美A级成人婬片免费看理论| 亚洲综合色网| 五月天色图| av久热| 五月丁香六月天| 天天五月天综合网址| 亭亭五月天成人| 五月婷婷熟女| 婷婷五月天六月综合| 婷婷五月天视| 丁香五月婷婷啪啪| 99性视频| 99精品热| 96丁香六月婷婷蜜桃综合久久| 99热日| 在线中文亚洲| 日韩久综合| 小泽玛利亚视频一区二区| 亚洲热久| 超碰97色| av操一操| 91尤物九色在线| 亚洲超级碰| 六月丁香婷婷综合狠狠爱夜夜爱| 色www.con| 国内久久亭亭| 一级精品999WWW| 1024国产| 九九热欧美| 天天插天天狠| 婷婷五月丁香影院| 草美女在线观看视频在线播放| 91艹人| 婷婷丁香基地在线| 五月天色导航| 狠狠五月综合在线| 久久久久人妻网址| 激情五月天婷婷丁香 | 伊人久久丁香五月91| 丁香久久在线| 香蕉色色网| 五月天综合久久丁香91| 91免费看片| 色五月天激情| 色色网站在线免费观看视频| 婷婷在线精品| 国产裸舞福利资源在线视频| 六月婷婷七月丁香| 噜噜噜色噜噜| 天天做天天爱综合| 五月天综合| 超碰亚洲天堂| 婷婷五月天久久| 最近中文字幕大全免费版在线 | 黃色三级三级三级三级 qixing300.shrkbk.com www.jinbozs.com tianmiaosw.com | 怡红院院久久| www.狠狠艹| 婷婷大乡焦噜噜| 色五月婷婷五月| 色色网站毛片| 超级碰碰碰久久网站| 99九九玖玖| 婷婷五月天天天日日夜夜| 婷婷五月丁香高清无码| 五月丁香六月婷婷亚洲视频| 26uuu欧美| 99热6精品| 色五月丁香91| 亚洲性爱电影| 极品少妇XXXX精品少妇偷拍| 色婷青青| 九九99热| 婷五月丁香| 丁香六月亭亭久久综合| 99久久久免费| 五月天婷婷色播综合在线| 97人人操人| 婷婷五月天成人在线视频| 日日激情网| 国产视频婷婷| 五月丁香黄色视频| 亚洲第一成人AV| www.五月婷婷| 亚洲五月天天| 婷婷五月天AV在线| 国产精品久久久久久亚洲毛片| 五月丁香婷婷伊人日韩| 午夜免费试看| 激情九九这里只有精品| 大香蕉综合在线| 亚洲乱码日产精品BD| 五月天丁香久久| 九九视频精品在线免费| 噜一噜在线| 精品国产乱码久久久久久免费| 婷婷久久精品| 丁香五月婷婷动漫| 色欲婷婷五月天丁香| 日本精品人妻无码77777| 五月天婷婷伊人| 婷婷丁香一月| 欧美99热| 91seAV| 精品国产va久久久久| 婷婷婷婷婷婷婷婷| 国产小精品| 九色91视频| 五月天婷婷成人资源站| 日本三级大片| 久久影视婷婷五月| 色综合播放| 四色永久成人网站| 久久性爱激情| 六月丁香综合999| 色天堂A| 色九月综合| 五月天无码视屏播放| 久久综合影院| 精品9久| 亚洲色色在线| 超碰操网| 色黄啪啪| 伊人丁香花综合影院| 五月色丁香| 热久久色| 日韩欧美一级大黄网站| 国产69久久久欧美黑人A片| 婷婷99狠狠躁天天躁| 丁香五月在线观看| 六月婷婷激情图片| 色色色免费视频| 欧美成人一区二区三区在线视频 | 青草五月天| 色婷婷a v| 婷婷午夜天| 99干日日干| 婷婷六月综合在线| 五月天激情丁香| 日韩精品一品二区三区的使用体验| 综合激情深爱| 成人无码精品1区2区3区免费看| 99精品视频免费在线播放| 五月婷婷六月丁香| 婷婷自拍| 思思热久热| 啪啪日本欧美| 综合激情五月丁香| 91狠狠综合久久久久久| 激情五月综合色| 五月丁香六月成人| 丁香五月婷婷亚洲色图| 激情五月婷婷五月丁香五月开心五月 | 久久久久久久久久久久久久人妻视频 | 爱性综合网| 丁香五月手机在线| 97干在线视频| 亚洲综合无码| 手机在线日韩视频中文字幕| 天天插天天干| 日本WWW九九九| 激情五月天无人视频在线| 五月天色色色网| 日日舔夜夜操| 极品 少妇 内射| 五月天久久综合| 91碰碰视频| 婷婷五月天奸女| 超碰人人插| 人草人人| 色天堂操| 97五月天| 91九色欧美| 97人妻碰碰碰久久香蕉| 欧美色九| 亚洲五月婷婷| 五月天停婷基地| 日韩 中文 欧美| 五月激情啪啪啪| 天天操婷婷| 99色综合| www.婷婷| www.爱操com.| 国产首页在线| 国产在这里只有精品| 第1影院之五月婷婷| 婷婷五月色惰| 9色视频在线| 色色婷婷丁香| 密臀久久| 丁香五月激情五月色综合| 狠狠草在线观看| 丁香激情四射| 色人久久| 人人操Av| 婷婷丁香中文字幕| 婷婷色正月| 激情五月天福利| 99热亚洲| 少妇日麻屄| 色色9 9| 少妇达人正片在线播放_ikun_福利吧| 日本久草福利| 狠狠做深爱婷婷久久综合一区| 六月婷婷无码| 操人妻AV| 丁香五月天色婷婷| 91久久1118| 国产真实乱了老女人视频 | 亚洲字幕AV一区二区三区四区| 五月婷婷人妻| www.婷婷五月天| 狠狠精品干练久久久无码中文字幕| 颜射 精品性爱av| 婷婷色基地在线看| 色五月人妻| 色5月婷婷| 久婷首页| 五月天婷婷激情| 九九婷婷五月天| 欧美黑人大吊| 久久视9精| 婷婷五月色播| 99热香港| 蜜乳人妻一区二区三区| 五月天综合在线| 久久机只有这里精品| 99热碰碰| 天天日天天插| 久久久久久久人妻| 亚洲激情高潮| 五月丁香A片| 激情综合五| 精品久久人妻| 五月激情婷婷色| 久久婷婷丁香视频网|