精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

淺談契約測(cè)試

原創(chuàng) 精選
開發(fā) 測(cè)試
總體來說,契約測(cè)試是一個(gè)介于單元測(cè)試和集成測(cè)試的一個(gè)階段,他關(guān)注的細(xì)粒度比單元測(cè)試更粗,但是又無法取代集成測(cè)試。

背景

在現(xiàn)代的開發(fā)模式中,基于微服務(wù)的開發(fā)模式越來越常見,但是隨著項(xiàng)目規(guī)模的擴(kuò)大,服務(wù)與服務(wù)之間的依賴越來越密切,當(dāng)不同的開發(fā)團(tuán)隊(duì)去開發(fā)不同的服務(wù)時(shí),服務(wù)的提供者的變動(dòng)會(huì)影響到眾多消費(fèi)它的消費(fèi)者,為了保證系統(tǒng)的正確性和一致性,這將需要大量的溝通成本和代碼修改的時(shí)間成本。

之前遇到的某個(gè)客戶內(nèi)部就是因?yàn)榉?wù)與服務(wù)之間依賴過多,且存在各種的物理依賴,再加上其他種種原因,使得在集成測(cè)試時(shí)bug激增。對(duì)于他們而言集成測(cè)試需要依賴于各個(gè)服務(wù)版本的一致性以及真實(shí)的物理環(huán)境,因此他們的集成測(cè)試通常需要用上幾個(gè)小時(shí)才可以完成,這就使得整體的效率大大縮減。除此之外,在集成測(cè)試中發(fā)現(xiàn)的問題也會(huì)使得他們花很長(zhǎng)的時(shí)間去定位到問題所在。

相似的問題在平時(shí)的開發(fā)過程中也是經(jīng)常遇到,由于依賴方的接口變更導(dǎo)致在系統(tǒng)集成時(shí)頻頻出錯(cuò),整體的代碼又不得不再加修改,這就使得開發(fā)的進(jìn)度遲遲無法向前推進(jìn)。

為了解決這類的問題,契約測(cè)試應(yīng)運(yùn)而生。契約測(cè)試不是一個(gè)新鮮東西,但在實(shí)際項(xiàng)目經(jīng)歷中發(fā)現(xiàn)用好契約測(cè)試真的會(huì)大大增強(qiáng)開發(fā)的效率,因此寫下這篇文章來簡(jiǎn)單總結(jié)一下契約測(cè)試的一些內(nèi)容。

首先什么是契約測(cè)試

契約測(cè)試是一個(gè)為確保兩個(gè)獨(dú)立的系統(tǒng)或者微服務(wù)能夠兼容并可以相互通信的一個(gè)方法,契約測(cè)試分為兩種,一種是服務(wù)提供者驅(qū)動(dòng)的,另一種是消費(fèi)者驅(qū)動(dòng)的。如下圖所示,左側(cè)是一個(gè)服務(wù)的消費(fèi)者,右側(cè)是一個(gè)服務(wù)提供者,消費(fèi)者調(diào)用提供者的接口并消費(fèi)數(shù)據(jù)的交互過程會(huì)被記錄成一份契約,在契約中包含了服務(wù)的提供者和消費(fèi)者是誰,以及消費(fèi)者對(duì)服務(wù)的提供者的期望(如請(qǐng)求的參數(shù)和返回的結(jié)果)。服務(wù)的提供者會(huì)根據(jù)這份契約去反復(fù)驗(yàn)證自己是否能夠滿足消費(fèi)者的需求,這也就是所謂的消費(fèi)者驅(qū)動(dòng)。圖片

圖片

契約測(cè)試主要是為了驗(yàn)證服務(wù)層提供的數(shù)據(jù)是否能夠消費(fèi)者正常使用,它不會(huì)深入去測(cè)試服務(wù)的行為,而只是專注于測(cè)試服務(wù)的輸入與輸出,因此相比于沉重的集成測(cè)試而言,契約測(cè)試會(huì)更加的輕巧,快速。契約測(cè)試形式上類似于API級(jí)別的UT,但其本質(zhì)上還是個(gè)集成測(cè)試,比API測(cè)試在金字塔的位置更靠頂端,所以容易導(dǎo)致契約測(cè)試的數(shù)量增加和不穩(wěn)定性增加。

契約測(cè)試具體是如何實(shí)踐的

接下來我們分別從代碼和流水線設(shè)計(jì)兩方面來闡述一下具體的契約測(cè)試的實(shí)踐:

代碼層面:

為了完成契約測(cè)試,我們可以借助一個(gè)叫pact的工具。pact是一個(gè)代碼優(yōu)先的用來支持契約測(cè)試的一個(gè)工具,它目前支持java,python,go等主流的開發(fā)語言。

Pact中的一些基本概念:

  • Contract: 契約文件,在Pact中也叫做pact,可以保存在本地,也可存在broker中?
  • Provider: 真正運(yùn)行的生產(chǎn)者服務(wù)?
  • Consumer: 接收生產(chǎn)者發(fā)出的數(shù)據(jù)?

在pact中,consumer和provider分別做了不同的事:

Consumer端:

consumer端會(huì)做這么幾件事:

  • 首先使用pact dsl定義它消費(fèi)的接口的request和response,并注冊(cè)到mock server中?
  • 然后consumer端的測(cè)試會(huì)發(fā)送一個(gè)真實(shí)的請(qǐng)求到pact起的一個(gè)本地的mock server?
  • 接著pact會(huì)去對(duì)比實(shí)際的request和expected request 是否一致,如果一致則返回expected response?
  • 最后consumer會(huì)去確認(rèn)這個(gè)返回值是否正確 上面所有步驟都pass后,整個(gè)的consumer測(cè)的pact測(cè)試才算結(jié)束,此時(shí)consumer定下的契約會(huì)被發(fā)布到一個(gè)叫pact broker的地方進(jìn)行契約的統(tǒng)一管理。?

Pact broker是pact提供的一個(gè)專門用來統(tǒng)一管理契約的一個(gè)服務(wù),在這個(gè)服務(wù)中,開發(fā)者們可以清晰的看到所有的服務(wù)提供者和消費(fèi)者的詳細(xì)信息。

圖片

總的來說,cousumer端的主要功能是生成契約(文件的載體),驗(yàn)證request和response的工作是可選的,借由consumer端的集成測(cè)試的形式,確保生成的契約的確是consumer真正期望的,通俗來講,就是“測(cè)試測(cè)試的測(cè)試”。

Provider端:

在provider端,pact會(huì)mock出一個(gè)consumer并發(fā)送請(qǐng)求給provider端真實(shí)運(yùn)行著的進(jìn)程,provider在接受到請(qǐng)求后會(huì)根據(jù)自己的代碼實(shí)現(xiàn)將真實(shí)的response返回給pact,接著pact會(huì)拿著這個(gè)response去和pact broker上獲取到之前consumer定義的契約并進(jìn)行比對(duì),如果provider能夠滿足契約,則驗(yàn)證通過。圖片

圖片

當(dāng)consumer和provider的測(cè)試都通過后,產(chǎn)品則就可以被部署到指定環(huán)境了。

以上是消費(fèi)者驅(qū)動(dòng)的一個(gè)實(shí)踐方式,消費(fèi)者驅(qū)動(dòng)的契約測(cè)試主要適用于以下場(chǎng)景:

  • 消費(fèi)者和提供者都是可控的?
  • 消費(fèi)者的需求變動(dòng)能夠變成提供者的需求?
  • 消費(fèi)者數(shù)量不是很多,作為提供方能夠管理的過來?

符合以上的條件的場(chǎng)景下,比較適合使用消費(fèi)者驅(qū)動(dòng)的契約測(cè)試。消費(fèi)者驅(qū)動(dòng)的背景下,服務(wù)提供方可以基于消費(fèi)者提出的契約快速做出反饋。

然而,在實(shí)際的情況可能不是這么美好,之前遇到的客戶,他們內(nèi)部的部分情況恰恰違背了以上的場(chǎng)景。他們的產(chǎn)品極度依賴著一些外部的底層依賴,且底層的依賴變動(dòng)頻率較高,這使得他們會(huì)頻頻的在集成測(cè)試時(shí)發(fā)現(xiàn)底層已經(jīng)發(fā)生了變動(dòng)。在這種情景下,提供者驅(qū)動(dòng)的契約測(cè)試更加適合。由服務(wù)的提供方來約定契約,然后眾多的消費(fèi)者去滿足契約,當(dāng)提供方發(fā)生變動(dòng)時(shí),消費(fèi)方能夠及時(shí)感知到并快速反饋。整體的實(shí)踐流程只需將上方的consumer者和provider的操作進(jìn)行轉(zhuǎn)置即可。

