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

Jmeter簡單介紹與搭配Jenkins實現自動化測試實踐

開發 開發工具 自動化
最近有個需要依靠 Jmeter+Jenkins 實現自動化測試后部署的需求,于是看了看Jmeter的資料,這里給大家分享下。

一、Jmeter簡介

Apache JMeter 是 Apache 組織開發的基于 Java 的壓力測試工具。用于對軟件做壓力測試,它最初被設計用于 Web應用測試,但后來擴展到其他測試領域。 它可以用于測試靜態和動態資源,例如靜態文件、Java 小服務程序、CGI 腳本、Java 對象、數據庫、FTP 服務器, 等等。JMeter 可以用于對服務器、網絡或對象模擬巨大的負載,來自不同壓力類別下測試它們的強度和分析整體性能。另外,JMeter 能夠對應用程序做功能/回歸測試,通過創建帶有斷言的腳本來驗證你的程序返回了你期望的結果。為了***限度的靈活性, JMeter 允許使用正則表達式創建斷言。

Apache jmeter 可以用于對靜態的和動態的資源(文件,Servlet,Perl 腳本,java 對象,數據庫和查詢,FTP 服務器等等)的性能進行測試。它可以用于對服務器、網絡或對象模擬繁重的負載來測試它們的強度或分析不同壓力類型下的整體性能。你可以使用它做性能的圖形分析或在大并發負載測試你的服務器/腳本/對象。

1. Jmeter安裝

Jmerter 是基于 java的,所以安裝 Jmeter 之前必須先安裝 JDK 依賴,JDK 安裝的方法網上許多這里就不多介紹了(建議安裝8.0以上版本)。

安裝好 java 后到 Jmeter 官網下載對應系統的壓縮包解壓到本地任意位置就可以使用了,這里我建議下載3.0以上版本的 Jmeter,因為從3.0開始 Jmeter 可以直接生成可視化的 HTML 報告,不再需要安裝插件來生成。

2. Jmeter測試組件

(1)負載發生器:用于產生負載,通常以多線程或是多進程的方式模擬用戶行為。

(2)用戶運行器:通常是一個腳本運行引擎,用戶運行器附加在線程或進程上,根據腳本要求模擬指定的用戶行為。

(3)資源生成器:用于生成測試過程中服務器、負載機的資源數據。

(4)報表生成器:根據測試產生的數據生成報表,提供可視化的數據顯示方式。

Test Plan (測試計劃):用來描述一個性能測試,包含與本次性能測試所有相關的功能。也就說本次的性能測試的所有內容是于基于一個計劃的。

下面看一下一個計劃下面都有哪些主要的功能模塊(右鍵單擊“測試計劃”彈出菜單)。

二、Threads (Users)線程用戶

Threads (Users)線程 用戶

雖然有三個添加線程組的選項,名字不一樣, 創建之后,其界面是完全一樣的。之前的版本只有一個線程組的名字。現在多一個 setUp theread Group 與 terDown Thread Group。

  1. setup thread group 

可用于執行預測試操作,這種類型的線程執行測試前進行定期線程組的執行。

  1. teardown thread group. 

可用于執行測試后動作,這種類型的線程執行測試結束后執行定期的線程組。

  1. thread group(線程組). 

這個就是我們通常添加運行的線程。通俗的講一個線程組,,可以看做一個虛擬用戶組,線程組中的每個線程都可以理解為一個虛擬用戶。線程組中包含的線程數量在測試執行過程中是不會發生改變的。

1. 測試片段

測試片段

測試片段是在2.5版本之后新加的一個選項。

測試片段元素是控制器上的一個種特殊的線程組,它在測試樹上與線程組處于一個層級。它與線程組有所不同,因為它不被執行,除非它是一個模塊控制器或者是被控制器所引用時才會被執行。

三、組成

1. 控制器

JMeter 有兩種類型的控制器:取樣器(sample)和邏輯控制器(Logic Controller),用這些原件來驅動處理一個測試。

2. 取樣器(Sample)

取樣器(Sample)

取樣器(Sample)是性能測試中向服務器發送請求,記錄響應信息,記錄響應時間的最小單元,JMeter 原生支持多種不同的 sampler ,如 HTTP Request Sampler 、 FTP Request Sample 、TCP Request Sample 、JDBC Request Sampler 等,每一種不同類型的 sampler 可以根據設置的參數向服務器發出不同類型的請求。

