日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

简而言之,JUnit:单元测试断言

發(fā)布時間:2023/12/3 编程问答 49 豆豆
生活随笔 收集整理的這篇文章主要介紹了 简而言之,JUnit:单元测试断言 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

簡而言之,本章涵蓋了各種單元測試斷言技術。 它詳細說明了內(nèi)置機制, Hamcrest匹配器和AssertJ斷言的優(yōu)缺點 。 正在進行的示例擴大了該主題,并說明了如何創(chuàng)建和使用自定義匹配器/斷言。

單元測試斷言

信任但要驗證
羅納德·里根(Ronald Reagan)

崗位測試結構解釋了為什么單元測試通常分階段進行。 它澄清說, 真正的測試即結果驗證在第三階段進行。 但是到目前為止,我們只看到了一些簡單的示例,主要使用了JUnit的內(nèi)置機制。

如Hello World所示,驗證基于錯誤類型AssertionError 。 這是編寫所謂的自檢測試的基礎。 單元測試斷言將謂詞評估為true或false 。 如果為false ,則拋出AssertionError 。 JUnit運行時捕獲此錯誤并將測試報告為失敗。

以下各節(jié)將介紹三種較流行的單元測試斷言變體。

斷言

JUnit的內(nèi)置斷言機制由類org.junit.Assert 。 它提供了兩種靜態(tài)方法來簡化測試驗證。 以下代碼片段概述了可用方法模式的用法:

fail(); fail( "Houston, We've Got a Problem." );assertNull( actual ); assertNull( "Identifier must not be null.",actual );assertTrue( counter.hasNext() ); assertTrue( "Counter should have a successor.",counter.hasNext() );assertEquals( LOWER_BOUND, actual ); assertEquals( "Number should be lower bound value.", LOWER_BOUND,actual );
  • Assert#fail()無條件地引發(fā)斷言錯誤。 這對于標記不完整的測試或確保引發(fā)了預期的異常可能很有幫助(另請參見“ 測試結構”中的“預期異常”部分)。
  • Assert#assertXXX(Object)用于驗證變量的初始化狀態(tài)。 為此,存在兩個稱為assertNull(Object)和assertNotNull(Object) 。
  • Assert#assertXXX(boolean)方法測試boolean參數(shù)傳遞的預期條件。 調(diào)用assertTrue(boolean)期望條件為true ,而assertFalse(boolean)期望相反。
  • Assert#assertXXX(Object,Object)和Assert#assertXXX(value,value)方法用于對值,對象和數(shù)組進行比較驗證。 盡管結果沒有區(qū)別,但通常的做法是將期望值作為第一個參數(shù),將實際值作為第二個參數(shù)。
  • 所有這些類型的方法都提供帶有String參數(shù)的重載版本。 如果發(fā)生故障,此參數(shù)將合并到斷言錯誤消息中。 許多人認為這有助于更清楚地指定失敗原因。 其他人則認為這樣的消息混亂,使測試更難以閱讀。

    乍一看,這種單元測試斷言似乎很直觀。 這就是為什么我在前面的章節(jié)中使用它進行入門的原因。 此外,它仍然非常流行,并且工具很好地支持故障報告。 但是,在需要更復雜謂詞的斷言的表達性方面也受到一定限制。

    Hamcrest

    Hamcrest是一個旨在提供用于創(chuàng)建靈活的意圖表達的API的庫。 該實用程序提供了稱為Matcher的可嵌套謂詞。 這些允許以某種方式編寫復雜的驗證條件,許多開發(fā)人員認為比布爾運算符更易于閱讀。

    MatcherAssert類支持單元測試斷言。 為此,它提供了靜態(tài)的assertThat(T, Matcher )方法。 傳遞的第一個參數(shù)是要驗證的值或?qū)ο蟆?第二個謂詞用于評估第一個謂詞。

    assertThat( actual, equalTo( IN_RANGE_NUMBER ) );

    如您所見,匹配器方法模仿自然語言的流程以提高可讀性。 以下代碼片段更加清楚了此意圖。 這使用is(Matcher )方法來修飾實際的表達式。

    assertThat( actual, is( equalTo( IN_RANGE_NUMBER ) ) );

    MatcherAssert.assertThat(...)存在另外兩個簽名。 首先,有一個采用布爾參數(shù)而不是Matcher參數(shù)的變量。 它的行為與Assert.assertTrue(boolean) 。

    第二個變體將一個附加的String傳遞給該方法。 這可以用來提高故障消息的表達能力:

    assertThat( "Actual number must not be equals to lower bound value.", actual, is( not( equalTo( LOWER_BOUND ) ) ) );

    在失敗的情況下,給定驗證的錯誤消息看起來像這樣:

    Hamcrest帶有一組有用的匹配器。 圖書館在線文檔的“常見匹配項”部分列出了最重要的部分。 但是對于特定于域的問題,如果有合適的匹配器,通常可以提高單元測試斷言的可讀性。

    因此,該庫允許編寫自定義匹配器。

    讓我們返回教程的示例來討論該主題。 首先,我們對該場景進行調(diào)整以使其更合理。 假設NumberRangeCounter.next()返回的是RangeNumber類型,而不是簡單的int值:

    public class RangeNumber {private final String rangeIdentifier;private final int value;RangeNumber( String rangeIdentifier, int value ) {this.rangeIdentifier = rangeIdentifier;this.value = value;}public String getRangeIdentifier() {return rangeIdentifier;}public int getValue() {return value;} }

    我們可以使用自定義匹配器來檢查NumberRangeCounter#next()的返回值是否在計數(shù)器定義的數(shù)字范圍內(nèi):

    RangeNumber actual = counter.next();assertThat( actual, is( inRangeOf( LOWER_BOUND, RANGE ) ) );

    適當?shù)淖远x匹配器可以擴展抽象類TypeSafeMatcher<T> 。 該基類處理null檢查和類型安全。 可能的實現(xiàn)如下所示。 請注意,它如何添加工廠方法inRangeOf(int,int)以便于使用:

    public class InRangeMatcher extends TypeSafeMatcher<RangeNumber> {private final int lowerBound;private final int upperBound;InRangeMatcher( int lowerBound, int range ) {this.lowerBound = lowerBound;this.upperBound = lowerBound + range;}@Overridepublic void describeTo( Description description ) {String text = format( "between <%s> and <%s>.", lowerBound, upperBound );description.appendText( text );}@Overrideprotected void describeMismatchSafely(RangeNumber item, Description description ){description.appendText( "was " ).appendValue( item.getValue() );}@Overrideprotected boolean matchesSafely( RangeNumber toMatch ) {return lowerBound <= toMatch.getValue() && upperBound > toMatch.getValue();}public static Matcher<RangeNumber> inRangeOf( int lowerBound, int range ) {return new InRangeMatcher( lowerBound, range );} }

    對于給定的示例,工作量可能會有些夸大。 但它顯示了如何使用自定義匹配器消除先前帖子中有些神奇的IN_RANGE_NUMBER常量。 除了新類型外,還強制聲明語句的編譯時類型安全。 這意味著例如String參數(shù)將不被接受進行驗證。

    下圖顯示了使用自定義匹配器的測試結果失敗的樣子:

    很容易看出describeTo和describeMismatchSafely的實現(xiàn)以哪種方式影響故障消息。 它表示期望值應該在指定的下限和(計算的)上限1之間 ,并跟在實際值之后。

    不幸的是,JUnit擴展了其Assert類的API以提供一組assertThat(…)方法。 這些方法實際上復制了MatcherAssert提供的API。 實際上,這些方法的實現(xiàn)委托給這種類型的相應方法。

    盡管這似乎是一個小問題,但我認為值得一提。 由于這種方法,JUnit牢固地與Hamcrest庫綁定在一起。 這種依賴性有時會導致問題。 特別是與其他庫一起使用時,通過合并自己的hamcrest版本的副本,情況更糟……

    Hamcrest的單元測試主張并非沒有競爭。 盡管關于每次測試一個確定與每個測試 一個概念的討論超出了本文的討論范圍,但后一種觀點的支持者可能認為該庫的驗證聲明過于嘈雜。 尤其是當一個概念需要多個斷言時。

    這就是為什么我必須在本章中添加另一部分!

    斷言

    在“ 測試跑步者”中,示例片段之一使用了兩個assertXXX語句。 這些驗證期望的異常是IllegalArgumentException的實例并提供特定的錯誤消息。 該段看起來像這樣:

    Throwable actual = ...assertTrue( actual instanceof IllegalArgumentException ); assertEquals( EXPECTED_ERROR_MESSAGE, actual.getMessage() );

    上一節(jié)教我們?nèi)绾问褂肏amcrest改進代碼。 但是,如果您碰巧是該庫的新手,您可能會想知道要使用哪個表達式。 或打字可能會感到不舒服。 無論如何,多個assertThat語句會加在一起。

    AssertJ庫努力通過為Java提供流暢的斷言來改善這一點。 流暢的接口 API的目的是提供一種易于閱讀的,富有表現(xiàn)力的編程風格,從而減少膠合代碼并簡化鍵入。

    那么如何使用這種方法來重構上面的代碼?

    import static org.assertj.core.api.Assertions.assertThat;

    與其他方法類似,AssertJ提供了一個實用程序類,該類提供了一組靜態(tài)的assertThat方法。 但是這些方法針對給定的參數(shù)類型返回特定的斷言實現(xiàn)。 這就是所謂的語句鏈接的起點。

    Throwable actual = ...assertThat( actual ).isInstanceOf( IllegalArgumentException.class ).hasMessage( EXPECTED_ERROR_MESSAGE );

    旁觀者認為可讀性在一定程度上可以擴展,但無論如何都可以用更緊湊的樣式來寫斷言。 了解如何流暢地添加與被測特定概念相關的各種驗證方面。 這種編程方法支持有效的類型輸入,因為IDE的內(nèi)容輔助可以提供給定值類型的可用謂詞列表。

    因此,您想向后世提供表現(xiàn)力的失敗消息嗎? 一種可能性是使用describedAs作為鏈中的第一個鏈接來注釋整個塊:

    Throwable actual = ...assertThat( actual ).describedAs( "Expected exception does not match specification." ).hasMessage( EXPECTED_ERROR_MESSAGE ).isInstanceOf( NullPointerException.class );

    該代碼段期望使用NPE,但假設在運行時拋出了IAE。 然后失敗的測試運行將提供如下消息:

    也許您希望根據(jù)給定的失敗原因使您的消息更加細微。 在這種情況下,您可以在每個驗證規(guī)范之前添加一條describedAs語句:

    Throwable actual = ...assertThat( actual ).describedAs( "Message does not match specification." ).hasMessage( EXPECTED_ERROR_MESSAGE ).describedAs( "Exception type does not match specification." ).isInstanceOf( NullPointerException.class );

    還有更多的AssertJ功能可供探索。 但是,要使這篇文章保持在范圍之內(nèi),請參閱實用程序的在線文檔以獲取更多信息。 但是,在結束之前,讓我們再次看一下范圍內(nèi)驗證示例。 這是可以通過自定義斷言解決的方法:

    public class RangeCounterAssertionextends AbstractAssert<RangeCounterAssertion, RangeCounter> {private static final String ERR_IN_RANGE_OF = "Expected value to be between <%s> and <%s>, but was <%s>";private static final String ERR_RANGE_ID = "Expected range identifier to be <%s>, but was <%s>";public static RangeCounterAssertion assertThat( RangeCounter actual ) {return new RangeCounterAssertion( actual );}public InRangeAssertion hasRangeIdentifier( String expected ) {isNotNull();if( !actual.getRangeIdentifier().equals( expected ) ) {failWithMessage( ERR_RANGE_ID, expected, actual.getRangeIdentifier() );}return this;}public RangeCounterAssertion isInRangeOf( int lowerBound, int range ) {isNotNull();int upperBound = lowerBound + range;if( !isInInterval( lowerBound, upperBound ) ) {int actualValue = actual.getValue();failWithMessage( ERR_IN_RANGE_OF, lowerBound, upperBound, actualValue );}return this;}private boolean isInInterval( int lowerBound, int upperBound ) {return actual.getValue() >= lowerBound && actual.getValue() < upperBound;}private RangeCounterAssertion( Integer actual ) {super( actual, RangeCounterAssertion.class );} }

    自定義斷言是擴展AbstractAssert常見做法。 第一個通用參數(shù)是斷言的類型本身。 流利的鏈接樣式需要它。 第二種是斷言所基于的類型。

    該實現(xiàn)提供了兩種附加的驗證方法,可以按照以下示例進行鏈接。 因此,這些方法將返回斷言實例本身。 請注意, isNotNull()的調(diào)用如何確保我們要在其上進行斷言的實際RangeNumber不為null 。

    定制斷言由其工廠方法assertThat(RangeNumber) 。 因為它繼承了可用的基本檢查,所以斷言可以開箱即用地驗證非常復雜的規(guī)范。

    RangeNumber first = ... RangeNumber second = ...assertThat( first ).isInRangeOf( LOWER_BOUND, RANGE ).hasRangeIdentifier( EXPECTED_RANGE_ID ).isNotSameAs( second );

    為了完整RangNumberAssertion ,以下是RangNumberAssertion的實際運行方式:

    不幸的是,不可能在同一測試用例中將兩種不同的斷言類型與靜態(tài)導入一起使用。 當然,假定這些類型遵循assertThat(...)命名約定。 為了避免這種情況,文檔建議擴展實用程序類Assertions 。

    這樣的擴展可用于提供靜態(tài)的assertThat方法,作為所有項目自定義斷言的入口。 通過在整個項目中使用此自定義實用程序類,不會發(fā)生導入沖突。 在為所有斷言提供單一入口點的部分中,可以找到詳細的描述:在線文檔中有關定制斷言的 yours + AssertJ 。

    流利的API的另一個問題是單行鏈接的語句可能更難調(diào)試。 這是因為調(diào)試器可能無法在鏈中設置斷點。 此外,可能不清楚哪個方法調(diào)用已引起異常。

    但是,正如Wikipedia所說的那樣,可以通過將語句分成多行來克服這些問題,如上面的示例所示。 這樣,用戶可以在鏈中設置斷點,并輕松地逐行逐步執(zhí)行代碼。

    結論

    簡而言之,JUnit的這一章介紹了不同的單元測試斷言方法,例如該工具的內(nèi)置機制,Hamcrest匹配器和AssertJ斷言。 它概述了一些優(yōu)缺點,并通過本教程的進行中示例對主題進行了擴展。 此外,還展示了如何創(chuàng)建和使用自定義匹配器和斷言。

    盡管基于Assert的機制肯定是過時的并且不太面向?qū)ο?#xff0c;但它仍然具有它的提倡者。 Hamcrest匹配器將斷言和謂詞定義完全分開,而AssertJ斷言以緊湊且易于使用的編程風格進行評分。 所以現(xiàn)在您選擇太多了……

    請注意,這將是本教程有關JUnit測試要點的最后一章。 這并不意味著沒有更多要說的了。 恰恰相反! 但這將超出此迷你系列量身定制的范圍。 您知道他們在說什么: 總是讓他們想要更多…

  • 嗯,我想知道區(qū)間邊界是否會比下限和范圍更直觀...
  • 翻譯自: https://www.javacodegeeks.com/2014/09/junit-in-a-nutshell-unit-test-assertion.html

    總結

    以上是生活随笔為你收集整理的简而言之,JUnit:单元测试断言的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。

    日本性生活一级片 | 中文字幕综合在线 | 日韩中文字幕亚洲一区二区va在线 | 国产精品久久久久久久久久不蜜月 | 97在线观看视频免费 | 色五婷婷 | avcom在线 | 国产黄在线 | 色亚洲网 | 在线91色| 毛片网在线观看 | 超碰99在线| 久久久久97国产 | 在线观看你懂的网站 | 久久久久亚洲精品男人的天堂 | 高潮久久久久久久久 | 91中文字幕在线 | 中文字幕在线观看视频一区 | 国产精品一区专区欧美日韩 | 中文字幕在线字幕中文 | 久久婷婷视频 | 精品久久一二三区 | 久久午夜国产精品 | 日p视频在线观看 | 99r在线| 亚洲影音先锋 | 在线观看亚洲精品视频 | 色综合天天综合网国产成人网 | 99这里精品| 00av视频 | 国产精品电影在线 | 国产精品久久久久久久婷婷 | 欧美日韩中文视频 | 免费在线观看日韩视频 | 色香蕉网| 人人添人人澡人人澡人人人爽 | a午夜在线| 天天爽天天爽夜夜爽 | 亚洲欧美国内爽妇网 | 高清在线观看av | 99精品在线观看 | 免费网址在线播放 | 全久久久久久久久久久电影 | 免费观看版 | 豆豆色资源网xfplay | 日韩欧美视频在线播放 | 国产二区电影 | 国产成人精品午夜在线播放 | 最近高清中文在线字幕在线观看 | 国产黑丝一区二区三区 | av在线播放亚洲 | 四虎影视8848aamm| 国产精品九九九九九 | 天天夜夜狠狠操 | 成人动漫一区二区三区 | 91av免费在线观看 | 中文字幕一区二区三区久久蜜桃 | 日韩亚洲国产中文字幕 | 欧美日韩亚洲一 | 免费av网站在线 | 久久久久久综合网天天 | 免费电影播放 | 亚洲精品免费在线播放 | 2019精品手机国产品在线 | 久久草av | 婷婷精品国产欧美精品亚洲人人爽 | 免费h精品视频在线播放 | 国产精品成人国产乱一区 | 国产成人精品一区二区三区 | 久久精品成人 | 久久久免费毛片 | 日韩激情久久 | 欧美九九视频 | 超碰人人射 | 日本黄色a级大片 | 日日干美女 | 日韩高清无线码2023 | av中文字幕不卡 | 黄色特一级片 | 九草在线视频 | 欧美日韩精品国产 | 国产亚洲片| 欧美一级视频免费看 | 97精品国自产拍在线观看 | 中文字幕av网站 | 激情av网| 日韩在线观看高清 | 亚洲天天看 | 久久综合免费视频影院 | 综合久久综合久久 | 成人免费看片网址 | 91av视频免费在线观看 | 欧美一区免费在线观看 | 欧美日韩另类在线观看 | 一区二区三区在线看 | 在线播放亚洲激情 | 国产香蕉久久 | 中文国产字幕在线观看 | 日韩电影在线观看一区 | 中文字幕高清免费日韩视频在线 | 欧美日本日韩aⅴ在线视频 插插插色综合 | 99热官网| 99精品免费久久久久久久久 | 日韩激情第一页 | 91亚洲狠狠婷婷综合久久久 | 美女黄视频免费看 | 97人人超碰在线 | 婷婷色综合 | 亚洲国产网址 | 日韩欧美视频免费看 | 亚洲成av人片一区二区梦乃 | 国产91电影在线观看 | 国产裸体永久免费视频网站 | 国产成人精品av在线 | 国产成人精品国内自产拍免费看 | 91在线看黄 | 99视频一区 | 欧美日韩国产二区三区 | 香蕉视频在线播放 | 国产精久久久久久久 | 黄色影院在线免费观看 | 欧美日韩一区二区三区不卡 | 五月激情姐姐 | 在线免费观看视频一区二区三区 | 国产精品18久久久 | 国产主播99 | 日韩在线观看视频在线 | 国产一级在线视频 | 超碰在线免费福利 | 亚洲精品18日本一区app | 欧美一级性生活 | 国产欧美精品一区aⅴ影院 99视频国产精品免费观看 | 在线中文字母电影观看 | 日韩中文字幕免费在线观看 | 成人黄色资源 | 亚洲最大成人网4388xx | 波多野结衣动态图 | 亚洲综合在线五月 | 亚洲精品国产拍在线 | 伊人久久国产精品 | 色干综合 | 97视频在线免费播放 | 亚洲闷骚少妇在线观看网站 | 久久小视频 | 97精品国产手机 | av最新资源 | 在线免费观看成人 | 99热国产在线中文 | 国产精品欧美久久久久无广告 | 国产理论免费 | 国产精品久久久久久久久久妇女 | 国产99免费 | 久久日本视频 | 国产在线无 | 中文字幕在线播放视频 | 午夜精品久久久久久久99水蜜桃 | 国产成人精品av在线观 | 你操综合 | 国产91在线观 | 久久亚洲欧美日韩精品专区 | 日日干日日操 | www色网站| 91久久国产露脸精品国产闺蜜 | 日韩精品播放 | 亚洲视频1区2区 | 欧美精品久久久久久久亚洲调教 | 午夜在线免费观看 | 四虎8848免费高清在线观看 | 日韩精品一二三 | 久久久免费精品视频 | 99免费在线播放99久久免费 | 亚洲国产无 | 一色屋精品视频在线观看 | 成人手机在线视频 | 亚州av一区 | 中国黄色一级大片 | 亚洲黄色精品 | 91精品在线免费观看 | 日本一区二区不卡高清 | 亚洲精品九九 | 国产一级淫片免费看 | 精品国产一区二区三区久久影院 | 国产精品白虎 | 狠狠色噜噜狠狠狠狠2021天天 | 天天干,夜夜操 | 亚洲在线不卡 | 午夜精品一区二区三区视频免费看 | 五月婷婷丁香综合 | 美女av免费看 | 欧美三级高清 | 国产午夜精品理论片在线 | 在线播放你懂 | 久久激情电影 | 亚洲国产精品久久 | 久精品视频在线 | 国产又粗又硬又爽视频 | 国产成人精品999在线观看 | 97精品国产91久久久久久久 | 国产黄色在线观看 | 欧美日韩aaaa | 日韩特黄一级欧美毛片特黄 | 亚洲成人免费观看 | 国产精品6999成人免费视频 | av在线网站观看 | 视频在线91| 亚洲男男gaygay无套同网址 | 久草国产在线观看 | av短片在线 | 亚洲精品免费播放 | 色综合久久99| 91成品人影院 | 97高清免费视频 | 干亚洲少妇 | 超碰97人人在线 | 中文字幕黄色 | 成年人在线电影 | 欧美激情精品久久 | 91超级碰 | 超碰97人人干 | 亚洲在线a | 怡春院av| 夜夜躁狠狠燥 | 日本精油按摩3 | 欧美男同网站 | 天天综合网 天天 | 国产精品久久久区三区天天噜 | 日韩91在线 | av大片网址 | 欧美一区三区四区 | 黄a网| 永久免费的av电影 | 91超级碰 | 成人一区影院 | 亚洲影音先锋 | 中文字幕最新精品 | 97视频在线观看网址 | 成人在线观看免费 | 五月激情姐姐 | 久久视频这里有久久精品视频11 | 永久免费精品视频网站 | 99免在线观看免费视频高清 | 成人午夜av电影 | 国产精品成人在线 | 国产免费高清视频 | 国产韩国日本高清视频 | 激情综合网在线观看 | 四虎影院在线观看av | 99精品国产成人一区二区 | 国产成人精品免费在线观看 | 国产中文字幕91 | 国产精品成人自产拍在线观看 | 国产对白av | 日本精品在线 | 日韩激情第一页 | 国产成人久久av免费高清密臂 | 久草久草在线观看 | 日本黄色大片免费 | 激情伊人五月天久久综合 | 四虎成人精品永久免费av九九 | 日韩免费不卡av | 在线免费观看视频你懂的 | 国产高清视频免费在线观看 | va视频在线| 99久久影院| 在线观看视频免费播放 | 91视频-88av| 久久五月精品 | 久久久性 | 中文字幕在线观看免费 | 四虎影视成人永久免费观看视频 | 日本成人中文字幕在线观看 | 免费午夜视频在线观看 | 波多野结衣在线观看视频 | 日韩一区二区三区在线观看 | 欧美一级视频一区 | 亚洲va天堂va欧美ⅴa在线 | 1024手机基地在线观看 | 97国产小视频 | 久久激情小视频 | 特级a老妇做爰全过程 | 福利视频一二区 | 精品国产一区二区三区久久久久久 | 人人玩人人爽 | 色综合色综合色综合 | 精品国产一区二区久久 | 97在线影院 | 国产精选在线观看 | 日韩精品一区二区三区在线播放 | 国产成人高清av | 激情图片区 | 91成人在线免费观看 | 999热视频| 亚洲91中文字幕无线码三区 | 国产91精品久久久久久 | 三级午夜片 | 久草免费在线视频 | 97视频在线 | 日韩av影视 | 国产激情免费 | 91精品国产九九九久久久亚洲 | 久久精品女人毛片国产 | 17婷婷久久www| 免费看成年人 | 夜夜操狠狠操 | www九九热 | 国产精品久免费的黄网站 | 在线精品视频在线观看高清 | 久草综合在线观看 | 色激情在线 | av在线免费网站 | 狠狠躁18三区二区一区ai明星 | 久久国产剧场电影 | 人人爽人人爽人人片 | 深夜成人av | 日韩免费av片 | 97国产一区| 伊人久久一区 | 91精品国产一区二区在线观看 | 久热免费在线 | 狠狠色丁香久久婷婷综合丁香 | 精品国产一区二区三区蜜臀 | 在线三级播放 | 免费观看的av网站 | 久久免费视频7 | 激情五月婷婷激情 | 丁香花在线视频观看免费 | 国产一级精品在线观看 | 国产福利免费看 | 色资源二区在线视频 | 麻豆传媒在线免费看 | 字幕网在线观看 | 国产精品 国内视频 | 国产精品理论视频 | 99热精品国产一区二区在线观看 | 久久免费毛片视频 | 国产一级黄 | 视频二区| 黄a在线看| 久草电影在线观看 | 国产成人精品电影久久久 | 视频精品一区二区三区 | 亚洲久久视频 | 国产中文字幕亚洲 | 精品免费观看视频 | 欧美精品国产综合久久 | 伊人婷婷激情 | 日韩在线字幕 | 97色免费视频 | 一区二区三区精品在线 | 久久在线一区 | 91成人免费 | 亚洲精品国偷拍自产在线观看蜜桃 | 久久这里只有精品首页 | 激情综合网在线观看 | 国产精品 中文在线 | 天天做天天爱夜夜爽 | 国产精品专区h在线观看 | 91精品国产乱码在线观看 | 在线亚洲高清视频 | 九九在线精品视频 | 久久天堂影院 | 国产亚洲精品综合一区91 | 久久黄视频 | 91香蕉国产在线观看软件 | 久插视频 | 久保带人| 国产精品成人一区二区三区吃奶 | 日韩久久精品一区二区三区下载 | 草久久精品 | 天天干天天插 | 又长又大又黑又粗欧美 | 亚洲国产手机在线 | 人人爽夜夜爽 | 国产色女人 | 日韩欧美网站 | 久久久.com| 国产一级二级三级视频 | 久久久久亚洲天堂 | 国产成人精品一区二三区 | 亚洲国产片色 | 五月婷婷在线观看 | 韩日精品在线观看 | 有码视频在线观看 | 中文字幕黄网 | 国产精品午夜久久久久久99热 | 午夜少妇一区二区三区 | 韩日电影在线免费看 | 日韩av成人在线 | 在线看国产一区 | 亚洲精品一区二区三区四区高清 | 岛国av在线免费 | x99av成人免费| 99久在线精品99re8热视频 | 亚洲精品久久久久久国 | 久久国产精品一区二区三区四区 | 天天玩天天干 | 狠狠色丁香婷婷综合最新地址 | 五月婷婷香蕉 | 91在线91拍拍在线91 | 99久视频 | 毛片激情永久免费 | 成人av在线电影 | 亚洲免费不卡 | 日本公乱妇视频 | 国产美女在线精品免费观看 | 日韩精品视频免费在线观看 | 国产精品久久久久久久久久ktv | 国产精品一区二区久久精品 | 精品国产乱码久久久久久久 | 久久男人影院 | 国产精品成人久久久久 | 精品一区二区三区在线播放 | 久久久综合香蕉尹人综合网 | 91在线播 | 精品一区免费 | 最近日本韩国中文字幕 | 国内精品久久久久影院日本资源 | 日韩久久久久 | 国产永久免费高清在线观看视频 | 国产成人精品在线观看 | 美女视频黄,久久 | 欧美少妇的秘密 | 色狠狠综合| 999久久久久久久久6666 | 91av视频免费观看 | 久久高视频 | 日日夜精品 | 色香网| 在线播放视频一区 | 亚洲第一区在线观看 | 精品亚洲一区二区三区 | 欧美日韩大片在线观看 | 国产一区视频导航 | 久久这里只有精品1 | 成人免费看电影 | 免费视频久久 | 九九爱免费视频在线观看 | 国产高清精品在线 | 久久在线视频精品 | 日本午夜在线观看 | 日韩精品欧美专区 | 午夜色站 | 欧美国产日韩在线视频 | 字幕网资源站中文字幕 | 国产无套视频 | 亚洲一区二区视频在线 | 伊人五月| 三级av片 | 国产精品福利在线观看 | 久久精品牌麻豆国产大山 | 激情综合色图 | 日韩理论片在线观看 | 久久激情五月激情 | 久久全国免费视频 | 欧美一区二视频在线免费观看 | 国产中文字幕在线 | 亚洲欧美婷婷六月色综合 | 在线免费观看黄色av | 综合激情婷婷 | 人人干人人添 | 91热| 91av在线播放视频 | 亚洲专区欧美 | 日韩视频免费看 | 91精品一区二区三区久久久久久 | 久久草视频 | 91久草视频 | 精品二区久久 | 911国产精品 | 1024手机看片国产 | 日韩电影一区二区在线 | 91精品电影 | 中文字幕日韩无 | 国内视频在线 | 91热在线| 一区二区三区电影在线播 | 9在线观看免费高清完整版 玖玖爱免费视频 | 国产视频18 | 久久99久久精品 | 黄色软件视频网站 | 精品福利国产 | 国产一级片视频 | 国产另类xxxxhd高清 | 国产精品久久久区三区天天噜 | 99热精品免费观看 | 精品久久久久久久久久久久久 | 蜜桃视频日韩 | 日本一区二区不卡高清 | 久久天| 日av免费 | 国产69精品久久99不卡的观看体验 | 丁香激情视频 | 国内精品久久久久久 | 日韩高清免费无专码区 | 日韩一级电影在线观看 | 中文字幕永久在线 | 国产手机在线观看视频 | 久久久久久高潮国产精品视 | 精品视频中文字幕 | 国产专区一 | 97国产精品 | 婷婷激情五月 | 婷婷激情综合 | 天天综合久久 | 丁香激情网 | 九九免费观看全部免费视频 | 色午夜 | www久草| 日本公乱妇视频 | 天天天天爱天天躁 | 奇米导航 | 国产视频 久久久 | 91av中文字幕 | 在线日韩亚洲 | 色播五月激情综合网 | 99高清视频有精品视频 | 成人在线视频在线观看 | 最近最新最好看中文视频 | 精品国产乱码 | 日韩欧美在线综合网 | 亚洲国产午夜 | 亚洲成人av在线播放 | 亚洲国产成人高清精品 | 国产精品 国产精品 | av在线电影网站 | 日日日视频 | 丁香婷婷综合网 | 久草影视在线 | 免费a网址 | 国产在线第三页 | free,性欧美| 欧美天天综合 | 精品国产一区二区三区久久久蜜月 | 2000xxx影视| 狠狠做深爱婷婷综合一区 | 日本中文字幕在线电影 | 亚洲免费资源 | 国产精品久久久久久一二三四五 | 成人免费观看网址 | 久久久久久黄色 | 91大神电影 | 欧美日韩有码 | 亚洲精品九九 | 国产成在线观看免费视频 | 在线黄网站| 日韩电影在线视频 | 制服丝袜亚洲 | 精品一二三四视频 | 亚洲综合激情网 | 国产精品久久久久久久电影 | 麻豆传媒电影在线观看 | 免费看一级黄色大全 | 伊人va | 日韩色区 | 久久精品中文字幕免费mv | 成人欧美一区二区三区在线观看 | av一级在线| av 一区 二区 久久 | 久久优 | 最近中文字幕免费视频 | 500部大龄熟乱视频使用方法 | 特及黄色片 | 99精品欧美一区二区蜜桃免费 | 欧美色图视频一区 | 国产做aⅴ在线视频播放 | 91综合视频在线观看 | 国产精美视频 | 天天综合入口 | 美女视频黄色免费 | 久久久久国产成人免费精品免费 | 特级黄录像视频 | 91最新在线 | 免费看污在线观看 | 在线香蕉视频 | a级国产乱理伦片在线观看 亚洲3级 | 国产久草在线观看 | 成人免费视频网站 | 成人欧美一区二区三区在线观看 | 91麻豆精品国产91久久久久久久久 | 欧美日韩aaaa| 亚洲成av人片在线观看 | 成人小电影在线看 | 狠狠干成人综合网 | 丁香视频全集免费观看 | 国产乱对白刺激视频不卡 | 日韩三区在线观看 | 亚洲人成人在线 | 国产成人精品一区二三区 | 五月天伊人网 | 国产正在播放 | av大全在线免费观看 | 黄色a级片在线观看 | 草久久久久久 | 免费日韩视频 | 黄色a一级视频 | 国产99免费视频 | 国产精品 日韩 | 亚洲乱码中文字幕综合 | 亚洲精品播放 | 午夜精品一区二区三区免费视频 | 99精品国产99久久久久久福利 | 美女网站免费福利视频 | 久久久久久久久久伊人 | 丁香婷婷网 | 人人澡人人澡人人 | 国产美女视频一区 | 国产成人黄色 | 久久久亚洲影院 | 午夜成人影视 | 午夜美女wwww | 久久久久久电影 | 网址你懂的在线观看 | 欧美韩日在线 | 午夜久久福利视频 | 丁香六月婷婷激情 | 一区二区不卡 | 国产一区久久 | 久久久久久久精 | 91精品一区二区在线观看 | 亚洲精品午夜一区人人爽 | 国产午夜激情视频 | www毛片com| 一区二区不卡 | 免费涩涩网站 | 亚洲欧美怡红院 | 久久久久久国产精品免费 | 香蕉影院在线 | 激情婷婷av | 狠狠狠操 | 欧美精品九九99久久 | 国产精品99久久久久久宅男 | 99国产精品| 国产成人精品亚洲精品 | 国产中文字幕视频在线 | 免费黄色a网站 | 欧洲激情在线 | 97在线看| 欧美先锋影音 | 国产精品自产拍在线观看中文 | 国产色在线视频 | 欧美精品久久久久久久久久 | 一区二区三区高清在线 | 在线看欧美 | av大全在线免费观看 | 久久久久久国产精品免费 | 久久人人97超碰国产公开结果 | 久久视频在线看 | 97在线精品视频 | 国产美女视频免费 | 91成人破解版 | 91亚洲国产成人 | 午夜久久久久久久久久久 | 特级xxxxx欧美| 一区二区三区手机在线观看 | 91在线精品秘密一区二区 | 亚洲一区二区三区在线看 | 亚洲精品乱码白浆高清久久久久久 | 日韩电影在线观看中文字幕 | 人人澡澡人人 | 欧美激情视频在线观看免费 | 久草在线免费电影 | 国产群p视频 | 国产三级在线播放 | 91一区啪爱嗯打偷拍欧美 | 视频在线观看亚洲 | 久久影视一区二区 | 5月丁香婷婷综合 | 黄色软件在线观看免费 | 色在线最新 | 亚洲一二三久久 | 十八岁免进欧美 | 亚洲成av人片一区二区梦乃 | 九九九视频精品 | 伊人婷婷 | 久久网页 | 日韩精品久久中文字幕 | 欧美精品久久久久久久久久 | 久久国产视屏 | 在线观看国产一区二区 | 人人插超碰 | 国产精品色婷婷 | 国产精品久久久久久久久久久久冷 | 精品在线不卡 | 2023国产精品自产拍在线观看 | 果冻av在线 | 81精品国产乱码久久久久久 | 国精产品永久999 | 一级电影免费在线观看 | 五月天伊人 | 久久精品国产免费看久久精品 | 国产精品综合久久久久 | 亚洲精品视频在线看 | 精品久久电影 | 奇米网网址 | 国产一区二区三区四区在线 | 日韩欧美一区二区三区免费观看 | 激情婷婷| 国产激情小视频在线观看 | 一区二区精品在线 | 天天艹天天干天天 | 欧美成年人在线视频 | 亚洲爱av | 成 人 黄 色 片 在线播放 | 国产99久久久国产精品成人免费 | 激情综合婷婷 | 99精品电影 | 日韩av成人免费看 | 亚洲国产福利视频 | 西西444www高清大胆 | 国产精品一区二区在线观看免费 | 69av网| 国产精品99久久久精品 | 99精品视频在线观看视频 | a国产精品| 精品美女在线观看 | 国产成人精品aaa | 国产精品第一页在线观看 | 色综合久久中文字幕综合网 | 国产日韩欧美中文 | 国产专区免费 | 91成品人影院 | 国产午夜精品av一区二区 | 欧美天天射 | 91中文字幕在线视频 | 91av在线视频免费观看 | 国产免费黄色 | 99免费观看视频 | 久久黄色小说视频 | 欧美精品免费在线 | 五月婷婷丁香色 | 国产精品毛片一区二区 | 色视频国产直接看 | 在线一二区 | 九九免费精品视频 | 国产精品永久免费观看 | 亚洲 中文 在线 精品 | 国产91免费在线观看 | 黄色免费网站 | 久久观看免费视频 | 久久久www免费电影网 | 久久久久美女 | 久久久久久久久亚洲精品 | 99精品国产兔费观看久久99 | 四虎最新域名 | 欧美视频18 | 91麻豆精品国产91久久久无需广告 | 日韩一区正在播放 | 免费观看的黄色片 | 亚洲天堂网在线视频观看 | 国产精品乱码一区二区视频 | 国产婷婷在线观看 | 在线中文字幕一区二区 | 欧美色图狠狠干 | 日韩资源视频 | av在观看 | 免费观看v片在线观看 | 99成人精品| 国产精品观看在线亚洲人成网 | 中文字幕资源网在线观看 | 天天色天天色 | 亚洲精品在线播放视频 | 国产一级黄大片 | av片免费播放 | 日韩在线观看高清 | 久热香蕉视频 | 操操操干干干 | 一级电影免费在线观看 | 久碰视频在线观看 | 久久er99热精品一区二区三区 | 亚洲色图22p| 亚洲精品免费视频 | 色黄视频免费观看 | 黄a网| 日韩av成人免费看 | 超碰在线人人 | www.久久视频 | 国产不卡免费 | 欧美国产日韩一区二区三区 | 亚洲aⅴ免费在线观看 | av网站免费在线 | 久久久综合精品 | 麻豆mv在线观看 | 欧美另类一二三四区 | 免费看片亚洲 | 久久国产网 | 午夜视频免费播放 | av在线之家电影网站 | 中文字幕在线观看你懂的 | 天天射天天操天天色 | 韩国在线一区二区 | 久久综合九色综合欧美狠狠 | 丰满少妇一级片 | 欧美日韩精品综合 | 激情视频久久 | 免费福利片2019潦草影视午夜 | 国产最新在线 | 麻豆首页 | 天天爽夜夜爽人人爽一区二区 | 国产精品一码二码三码在线 | 波多野结衣综合网 | 亚洲网站在线 | 日本在线中文在线 | 国产一区视频在线观看免费 | 婷婷在线播放 | 婷婷伊人五月 | 久久久久久久久久久网 | 中文字幕色在线 | 91av手机在线观看 | 色91av| 国产黄色高清 | 亚洲一级二级 | 久久成人综合视频 | 青青河边草免费观看完整版高清 | 日韩欧美久久 | 欧美美女视频在线观看 | 国产精品成人一区二区 | 狠狠色综合网站久久久久久久 | 久久男人视频 | 狠狠操操操 | 在线免费高清 | 国产精品久久久久久久久毛片 | 在线看片中文字幕 | 五月婷香| a成人v在线 | 免费国产在线视频 | 在线亚洲精品 | 欧美国产日韩在线视频 | 又黄又爽的视频在线观看网站 | 最新国产在线观看 | 在线视频99| 麻豆国产视频下载 | 久草在线视频中文 | 日韩av三区 | 色97在线 | 国产精品久久精品 | 国产福利精品在线观看 | 天天色天天骑天天射 | 黄色在线免费观看网站 | 中文字幕av在线 | 国产午夜在线观看视频 | 一区二区三区免费网站 | 国产亚洲精品福利 | 日本黄色免费观看 | 久亚洲| 国产一区福利在线 | www.天天干.com | 中文字幕免费不卡视频 | 中文字幕免费播放 | 亚洲成人av免费 | 亚洲综合在线五月天 | 视频二区| 在线91网| 精品欧美日韩 | 天天夜夜亚洲 | 视频国产精品 | 美女视频久久 | 激情一区二区三区欧美 | 成人av电影免费观看 | 国内成人精品视频 | 九九涩涩av台湾日本热热 | 中文字幕在线看视频 | 国产精品h在线观看 | 日本狠狠色 | 亚洲欧美日本A∨在线观看 青青河边草观看完整版高清 | 久久久伊人网 | 国产精品毛片一区视频播 | 久久久久成人精品 | 中文字幕在线字幕中文 | 国产精品免费视频久久久 | 香蕉视频久久 | 久久久久久久久久久久久国产精品 | 九九免费在线观看 | 天天综合区 | 国产精品永久免费观看 | 狠狠的干狠狠的操 | 奇米影视在线99精品 | 国产在线精品观看 | 欧洲在线免费视频 | 中国一级片视频 | 国产亚洲精品久久久久久 | 一区二区三区在线免费播放 | 久久综合狠狠综合久久狠狠色综合 | 天天操天天舔天天爽 | 国产一级免费观看视频 | 日韩免费看的电影 | 人人看人人草 | 国产日韩三级 | 国产一级在线观看 | 久久97精品 | 欧美一级久久久 | 免费观看高清 | 成人av直播 | 婷婷久月 | 久草综合在线 | 久久超| 在线观av| 最近免费在线观看 | 成人黄色电影视频 | 国产精品国产三级国产aⅴ无密码 | 日韩精品视频免费在线观看 | 在线观看视频亚洲 | 在线观看一级片 | 久久久久成人精品 | 成年人免费av网站 | 亚洲性xxxx | 一级大片在线观看 | 91高清免费看 | 三级性生活视频 | 成人天堂网 | 中文字幕在线观看网址 | 精品麻豆| av天天在线观看 | a亚洲视频 | 日日躁夜夜躁aaaaxxxx | 片网址| 国产成人精品999在线观看 | 国产精品a久久久久 | 九色自拍视频 | 在线视频观看成人 | 中文字幕丰满人伦在线 | 午夜影院一级 | 天天干天天射天天插 | 夜夜操夜夜干 | 国产资源| 中文字幕在线免费97 | 国产精品一区二区白浆 | 激情五月在线视频 | 精品婷婷 | 色天天中文 | 日本在线中文在线 | 999久久久国产精品 高清av免费观看 | 日韩精品一区二区三区免费观看视频 | 久草在线费播放视频 | 久久精品一区二区三区四区 | 91亚色视频在线观看 | 国产91精品一区二区 | 天天干天天射天天插 | 精品视频中文字幕 | 色婷婷丁香 | 精品久久五月天 | 九九导航 | 最近免费中文字幕 | 久久久精品影视 | 国产亚洲精品久久久久久久久久久久 | 天天曰视频 | 中日韩欧美精彩视频 | 国产一区二区三区高清播放 | 日韩久久一区二区 | 亚洲激情校园春色 | 最新免费中文字幕 | 国产特级毛片aaaaaaa高清 | 国产精品videossex国产高清 | 99久久久久久国产精品 | 亚洲激情综合 | 最近中文国产在线视频 | 国产黄色理论片 | 国产日韩欧美精品在线观看 | 激情五月看片 | 国产午夜精品一区二区三区 | 麻豆免费在线视频 | 黄色网在线播放 | 欧美日一级片 | bbbbb女女女女女bbbbb国产 | 亚洲精品美女 | 国产一级淫片免费看 | 国产精品一区二区在线免费观看 | 狠狠干狠狠插 | 亚洲涩涩网 | 免费高清在线一区 | 中文字幕乱在线伦视频中文字幕乱码在线 | 一区二区三区在线观看中文字幕 | 91桃花视频 | 亚洲九九爱 | 久草视频免费在线播放 | 国产精品一区二区av日韩在线 | www五月| 亚洲精品中文字幕视频 | 狠狠操夜夜操 | 午夜精品久久久久久久久久久久久久 | 欧美精品黑人性xxxx | 欧美日韩国产在线观看 | 九九国产视频 | 99re8这里有精品热视频免费 | 欧美小视频在线观看 | 久久a v视频 | 国产精品毛片久久久 | 成年人看片 | 欧美极品xxx| 中文字幕免费成人 | 高清av在线 | 青春草国产视频 | 国产不卡高清 | 日日爽 | 欧美在线视频一区二区三区 | 天天综合精品 | 亚洲午夜在线视频 | 亚洲视频456| 91免费网站在线观看 |