換句話說,消費(fèi)者驅(qū)動(dòng)和提供者驅(qū)動(dòng)的區(qū)別在于誰去響應(yīng)契約的變化。就如上方提到的,外部的提供者依賴是不可控的情況下,提供者驅(qū)動(dòng)的模式會(huì)更加合適,相反則是消費(fèi)者驅(qū)動(dòng)的模式。

流水線的設(shè)計(jì)

當(dāng)選擇消費(fèi)者驅(qū)動(dòng)的契約測(cè)試策略時(shí),作為一個(gè)consumer,它要做的就是去發(fā)布契約,告訴provider它的需求。那么作為provider,它就需要去檢查自己的實(shí)現(xiàn)是否能夠滿足consumer的需求,那么當(dāng)它的實(shí)現(xiàn)無法滿足契約時(shí),則此時(shí)的流水線契約測(cè)試階段就應(yīng)該顯示fail,并告知對(duì)應(yīng)的provider,讓其快速做出修正 。如圖所示,當(dāng)consumer發(fā)布了新版本的契約,這將導(dǎo)致provider端的流水線fail,那么此時(shí)provider就會(huì)得知他們需要根據(jù)新的契約來修改實(shí)現(xiàn)了。

圖片

而和消費(fèi)者驅(qū)動(dòng)相反,提供者驅(qū)動(dòng)的設(shè)計(jì)則是當(dāng)provider發(fā)布了一個(gè)新的契約之后consumer側(cè)的流水線會(huì)變紅,直到consumer將他們的代碼根據(jù)新的契約修正后才可以進(jìn)入后面的集成測(cè)試。

圖片圖片

契約測(cè)試帶來的好處 

(1) 測(cè)試的速度快,無需依賴多個(gè)系統(tǒng)之間的交互

細(xì)心的同學(xué)通過上面的描述會(huì)發(fā)現(xiàn),在契約測(cè)試時(shí)服務(wù)的依賴方式不需要被真實(shí)調(diào)用的,契約測(cè)試通過mock依賴的方式來模擬依賴方的行為,這就使得測(cè)試的速度得以大大提升

(2) 可以并行開發(fā)

由于mock的存在,使得服務(wù)的消費(fèi)方和提供方可以根據(jù)事先定義好的契約進(jìn)行并行開發(fā)

(3) 發(fā)現(xiàn)問題后可以快速定位到問題:

因?yàn)閱栴}只會(huì)出現(xiàn)在當(dāng)前測(cè)試的服務(wù)或者組件中,你甚至可以確切的知道是哪個(gè)api測(cè)試fail了

(4) 在確定完契約之后,開發(fā)人員可以在本地就可以進(jìn)行測(cè)試,無需將代碼推至遠(yuǎn)端

(5) 測(cè)試前移

把本來要通過集成測(cè)試才能驗(yàn)證的工作化作單元測(cè)試和接口測(cè)試,用更輕量的方式快速進(jìn)行驗(yàn)證,更早的發(fā)現(xiàn)問題使得后續(xù)的測(cè)試更加快速

契約測(cè)試和其他測(cè)試的對(duì)比

圖片

總結(jié)

總體來說,契約測(cè)試是一個(gè)介于單元測(cè)試和集成測(cè)試的一個(gè)階段,他關(guān)注的細(xì)粒度比單元測(cè)試更粗,但是又無法取代集成測(cè)試。尤其是當(dāng)你的產(chǎn)品對(duì)環(huán)境依賴特別大的時(shí)候,集成測(cè)試還是必不可少的一部分,契約測(cè)試的存在只是為了讓你在開發(fā)過程中的聯(lián)調(diào)更加快速,集成時(shí)問題更少。?

責(zé)任編輯:趙寧寧 來源: Thoughtworks洞見
相關(guān)推薦

2023-02-16 11:58:51

契約開發(fā)測(cè)試??

2018-06-07 13:17:12

契約測(cè)試單元測(cè)試API測(cè)試

2022-10-21 17:24:34

契約測(cè)試定位

2023-10-04 00:14:00

WebSocket網(wǎng)絡(luò)協(xié)議

2011-04-22 16:05:26

測(cè)試

2017-11-22 15:13:20

集成測(cè)試自動(dòng)化測(cè)試契約測(cè)試

2010-04-13 10:49:32

2012-12-24 22:58:07

測(cè)試網(wǎng)絡(luò)測(cè)試

2011-05-16 14:13:04

模型測(cè)試