3. 邏輯控制器(Logic Controller)

邏輯控制器(Logic Controller)

邏輯控制器,包括兩類元件,一類是用于控制 test plan 中 sampler 節點發送請求的邏輯順序的控制器,常用的有 如果(If)控制器 、switch Controller 、Runtime Controller、循環控制器等。另一類是用來組織可控制 sampler 來節點的,如 事務控制器、吞吐量控制器。

4. 配置元件(Config Element)

配置元件(Config Element)

配置元件(config element)用于提供對靜態數據配置的支持。CSV Data Set config 可以將本地數據文件形成數據池(Data Pool),而對應于 HTTP Request Sampler 和 TCP Request Sampler 等類型的配置原件則可以修改 Sampler 的默認數據。(例如,HTTP Cookie Manager 可以用于對 HTTP Request Sampler 的cookie 進行管理)

5. 定時器(Timer)

定時器(Timer)

定時器(Timer)用于操作之間設置等待時間,等待時間是性能測試中常用的控制客戶端 QPS 的手段。類似于 python 中的 sleep。JMeter 定義了 Bean Shell Timer、Constant Throughput Timer、固定定時器等不同類型的 Timer。

6. 前置處理器(Per Processors)

前置處理器(Per Processors)

用于在實際的請求發出之前對即將發出的請求進行特殊處理。例如,HTTP URL 重寫修飾符則可以實現URL重寫,當 RUL中有 sessionID 一類的 session 信息時,可以通過該處理器填充發出請求的實際的 sessionID 。

7. 后置處理器(Post Processors)

后置處理器(Post Processors)

用于對 Sampler 發出請求后得到的服務器響應進行處理。一般用來提取響應中的特定數據。例如,正則表達式提取器 則可以用于提取響應數據中通過匹配正則表達式獲得的數據。

8. 斷言(Assertions)

斷言(Assertions)

斷言用于檢查測試中得到的相應數據等是否符合預期,斷言一般用來設置檢查點,用以保證性能測試過程中的數據交互是否與預期一致。

9. 監聽器(Listener)

 監聽器(Listener)

監聽器可以用來對測試結果數據進行處理和可視化展示的一系列元件。 圖行結果、查看結果樹、聚合報告。都是我們經常用到的元件。

以上就是 Jmeter 的基本組成元件,我們用到的絕大部分測試計劃就是依靠以上元件完成。

接下來我就根據我們的項目測試實例來實際演示一下以上元件的用法,目前項目的測試需求主要是業務測試,如果需要壓力測試只需要把檢查數據正確性的步驟去掉,簡單的測試流程為向一個接口 get 請求將數據傳輸過去后,檢查日志和數據庫中是否有正確的數據。

這是我配置好后的測試計劃:

四、添加線程組

一個測試請求是基于一個線程組完成的。一個測試計劃必須有一個線程組。測試計劃添加線程組非常簡單。在測試計劃右鍵彈出下拉菜單(添加-->Threads(Users)--->線程組)中選擇線程組即可。

jmeter 中 每個測試計劃至少需要包含一個線程組,當然也可以在一個計劃中創建多個線程組,多個線程組在測試計劃下面是并行執行的,也就是說這些線程組是同時被初始化并同時執行線程組下的 Sampler。

線程組

線程組

線程組主要包含三個參數:線程數、準備時長(Ramp-Up Period(in seconds))、循環次數。

  • 線程數:虛擬用戶數。一個虛擬用戶占用一個進程或線程。設置多少虛擬用戶數在這里也就是設置多少個線程數。
  • 準備時長: 設置的虛擬用戶數需要多長時間全部啟動。如果線程數為20 ,準備時長為10 ,那么需要10秒鐘啟動20個線程。也就是每秒鐘啟動2個線程。
  • 循環次數:每個線程發送請求的次數。如果線程數為20 ,循環次數為100 ,那么每個線程發送100次請求。總請求數為20*100=2000 。如果勾選了“永遠”,那么所有線程會一直發送請求,一到選擇停止運行腳本。

在這里,因為是檢查數據正確性只需要運行一次,所以全部設置為1。

五、添加參數

添加參數常用讀取 CSV 文件將文件內容設置為變量,我比較喜歡的是添加Beanshell元件,編寫java腳本直接生成數據。

在線程組上右鍵菜單選擇添加--->配置元件--->CSV Data Set Config 就能添加 CSV文 件讀取。

添加參數

主要設置的參數有:

  • FileName: 填寫被讀取的 CSV 文件地址和文件名。
  • File Encoding: 默認為 ANSI。
  • Varible Names: 定義文本文件中的參數名,以逗號分隔例如 a,b,c,定義后可在腳本在以 Shell 變量的同樣的方式引用。
  • Delimiter: 定義分隔符,用于將變量分開,這里定義的某個分隔符,則在 Variable Names 用這里定義的分隔符,例如 a,b,c 那么分隔符就是“,”。
  • Recycle on EOF: 設置為 True 后,允許循環取值。
  • Stop Thread on EOF: 當 Recycle on EOF 為 false 并且 Stop Thread on EOF為true,則讀完 csv 文件中的記錄后,停止運行。
  • Sharing Mode: 設置是否線程共享。

添加 Beanshell 需要在線程組上右鍵菜單選擇添加--->Sampler--->Beanshell Sampler 就能添加 Beanshell 腳本文件讀取。

 Beanshell 腳本文件讀取

beanshell 十分強大,除了生成參數外也可以 import java 的包來完成許多復雜的邏輯,這里就不細說了。

參數設置后可以在后續的元件中以 $ {參數名}的形式調用。

六、添加HTTP請求

生成參數后在線程組上右鍵菜單(添加--->Sampler--->HTTP請求)選擇 HTTP 請求。對于 jmeter 來說,取樣器(Sampler)是與服務器進行交互的單元。一個取樣器通常進行三部分的工作:

  1. 向服務器發送請求
  2. 記錄服務器的響應數據
  3. 記錄相應時間信息

HTTP Sampler 中可以設置的參數很多,這里就說一下一些經常使用的:

  • 名稱:本屬性用于標識一個取樣器,建議使用一個有意義的名稱。
  • 注釋:對于測試沒有任何作用,僅用戶記錄用戶可讀的注釋信息。
  • 協議:向目標服務器發送 HTTP 請求時的協議,可以是 http 或者是 https ,默認值為 http 。
  • 服務器名稱或 IP :HTTP 請求發送的目標服務器名稱或IP地址。
  • 端口號:目標服務器的端口號,默認值為80 。
  • 方法:發送HTTP請求的方法,可用方法包括 GET、POST、HEAD、PUT、OPTIONS、TRACE、DELETE 等。
  • 路徑:目標 URL 路徑(不包括服務器地址和端口)。
  • Content encoding :內容的編碼方式,默認值為 iso8859。
  • 自動重定向:如果選中該選項,當發送 HTTP 請求后得到的響應是302/301時,JMeter 自動重定向到新的頁面。
  • 同請求一起發送參數 : 在請求中發送 URL 參數,對于帶參數的 URL ,jmeter 提供了一個簡單的對參數化的方法。用戶可以將 URL 中所有參數設置在本表中(如圖中 ${did}就是調用之前生成的參數),表中的每一行是一個參數值對(對應 RUL 中的 key1=value1)。

在這里添加好參數后就可以進入下一步,檢查數據。

七、添加數據庫連接與數據庫操作

要連接數據庫首先需要下載不同數據庫對應的 JDBC 驅動包,這里我使用的是 mysql,所以下載入 mysql-connector-java.jar,下載后將 jar 包放到Jmeter所在目錄的 lib 文件夾中就可以了。

然后選擇配置元件中的 JDBC Connection Configuration 添加數據庫連接配置。

大部分配置讀使用默認就可以,主要配置連接數據庫部分:

  • Variable Name: 變量名稱。需要唯一標識。與 JDBC 取樣器中的相對應,決定 JDBC 取樣的配置。簡單理解就是在 JDBC request 的時候確定去哪個綁定的配置。
  • MaxNumber of Connection: 數據庫***鏈接數
  • PoolTimeout: 數據庫鏈接超時,單位 ms
  • Idle Cleanup Interval (ms): 數據庫空閑清理的間隔時間,單位 ms
  • Transaction Isolation:
  • 事務間隔級別設置,主要有如下幾個選項:(對 JMX加解密) TRANSACTION_REPEATABLE_READ 事務重復讀、TRANSACTION_READ_COMMITTED 事務已提交讀 、TRANSACTION_SERIALIZABLE 事務序列化 、TRANSACTION_READ_UNCOMMITTED 事務未提交讀、TRANSACTION_NODE 事務節點 、DEFAULT 默認、編輯
  • Keep-Alive: 是否保持連接
  • Max Connection age (ms):***連接時長,超過時長的會被拒絕
  • Validation Query:驗證查詢,檢驗連接是否有效(數據庫重啟后之前的連接都失效,需要驗證查詢)
  • Database URL:如 jdbc:mysql://localhost:3306/test 表示本地數據庫,3306 端口,數據庫名稱為 test
  • JDBCDriver Class: JDBC 的類,如 com.mysql.jdbc.Driver ,不同數據庫使用把不同累,可以參考 Jmeter 的文檔。