2011-06-08 17:23:12

測(cè)試用例

2010-04-13 10:43:05

MPLS

2010-09-17 15:12:28

2023-04-17 19:43:54

兼容性測(cè)試軟件測(cè)試

2010-04-13 10:54:33

MPLS

2010-10-11 10:33:51

linksys無線路由

2011-06-14 15:56:42

單元測(cè)試

2011-06-08 16:22:24

白盒測(cè)試

2011-05-16 15:09:20

測(cè)試用例

2011-04-18 11:34:34

嵌入式軟件測(cè)試

2021-11-01 13:53:24

自動(dòng)駕駛數(shù)據(jù)人工智能
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)

国产精品7777777| 男人的天堂免费| 尤物视频在线免费观看| 国产麻豆视频精品| 欧美亚洲国产日韩2020| 亚洲天堂精品一区| 精品国产一区二区三区不卡蜜臂| 色婷婷精品久久二区二区蜜臂av| 熟女视频一区二区三区| 人操人视频在线观看| 久久99国产精品麻豆| 久久久久久久久久久免费 | 久久久久久久综合日本| 91精品视频一区| 日韩欧美在线观看免费| 欧美日韩天堂| xvideos亚洲人网站| 双性尿奴穿贞c带憋尿| 国产精品**亚洲精品| 在线视频中文字幕一区二区| 美女黄色免费看| 蜜桃视频网站在线观看| 国产亚洲污的网站| 精品视频第一区| 性色av蜜臀av| 韩国三级电影一区二区| 国产精品一区久久| 手机看片久久久| 在线欧美三区| 欧美激情亚洲一区| 国产一区二区播放| 国产精品黑丝在线播放| 中文字幕久久久| 男生草女生视频| 欧美成a人免费观看久久| 精品美女一区二区三区| www,av在线| 国产不卡精品在线| 在线成人av网站| 亚洲欧美日韩一级| 国产精品亚洲d| 91福利在线导航| 久久精品99国产| 国产日韩电影| 色欧美片视频在线观看在线视频| 波多野结衣家庭教师在线播放| 国语对白在线刺激| 亚洲综合激情网| 国产精品入口芒果| xxxx视频在线| 岛国av一区二区在线在线观看| xxxx18hd亚洲hd捆绑| 国产一二三在线| 欧美丝袜一区二区| 男人操女人免费软件| 一区一区三区| 欧洲色大大久久| 中文字幕视频在线免费观看| 欧美电影在线观看网站| 777午夜精品免费视频| 99中文字幕在线| 免费观看在线一区二区三区| 精品国产一区二区三区久久久蜜月| 久久精品无码一区二区三区毛片| 日韩中文字幕| 亚洲精品福利免费在线观看| 精品人妻一区二区三区视频| 人人狠狠综合久久亚洲婷| 色婷婷久久一区二区| 老湿机69福利| 一本久久综合| 国产精品欧美风情| 99久久久久久久| 不卡高清视频专区| 欧美一区二区影视| 老司机在线永久免费观看| 亚洲天堂精品在线观看| 成人免费在线网| www.com.cn成人| 欧美日韩你懂的| 逼特逼视频在线观看| 亚洲精品小区久久久久久| 在线亚洲欧美视频| 欧美日韩在线视频免费播放| 亚洲视频1区| 国产精品亚洲аv天堂网| 国内精品久久久久久久久久| 成人黄色在线看| 亚洲黄色一区二区三区| 曰本三级在线| 欧美亚洲一区二区在线| 91精品人妻一区二区三区蜜桃2| 日韩欧美黄色| 欧美成人精品h版在线观看| 久久国产黄色片| 激情综合五月婷婷| 久久久神马电影| 久草中文在线| 日本道精品一区二区三区| 国产又粗又猛大又黄又爽| 国产成人手机高清在线观看网站| 久久亚洲精品毛片| 国产91国语对白在线| 国产精品1区2区3区在线观看| 欧美一级片免费观看| 日韩经典av| 欧美日本一区二区| www.久久av| 91久久夜色精品国产九色| 成人精品久久一区二区三区| 青青青草网站免费视频在线观看| 亚洲乱码国产乱码精品精可以看 | 成人毛片在线观看| 一区二区精品国产| 黄色亚洲网站| 日韩av一区二区在线观看| 免费在线黄色网| 美女高潮久久久| 美国av一区二区三区| 国产第一页在线| 在线成人av影院| 国产黄色片在线| 老司机久久99久久精品播放免费| 超碰97在线资源| 91在线中字| 69av一区二区三区| a级黄色免费视频| 丝袜亚洲精品中文字幕一区| 精品欧美一区二区精品久久| www欧美xxxx| 欧美成人video| 黄色一级片中国| 国产一区二区三区视频在线播放| 亚洲欧洲日本国产| 韩日精品一区| 国产一区二区三区中文| 久久国产香蕉视频| 久久久精品国产99久久精品芒果| 国产精品欧美激情在线观看| 久久这里只有精品一区二区| 午夜精品久久久久久久99热| 日批视频免费播放| 亚洲成av人片| 久久久久国产精品区片区无码| a91a精品视频在线观看| 九九九久久久| 欧美momandson| 国产亚洲精品激情久久| 最近中文字幕免费观看| 亚洲国产精品激情在线观看| 在线观看免费黄网站| 日韩精品首页| 91久久中文字幕| av在线影院| 欧美mv日韩mv国产| 亚欧视频在线观看| 91老师国产黑色丝袜在线| 国产精品少妇在线视频| 欧美熟乱15p| 成人亚洲欧美一区二区三区| 哥也色在线视频| 欧美精品一区二区三区蜜桃| 国产 欧美 日韩 在线| 国产午夜亚洲精品理论片色戒 | 久久精品视频va| 成人高潮片免费视频| 亚洲高清免费在线| aa一级黄色片| 毛片av一区二区三区| 日本丰满大乳奶| 国产色噜噜噜91在线精品| 欧美影院在线播放| 免费看a在线观看| 精品电影一区二区| 91在线视频免费播放| 国产精品久久久久9999吃药| 成人免费看片载| 久热精品在线| 国产一二三四区在线观看| 久久视频在线观看| 国产免费一区二区三区在线观看| 国精一区二区三区| 一区二区三区精品99久久| 国产成人精品免费看视频| 五月天欧美精品| 国产精品1区2区3区4区| 成人综合在线观看| 成年人网站大全| 欧美激情五月| 日韩精品欧美一区二区三区| 欧美久久一区二区三区| 日韩免费观看视频| 欧美videos另类精品| 在线电影欧美日韩一区二区私密| 亚洲av无码片一区二区三区| 欧美婷婷六月丁香综合色| 久久精品国产亚洲AV无码麻豆| 国产片一区二区| 成人区人妻精品一区二| 久久狠狠亚洲综合| 日本久久久精品视频| 一区二区三区四区日韩| 日韩国产欧美精品| 国产人妖ts一区二区| 91色精品视频在线| 欧美粗大gay| 韩国精品久久久999| 国产精品va在线观看视色| 亚洲精品综合精品自拍| www.av在线.com| 欧美日韩一区不卡| 加勒比在线一区| 亚洲国产精品视频| 综合五月激情网| 国产精品少妇自拍| 偷拍夫妻性生活| 91婷婷韩国欧美一区二区| 动漫美女无遮挡免费| 激情伊人五月天久久综合| av丝袜天堂网| 国产精品毛片一区二区三区| a级黄色小视频| 欧美久久成人| 国产日产欧美一区二区| 久久福利影院| 亚洲精品不卡| 日韩精品一区二区三区免费观影| 欧美福利精品| 欧美日韩大片免费观看| 国产精品免费视频一区二区| 亚洲成人五区| 成人综合av网| 成人在线超碰| 国产成人精品免费视频大全最热| 欧洲精品99毛片免费高清观看 | 在线免费视频一区| 奇米亚洲午夜久久精品| 嫩草av久久伊人妇女超级a| 免费日韩av片| 色婷婷综合久久久久中文字幕 | 国产精品1234| 日本久久免费| 国产精品黄色av| 小明成人免费视频一区| 国产精品入口免费视频一| 国产精品美女午夜爽爽| 国产精品美女久久| 日韩伦理一区二区| 亚洲影视九九影院在线观看| 精品国产亚洲一区二区三区在线| 亚洲最大成人在线| 1204国产成人精品视频| 久久99精品久久久久久久青青日本| 红杏成人性视频免费看| 久久精品第九区免费观看 | 国产视频一区二| 电影午夜精品一区二区三区| 爱高潮www亚洲精品| 精品国产乱码久久久久| 国产欧美日韩一区二区三区四区 | 一区在线免费观看| 日日橹狠狠爱欧美超碰| 狂野欧美一区| 91福利免费观看| 成人av第一页| 97在线观看免费视频| 亚洲天堂精品在线观看| 日韩乱码一区二区| 日韩欧美中文第一页| 中文在线免费观看| 欧美哺乳videos| 欧美3p视频在线观看| 日韩中文在线中文网在线观看| 青青草原国产在线| 欧亚精品中文字幕| 四虎影视成人精品国库在线观看| 成人国产一区二区| 免费观看久久av| av不卡在线免费观看| 亚洲一区二区动漫| 色18美女社区| 91丨porny丨最新| 成人在线观看高清| 狠狠躁18三区二区一区| 国产麻豆免费视频| 亚洲免费视频在线观看| 中文字幕资源网在线观看| 欧美一区在线直播| 香蕉大人久久国产成人av| 欧美一区二区三区成人久久片| 欧美成熟视频| 欧美日韩怡红院| 成人激情文学综合网| 91ts人妖另类精品系列| 精品久久久视频| 国产欧美日韩成人| 亚洲天堂成人在线| 成人性生交大片免费看网站| 国产精品亚洲一区二区三区| 狼人天天伊人久久| 性欧美18一19内谢| 久久婷婷丁香| 亚洲一区二区三区四区av| 国产精品久久久久久妇女6080| 日韩av女优在线观看| 91精品国产欧美日韩| 国产女人在线观看| 97成人精品区在线播放| 日韩精品一区二区三区中文在线 | 欧美精品色网| 97超碰人人爽| 久久精品男人天堂av| 五月婷婷开心网| 欧美精品一区二区三区蜜臀 | 人妖精品videosex性欧美| 视频一区视频二区欧美| 一区二区三区我不卡| 日韩国产一区二| 无码人妻精品一区二区三区温州 | 成人中文字幕视频| 中文字幕一区二区三区乱码 | 永久免费成人代码| 精品久久久久久国产| 欧美性受xxxx狂喷水| 欧美日本亚洲视频| 秋霞午夜一区二区三区视频| 艳色歌舞团一区二区三区| 青青草原综合久久大伊人精品优势| 丰满圆润老女人hd| 欧美午夜性色大片在线观看| 天天摸天天干天天操| 高清一区二区三区日本久| 深夜福利一区| 屁屁影院ccyy国产第一页| 国产精品影视网| 欧美成人精品一区二区免费看片 | 成人无码www在线看免费| 亚洲综合一二区| 欧美自拍偷拍一区二区| 欧美国产中文字幕| 成人黄色av网址| 性高湖久久久久久久久aaaaa| 粉嫩av亚洲一区二区图片| 丰满少妇高潮久久三区| 精品成a人在线观看| 成人性生交大片免费看网站| 狠狠色噜噜狠狠色综合久| 国产欧美日韩一级| 久久久亚洲av波多野结衣| 91福利视频在线| www.av在线播放| 成人久久一区二区三区| 牛牛国产精品| 色婷婷精品久久二区二区密| 精品欧美一区二区三区| 深夜福利在线观看直播| 国产精品 欧美在线| 天天插综合网| 精品国产免费久久久久久婷婷| 亚洲成人免费看| 毛片免费在线观看| 成人黄色影片在线| 韩国一区二区三区在线观看| 一起草在线视频| 在线观看不卡视频| 黄色的网站在线观看| 超碰97人人人人人蜜桃| 久久久久久自在自线| 黄色精品视频在线观看| 亚洲第一中文字幕在线观看| 中文字幕色婷婷在线视频| 神马影院我不卡午夜| 国产毛片一区二区| 国产三级av片| 日韩在线免费视频观看| heyzo欧美激情| 青青在线免费观看视频| 亚洲欧美色一区| 完全免费av在线播放| 国模一区二区三区私拍视频| 青草av.久久免费一区| 懂色av懂色av粉嫩av| 亚洲精品在线看| 国产精品久久久久久久久久辛辛 | 国产欧美精品一区| 亚洲成人一二三区| 国产不卡在线观看| 亚洲香蕉av| 成年人网站免费在线观看| 91精品国产综合久久福利| 偷拍自拍在线看| 无码人妻aⅴ一区二区三区日本| 91一区二区三区在线播放| 91久久国语露脸精品国产高跟| 午夜精品视频网站| 亚洲字幕久久| 嘿嘿视频在线观看| 亚洲黄色成人网| 国产在线一区不卡| 在线免费观看视频黄|