配置好后就可以配置具體的數據庫操作。

選擇 Sampler 添加 JDBC Request。

  • Variable Name:數據庫連接元件名稱,填寫對應 JDBC Name,
  • Query Type:選擇對應的數據庫操作,路 select,update 等。
  • Query:具體的數據庫查詢語句,可以直接將參數寫道 SQL 語句中,也可以使用占位符:?,將參數寫到下方的 Parameter velaues 中,
  • Parameter Types: 參數類型
  • variable names: 返回結果的參數名,使用方法與讀取 csv 文件獲得的參數相同

獲取到數據庫查詢結果后就可以檢查數據正確性了。

八、數據檢查

需要檢查的是 JDBC request 回來的數據,所以斷言元件需要在數據庫操作的內層。斷言的種類有許多,這里就選擇最常用的響應斷言

右鍵 JDBC Request ,選擇添加---->斷言--->響應斷言。

數據檢查

數據檢查

斷言的設置是比較簡單的:

  • apply to:是應用范圍,設定匹配的范圍
  • Main sample and sub-samples: 匹配范圍為當前父取樣器,及子取樣器
  • Main sample only :僅當前父取樣器
  • Sub samples only: 僅子取樣器
  • JMeter Variable:變量值進行匹配,這里需要檢查的是 JDBC Request 返回的值所附的變量,所以選擇這一項,注意:變量名_x的形式意思是取數據返回結果的第x行。

要測試的響應文字:針對響應數據不同部分進行匹配

(1) 響應文本:響應服務器返回的文本內容,http 協議排除 header 部分

(2) 響應代碼:匹配響應代碼,比如 http 請求中‘200’代表成功

(3) 響應信息:匹配響應信息,處理成功返回‘成功’或者“ok”字樣

(4) Response Header: 匹配響應頭中的信息

匹配規則:

  • 包括:響應內容包括需要匹配的內容就算成功
  • 匹配:響應內容要完全匹配匹配內容,不區分大小寫
  • equals:完全相等,區分大小寫
  • substring:響應內容包括匹配內容即為成功。

可以通過添加斷言結果來查看斷言的執行情況。

如果接口響應數據可以與斷言匹配上,則測試用例通過,否則不通過。

查看通過結果就需要添加監聽器了(Listener)

九、添加監聽器

Jmeter 有許多種類型的監聽器,比如查看圖形結果、聚合報告等,因為這個測試是業務測試,所以這里就選擇查看結果樹,針對每個元件的運行結果進行查看。

選擇監聽器--->響應斷言

執行測試用例就可以看到測試結果了。

添加監聽器

查看結果樹,通過的測試通常為綠色。紅色則代表失敗了。可以查看到取樣器結果,請求,響應數據,或是把測試結果寫入到文件中。

測試計劃配置完成之后,可以選擇左上角的文件--->保存測試計劃為...,來將測試計劃保存到想要的地方。

以上就是 Jmeter 的大概使用方式與介紹。

我們經常需要 Jenkins 實現一鍵部署,但是有時候我們可能會因為失誤導致部署時的代碼不一定是可用的,這時候就可以使用 Jmeter 添加到 Jenkins 中,保證部署時的代碼是通過了測試用例的。

接下來介紹 Jmeter 與 Jenkins 搭配使用實現自動化測試部署。

十、使用

在添加 Jmeter 測試任務之前,Jenkins 需要首先安裝兩個插件,以方便我們對 Jmeter 的測試結果進行處理:

  • HTML Publisher plugin:可以讓我們方便的在 Jenkins 中直接打開 Jmeter 的結果進行查看。
  • Performance Plugin:可以將測試結果的 log 以圖表的形式整合到 Jenkins 中,還能根據測試結果的錯誤率與波動率修改 Jenkins 的 job 狀態。

安裝好插件以后就可以添加測試任務了,選擇新建--->構建一個自由風格的軟件項目。

接下來進入 Jenkins 配置頁面。

根據需要配置好相應的源碼管理,觸發器和環境后,添加構建,這里 Jmter 運行在 windows 中所以添加 windows shell,如果需要在 Linux 中構建可以選擇對應 Shell,使用的命令如下圖,該命令是跨平臺的,不管 win,unix 還是 mac 都可以使用。

Jenkins 配置

  • 命令格式為: -n -t <測試腳本文件路徑> -l <日志保存路徑> -e -o
  • -n 非 GUI 模式 -> 在非 GUI 模式下運行 JMeter
  • -t 測試文件 -> 要運行的 JMeter 測試腳本文件
  • -l 日志文件 -> 記錄結果的文件,文件必須不存在
  • -e 設置測試完成后生成測試報表
  • -o 指定報表生成文件夾,文件夾必須為空或者不存在
  • -r 分布式遠程執行 -> 指定遠程slave節點執行測試任務
  • -R 設置分布式服務器列表 -> 配置遠程服務器ip列表
  • -H 代理主機 -> 設置 JMeter 使用的代理主機
  • -P 代理端口 -> 設置 JMeter 使用的代理主機的端口號

接下來配置構建后操作:

選擇添加構建后操作,在列表中首先是選擇 Publish HTML Reports。

選擇增加。

HTML directory to archive 中指定 Jmeter 生成報告的相對路徑。

剩余配置一般默認就可以了。

接下來繼續添加構建后操作,選擇 Publish Performance test result report:

  • source data files:日志文件所在的相對路徑。
  • evaluation mode:選擇判斷模式,一般來說選擇 standard mode (標準模式), 標準模式中可以選擇 relative threshold(相對閥值)或者 error threshold (相對錯誤數),這里因為是只執行一次的業務測試,所以選擇 error threshold,并在下方配置1次測試失敗就將 job 狀態改為 failed。

如果是測試數量較多,且容忍一定的錯誤率可以選擇 relative threshold,根據錯誤的百分比來修改 job 狀態。

這里配置好以后就可以添加自己的后續部署任務了,再次選擇增加構建后操作,選擇 trigger parameterized build on other projects。

填寫測試結束后需要部署的項目,并選擇 job 狀態為什么時才會觸發這個構建。

以上就是一個完整的根據測試結果自動部署任務了,接下來我們保存,選擇立即構建。

十一、構建完成后的結果如圖

選擇 HTML report 可以查看 HTML 報告(如果使用新版本的 Jenkins,因為 Jenkins 的安全策略默認不加載 js,css 等文件,所以需要在 jenkins 設置中執行腳本命令行:

  1. System.setProperty("hudson.model.DirectoryBrowserSupport.CSP","sandbox; default-src 'self';") 

執行完畢后重新構建就可以正常打開 HTML 報告。*這個命令重啟后失效)

在 HTML 報告中可以看到測試結果的詳細信息。

首頁是測試結果的總覽,可以看到測試的錯誤率等,選擇左邊欄可以查看更詳細些的請求時間,吞吐率等信息。

配置一個自動化測試及部署任務就是這么簡單,希望能夠幫助到各位。

【本文是51CTO專欄機構“豈安科技”的原創文章,轉載請通過微信公眾號(bigsec)聯系原作者】

戳這里,看該作者更多好文

責任編輯:趙寧寧 來源: 51CTO專欄
相關推薦

2021-09-03 09:56:18

鴻蒙HarmonyOS應用

2021-11-15 08:32:21

JenkinsAndroid自動化

2021-09-07 09:00:00

開發測試工具

2015-10-09 13:14:10

clip自動化運維工具

2022-09-12 16:02:32

測試企業工具

2023-02-15 08:21:22

2010-09-27 09:13:36

Visual Stud

2017-12-24 21:00:10

自動化測試測試框架敏捷

2017-08-29 09:57:26

SaaS產品自動化

2011-08-16 15:36:47

iPhone應用測試

2024-03-20 13:19:53

2011-06-03 17:06:09

自動化測試

2023-02-07 08:11:15

2020-11-04 09:00:00

自動化測試回歸測試軟件測試

2023-04-06 07:09:25

自動化部署Actions

2022-02-17 10:37:16

自動化開發團隊預測

2012-02-27 17:34:12

Facebook自動化

2013-05-16 10:58:44

Android開發自動化測試

2014-04-16 14:15:01

QCon2014

2023-03-29 08:33:03

倉儲自動化系統
點贊
收藏

51CTO技術棧公眾號

国产一区二区三区欧美| 色999日韩国产欧美一区二区| 亚洲最大福利视频网| 香蕉视频一区二区| 国产精品中文字幕亚洲欧美| 欧美精品久久一区二区三区| 奇米影视亚洲色图| av男人的天堂在线| 不卡的电视剧免费网站有什么| 欧美孕妇性xx| 国产大片免费看| 亚洲品质自拍| 日韩欧美一区中文| 九热视频在线观看| 第一福利在线视频| 亚洲女人****多毛耸耸8| 久久天天狠狠| 亚洲av无码一区二区乱子伦| 日本最新不卡在线| 韩国三级日本三级少妇99| 夫妇露脸对白88av| 欧美女王vk| 精品国产乱码久久久久久久| 91亚洲精品久久久蜜桃借种| 伊人成综合网站| 一区二区视频在线看| 色狠狠久久av五月综合| 亚洲三级黄色片| 国产99一区视频免费| 国产自产女人91一区在线观看| 国产成人综合欧美精品久久| 亚洲欧美综合国产精品一区| 色婷婷**av毛片一区| 最新中文字幕视频| 欧美人妖视频| 亚洲国产天堂网精品网站| 中文字幕在线视频一区二区三区 | 欧美激情极品| 日韩精品在线一区二区| 午夜大片在线观看| 日韩电影免费观看高清完整版在线观看| 岛国av一区二区| 人妻少妇精品久久| www.综合网.com| 一级日本不卡的影视| 做爰高潮hd色即是空| h视频在线播放| 国产日产欧美一区二区视频| 欧美三级网色| 激情小视频在线| 久久久电影一区二区三区| 欧美精品一区二区三区在线四季 | 国产熟女一区二区丰满| 老司机午夜精品99久久| 国产精品亚洲激情| 亚洲视频一区在线播放| 青娱乐精品视频| 国产精品视频一区二区三区四| 精品久久久久久久久久久国产字幕 | 91丝袜呻吟高潮美腿白嫩在线观看| 国产成人亚洲欧美| 免费观看的毛片| www久久久久| 欧美在线播放一区| 日本三级视频在线观看| 亚洲人成人一区二区在线观看| 2025韩国大尺度电影| 99热国产在线中文| 亚洲国产综合色| 国产肥臀一区二区福利视频| 亚洲天堂一区二区| 欧美精品一级二级三级| 国产老头和老头xxxx×| 国产精品色在线网站| 亚洲精品乱码久久久久久金桔影视| www.色多多| 日韩欧美综合| 久久久久久久久国产| 国产精品久久久久久99| 男男视频亚洲欧美| 超碰97国产在线| 无码精品人妻一区二区三区影院| 国产婷婷色一区二区三区四区| 一区二区在线不卡| cao在线视频| 欧亚一区二区三区| 日韩av成人网| 久久99国产精品视频| xxxxx91麻豆| 黄色一级片免费看| 美女视频网站黄色亚洲| 国产精品免费一区二区三区在线观看| 你懂的在线网址| 亚洲免费在线播放| 日本成人在线免费视频| 久久在线观看| 亚洲最新视频在线| 久久成人在线观看| 久久精品国产久精国产| 久久99国产精品99久久| 久cao在线| 一本一道波多野结衣一区二区 | 成人动漫视频在线| 亚洲欧美久久234| 国产无遮挡裸体视频在线观看| 在线免费观看不卡av| 国产精品熟妇一区二区三区四区| 欧洲杯半决赛直播| 亚洲**2019国产| 国产乱淫片视频| 国产无一区二区| 久久综合九色综合88i| 高清一区二区| 中国china体内裑精亚洲片| 国产五月天婷婷| 国产一区二区三区综合| 天天久久人人| 麻豆网站免费在线观看| 日韩欧美专区在线| 男人天堂资源网| 丝袜国产日韩另类美女| 国产一区二区视频在线免费观看 | 69av在线视频| 国产suv精品一区二区69| 欧美韩国日本综合| 女性女同性aⅴ免费观女性恋| 1204国产成人精品视频| 久久精品国产一区二区电影| 久久这里只有精品9| 91在线你懂得| 国产 日韩 亚洲 欧美| 精品一区视频| 久久电影一区二区| 91丨九色丨丰满| 中文字幕精品一区二区三区精品| 18禁男女爽爽爽午夜网站免费| 三级欧美日韩| 欧美猛少妇色xxxxx| 亚洲自拍偷拍另类| 国产精品久久国产精麻豆99网站| 亚洲中文字幕无码不卡电影| 日韩在线你懂的| 97超级碰在线看视频免费在线看| 丰满熟女一区二区三区| 亚洲五码中文字幕| 久草免费资源站| 黄色一区二区三区四区| 国产视色精品亚洲一区二区| av资源在线| 日韩精品在线免费| 7799精品视频天天看| 久久美女艺术照精彩视频福利播放| 日本a级片免费观看| 亚洲精品国产setv| 国产精品久久久久9999| 91电影在线播放| 7777女厕盗摄久久久| 欧美日韩黄色网| 国产大陆精品国产| 亚洲国产成人精品无码区99| 婷婷精品在线观看| 日产精品99久久久久久| 福利视频在线看| 欧美群妇大交群中文字幕| 国产精品精品软件男同| 国产91精品精华液一区二区三区| 黄色一级在线视频| 国产精品羞羞答答在线观看| 国产精品人人做人人爽| 久久99精品久久久久久野外| 欧美大片顶级少妇| 国产成人愉拍精品久久| 欧美国产激情一区二区三区蜜月| 三级黄色片播放| 欧美精品福利| 精品一区二区三区自拍图片区| 欧美电影网站| 久久久精品国产网站| 欧美自拍第一页| 色香蕉成人二区免费| 亚洲天堂网av在线| 暴力调教一区二区三区| 欧美日韩第二页| 久久久久国产| 麻豆精品传媒视频| 97久久中文字幕| 91成人免费观看网站| 午夜小视频在线| 亚洲国产精品女人久久久| 极品国产91在线网站| 亚洲人成网站色在线观看| 亚洲AV无码国产精品| 精品午夜久久福利影院| 国产精品999视频| 91中文字幕精品永久在线| 国产午夜精品一区| 亚洲精品三区| 日韩av免费在线看| 性欧美videos高清hd4k| 国产亚洲欧美一区| 丰满人妻一区二区三区免费| 在线观看不卡视频| 久久精品人妻一区二区三区| 国产精品美女久久久久av爽李琼| 国产真实乱人偷精品| 黄色日韩网站视频| 日韩精品无码一区二区三区免费| 国产综合视频| 亚洲欧美日韩精品在线| 亚洲色图丝袜| 国产aⅴ精品一区二区三区黄| 国产成人毛片| 日韩av手机在线| www.综合| 色在人av网站天堂精品| 午夜视频在线看| 一区二区三区美女xx视频| 欧美视频一二区| 日韩一级黄色大片| 在线视频 中文字幕| 色婷婷精品大视频在线蜜桃视频| 久久久久久久久艹| 亚洲男女毛片无遮挡| 手机av在线看| 亚洲欧洲成人精品av97| a级在线免费观看| 91亚洲永久精品| 亚洲熟女一区二区| 粉嫩av亚洲一区二区图片| 午夜免费福利网站| 久88久久88久久久| 日韩av.com| 精品一区二区三区日韩| 香港日本韩国三级网站| 日韩福利视频网| 国产精品乱码久久久久| 久久亚洲二区| 苍井空浴缸大战猛男120分钟| 国产乱码精品| 日本在线视频www| 久久青草久久| 欧美亚洲日本在线观看| 日韩和欧美一区二区| 乱子伦视频在线看| 日产国产高清一区二区三区 | 香蕉成人影院| 国产精品久久久| 免费一区二区三区四区| 国产主播欧美精品| 国产日韩欧美中文在线| 99re视频| 国产精品1luya在线播放| 俄罗斯精品一区二区| 你懂的在线观看一区二区| 精品无人乱码一区二区三区的优势| 牛牛精品成人免费视频| 日产精品一线二线三线芒果| 欧美日韩国产传媒| 亚洲一区二区在线看| 欧美大片一区| 亚洲人成无码网站久久99热国产| 中文欧美日韩| 尤蜜粉嫩av国产一区二区三区| 日产欧产美韩系列久久99| 国产精品v日韩精品v在线观看| 国产中文一区二区三区| 在线观看亚洲免费视频| 久久久久高清精品| 日本高清不卡免费| 五月天一区二区三区| 蜜臀尤物一区二区三区直播| 欧美精品九九99久久| 国产成人自拍一区| 国产视频久久网| 国产一二区在线| 97精品国产97久久久久久| 欧美xxxx做受欧美护士| 97视频中文字幕| 网曝91综合精品门事件在线| 亚洲图片欧洲图片日韩av| 欧美日韩三级电影在线| 日本wwww视频| 国产综合色精品一区二区三区| 69亚洲乱人伦| 国产欧美1区2区3区| 激情视频在线播放| 在线国产电影不卡| 亚洲av无码国产精品久久不卡| 亚洲欧美成人网| 91cn在线观看| 国产精品吹潮在线观看| 成人激情自拍| 亚洲精品一区二区毛豆| 亚洲伦理精品| 中国黄色片一级| 91麻豆国产精品久久| 日韩高清dvd碟片| 91黄视频在线观看| 农村少妇久久久久久久| 久久国产一区二区三区| 三妻四妾完整版在线观看电视剧 | 天天综合久久综合| 精品剧情在线观看| 日本在线看片免费人成视1000| …久久精品99久久香蕉国产| 亚洲精品三区| 日韩av大全| 9国产精品视频| 亚洲国产综合av| 中文无字幕一区二区三区| 久久午夜免费视频| 日韩欧美国产午夜精品| 精品视频在线一区二区| 国产精品电影网| 欧美猛男男男激情videos| av女优在线播放| 国产精品一区二区91| eeuss中文字幕| 日本高清成人免费播放| 无码国产精品一区二区色情男同| 欧美日韩高清区| 国产精品成人3p一区二区三区| 少妇特黄a一区二区三区| 久久激情久久| 丰满大乳奶做爰ⅹxx视频| 亚洲午夜久久久| 亚洲va久久久噜噜噜无码久久| 久久中文字幕视频| 欧美爱爱视频| 夜夜爽99久久国产综合精品女不卡| 久久一区激情| www.av欧美| 91黄色小视频| 岛国在线大片| 国产精品久久久久久久久久久新郎| 欧美日韩麻豆| 欧美丰满熟妇bbbbbb百度| 91丨porny丨国产| 九九九在线观看| 亚洲人成电影网站| 免费成人美女女| 日韩精品一区二区三区丰满| 日韩精品亚洲一区二区三区免费| 美女爆乳18禁www久久久久久| 精品人伦一区二区三区蜜桃网站| 五月天激情婷婷| 97国产精品视频| 免费看av成人| 成年人免费大片| 中文字幕精品三区| 亚洲天堂视频网| 久久中文字幕在线视频| 免费欧美网站| 日韩欧美不卡在线| 99久久国产综合精品色伊| 国产成人精品一区二三区| 日韩精品亚洲元码| 日本综合久久| 一区二区精品国产| 国产传媒一区在线| 日本韩国欧美中文字幕| 在线精品高清中文字幕| 国产精品一级在线观看| avav在线播放| 久久久久久日产精品| 在线观看色网站| 欧美精品一二区| 久久午夜影院| 天天操天天摸天天爽| 亚洲日本成人在线观看| 少妇av一区二区| 国产精品18久久久久久首页狼| 久久精品免费一区二区三区| 高清中文字幕mv的电影| 在线观看中文字幕不卡| 18视频在线观看| 精品乱码一区| 精品一二三四在线| 日本一级一片免费视频| 一区二区三区高清国产| 天堂va在线高清一区| 亚洲人成色77777| 自拍偷拍亚洲激情| 无码精品视频一区二区三区| 成人黄色av免费在线观看| 亚洲国产精品一区| 懂色av粉嫩av蜜臀av一区二区三区| 精品日产卡一卡二卡麻豆| 婷婷六月国产精品久久不卡| 中文字幕乱码免费| 久久久久久久电影| 亚洲欧美高清视频| 国产精品久久久久久av下载红粉| 国产综合亚洲精品一区二| x88av在线| 亚洲国产小视频在线观看| 91成人精品观看| 动漫av免费观看| 亚洲成av人影院在线观看网| 日本www在线观看|