<meter id="parjj"></meter>
          1. <blockquote id="parjj"></blockquote>

            <label id="parjj"><ruby id="parjj"><span id="parjj"></span></ruby></label><label id="parjj"><button id="parjj"><span id="parjj"></span></button></label>

            jenkins+jmeter+ant自动化接口测试集成

            搭建环境(JDK、Ant、Jmeter、Jenkin最近版本):

            JDK:jdk1.8.0_60

            Ant:apache-ant-1.10.2

            Jmeter: apache-jmeter-3.0

            Jenkins:Jenkins 2.88

            1、JDK的安装

            双击JDK安装包,选择安装路径C:\Progrom Files\Java\jdk1.8.0_60路径下);

             


            1)系统变量→新建 JAVA_HOME 变量 。

            变量值填写jdk的安装目录(本人是 C:\Progrom Files\Java\jdk1.8.0_60);

             

            2)系统变量→寻找 Path 变量→编辑

            在变量值最后输入 %JAVA_HOME%\bin;%JAVA_HOME%\jre\bin;

            (注意原来Path的变量值末尾有没有;号,如果没有,先输入;号再输入上面的代码)

             

            3)系统变量→新建 CLASSPATH 变量

            变量值填写 .;%JAVA_HOME%\lib;%JAVA_HOME%\lib\tools.jar (注意最前面有一点)

            系统变量配置完毕

            4)检验是否配置成功 运行cmd 输入 java -version (java 和 -version 之间有空格)

             

            2、jmeter安装

            1)解压apache-jmeter-3.0.zip到D:\Progrom Files目录下。

             

            2)将以下两个文件夹下的插件拷贝到D:\Progrom Files\apache-jmeter-3.0\lib\ext目录下

             

             

            3)环境变量配置


            a、 设置环境变量,新建系统变量在变量名中输入:JMETER_HOME,变量值中输入:D:\Progrom Files\apache-jmeter-3.0,点击确定即可。

            b、在环境变量CLASSSPATH中添加%JMETER_HOME%\lib\ext\ApacheJMeter_core.jar;%JMETER_HOME%\lib\jorphan.jar;

            %JMETER_HOME%\lib\logkit-2.0.jar;(注意:你要看下你的是不是logkit-2.0这个版本).

            c、 检验是否配置成功 运行cmd 输入 jmeter -v (jmeter和 -v 之间有空格)

            若如图所示 显示版本信息 则说明安装和配置成功。

             

            3、安装ant

            1)解压apache-ant-1.10.2.zip到D:\Progrom Files目录下;

             

            2)配置环境变量

            a、新建以下环境变量

            ANT_HOME:D:\Progrom Files\apache-ant-1.9.7,此为你的ANT安装路径;

            b、在环境变量PATH的最后面添加一下内容:

            ;%ANT_HOME%\bin 注意前面的分号,如果PATH中最后没有分号";"的话要加上,有的话就可去除。

            c、进入cmd命令窗口,在CMD窗口中输入ant -version,敲击回城键,会显示出你安装的ANT版本,如果成功显示,说明你的配置应该是成功了。

             

            3)本地调试使用ant构建运行Jmeter,并且生成jtl、Html报告;


            jmeter默认保存的是.csv格式的文件,所以我们先要设置一下bin/jmeter.properties文件内容,修改jmeter.properties文件 jmeter.save.saveservice.output_format=xml;
            将apache-jmeter-3.0\extras\ant-jmeter-1.1.1.jar拷贝到apache-ant-1.10.2\lib目录下;
            配置D:\Program Files\apache-jmeter-3.0\extras目录下build.xml文件
            build文件配置

            <?xml version="1.0" encoding="UTF-8"?>
            <project name="ant-jmeter-test" default="run" basedir=".">
            <taskdef resource="net/sf/antcontrib/antlib.xml" />
            <!-- (1)需要改成自己本地的 Jmeter 目录-->
            <property name="jmeter.home" value="D:\Program Files\apache-jmeter-3.0"/>
            <property name="report.title" value="report"/>
            <!-- (2)jmeter生成jtl格式的结果报告的路径-->
            <property name="jmeter.result.jtl.dir" value="D:\Program Files\apache-jmeter-3.0\reports\jtl"/>
            <!-- (3)jmeter生成html格式的结果报告的路径-->
            <property name="jmeter.result.html.dir" value="D:\Program Files\apache-jmeter-3.0\reports\html"/>
            <!-- 生成的报告的前缀 -->
            <property name="ReportName" value="TestReport"/>
            <property name="jmeter.result.jtlName" value="${jmeter.result.jtl.dir}/${ReportName}.jtl"/>
            <property name="jmeter.result.htmlName" value="${jmeter.result.html.dir}/${ReportName}.html"/>
            
            <target name="run"> 
            <antcall target="test"/> 
            <antcall target="report"/> 
            <!--antcall target="mail"/--> 
            </target>
            <target name="test"> 
            <taskdef name="jmeter" classname="org.programmerplanet.ant.taskdefs.jmeter.JMeterTask"/> 
            <jmeter jmeterhome="${jmeter.home}" resultlog="${jmeter.result.jtlName}"> 
            <!-- (4)build.xml的存放的路径-->
            <testplans dir="D:\Program Files\apache-jmeter-3.0\demo" includes="*.jmx"/> 
            <property name="jmeter.save.saveservice.output_format" value="xml"/> 
            </jmeter> 
            </target>
            <path id="xslt.classpath"> 
            <fileset dir="${jmeter.home}/lib" includes="xalan*.jar"/> 
            <fileset dir="${jmeter.home}/lib" includes="serializer*.jar"/> 
            </path>
            <target name="report"> 
            <tstamp> 
            <format property="report.datestamp" pattern="yyyy/MM/dd HH:mm"/>
            </tstamp> 
            <xslt 
            classpathref="xslt.classpath" 
            force="true" 
            in="${jmeter.result.jtlName}"
            out="${jmeter.result.htmlName}"
            style="${jmeter.home}/extras/jmeter-results-detail-report.xsl"> 
            <param name="dateReport" expression="${report.datestamp}"/> 
            </xslt> 
            
            <copy todir="${jmeter.result.html.dir}"> 
            <fileset dir="${jmeter.home}/extras"> 
            <include name="collapse.png"/> 
            <include name="expand.png"/> 
            </fileset> 
            </copy> 
            </target>
            <path id="lib_classpath">
            <fileset dir="${basedir}/">
            <include name="mail*.jar" />
            <include name="activation*.jar" />
            <include name="commons-email*.jar" />
            <include name="ant-contrib*.jar" />
            </fileset>
            </path>
            <!--target name="mail">
            <for list="[email protected]" param="tmp" >
            <sequential>
            <echo>message @{tmp}</echo> 
            <mail mailhost="smtp.thunisoft.com" mailport="25" ssl="false" subject="ant mail" messagemimetype="text/html" user="zhangjn" password="*******" tolist="@{tmp}">
            <from address="[email protected]" />
            <fileset dir="${jmeter.result.html.dir}">
            <include name="*.html" />
            <include name="*.png" />
            </fileset>
            <message>支持多人同时发邮件!!<br /><br /></message>
            </mail>
            </sequential>
            </for>
            </target-->
            </project>
            

              

            备注:注释中的(1)(2)(3)(4)该成自己的路径;jmeter-results-detail-report.xsl这个配置值在你的

            ${jmeter.home}/extras目录下是不是这个名称,配置改成你对应的名称就可以了;把build.xml文件放到(4)中配置的这个路径中
            D:\Program Files\apache-jmeter-3.0\demo,并把要执行的脚本也放到同一目录下,如图:


            5、cmd到demo的目录下执行ant命令,如图:

             

            以上说明执行成功了,到你配置的报告目录下去看生成的报告D:\Program Files\apache-jmeter-3.0\reports\html

             

            备注:如果生成的报告为空的,可能是你的jmeter-results-detail-report.xsl配置有问题可以参考一下配置:
            
            <?xml version="1.0"?>
            <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
            
            <!--
            Licensed to the Apache Software Foundation (ASF) under one or more
            contributor license agreements. See the NOTICE file distributed with
            this work for additional information regarding copyright ownership.
            The ASF licenses this file to You under the Apache License, Version 2.0
            (the "License"); you may not use this file except in compliance with
            the License. You may obtain a copy of the License at
            
            http://www.apache.org/licenses/LICENSE-2.0
            
            Unless required by applicable law or agreed to in writing, software
            distributed under the License is distributed on an "AS IS" BASIS,
            WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
            See the License for the specific language governing permissions and
            limitations under the License.
            -->
            
            <!-- 
            Stylesheet for processing 2.1 output format test result files 
            To uses this directly in a browser, add the following to the JTL file as line 2:
            <?xml-stylesheet type="text/xsl" href="../extras/jmeter-results-detail-report_21.xsl"?>
            and you can then view the JTL in a browser
            -->
            
            <xsl:output method="html" indent="yes" encoding="UTF-8" doctype-public="-//W3C//DTD HTML 4.01 Transitional//EN" />
            
            <!-- Defined parameters (overrideable) -->
            <xsl:param name="showData" select="‘n‘"/>
            <xsl:param name="titleReport" select="‘Load Test Results‘"/>
            <xsl:param name="dateReport" select="‘date not defined‘"/>
            
            <xsl:template match="testResults">
            <html>
            <head>
            <title><xsl:value-of select="$titleReport" /></title>
            <style type="text/css">
            body {
            font:normal 68% verdana,arial,helvetica;
            color:#000000;
            }
            table tr td, table tr th {
            font-size: 68%;
            }
            table.details tr th{
            color: #ffffff;
            font-weight: bold;
            text-align:center;
            background:#2674a6;
            white-space: nowrap;
            }
            table.details tr td{
            background:#eeeee0;
            white-space: nowrap;
            }
            h1 {
            margin: 0px 0px 5px; font: 165% verdana,arial,helvetica
            }
            h2 {
            margin-top: 1em; margin-bottom: 0.5em; font: bold 125% verdana,arial,helvetica
            }
            h3 {
            margin-bottom: 0.5em; font: bold 115% verdana,arial,helvetica
            }
            .Failure {
            font-weight:bold; color:red;
            }
            
            
            img
            {
            border-width: 0px;
            }
            
            .expand_link
            {
            position=absolute;
            right: 0px;
            width: 27px;
            top: 1px;
            height: 27px;
            }
            
            .page_details
            {
            display: none;
            }
            
            .page_details_expanded
            {
            display: block;
            display/* hide this definition from IE5/6 */: table-row;
            }
            
            
            </style>
            <script language="JavaScript"><![CDATA[
            function expand(details_id)
            {
            
            document.getElementById(details_id).className = "page_details_expanded";
            }
            
            function collapse(details_id)
            {
            
            document.getElementById(details_id).className = "page_details";
            }
            
            function change(details_id)
            {
            if(document.getElementById(details_id+"_image").src.match("expand"))
            {
            document.getElementById(details_id+"_image").src = "collapse.png";
            expand(details_id);
            }
            else
            {
            document.getElementById(details_id+"_image").src = "expand.png";
            collapse(details_id);
            } 
            }
            ]]></script>
            </head>
            <body>
            
            <xsl:call-template name="pageHeader" />
            
            <xsl:call-template name="summary" />
            <hr size="1" width="95%" align="center" />
            
            <xsl:call-template name="pagelist" />
            <hr size="1" width="95%" align="center" />
            
            <xsl:call-template name="detail" />
            
            </body>
            </html>
            </xsl:template>
            
            <xsl:template name="pageHeader">
            <h1><xsl:value-of select="$titleReport" /></h1>
            <table width="100%">
            <tr>
            <td align="left">Date report: <xsl:value-of select="$dateReport" /></td>
            <td align="right">Designed for use with <a >JMeter</a> and <a >Ant</a>.</td>
            </tr>
            </table>
            <hr size="1" />
            </xsl:template>
            
            <xsl:template name="summary">
            <h2>Summary</h2>
            <table align="center" class="details" border="0" cellpadding="5" cellspacing="2" width="95%">
            <tr valign="top">
            <th># Samples</th>
            <th>Failures</th>
            <th>Success Rate</th>
            <th>Average Time</th>
            <th>Min Time</th>
            <th>Max Time</th>
            </tr>
            <tr valign="top">
            <xsl:variable name="allCount" select="count(/testResults/*)" />
            <xsl:variable name="allFailureCount" select="count(/testResults/*[attribute::s=‘false‘])" />
            <xsl:variable name="allSuccessCount" select="count(/testResults/*[attribute::s=‘true‘])" />
            <xsl:variable name="allSuccessPercent" select="$allSuccessCount div $allCount" />
            <xsl:variable name="allTotalTime" select="sum(/testResults/*/@t)" />
            <xsl:variable name="allAverageTime" select="$allTotalTime div $allCount" />
            <xsl:variable name="allMinTime">
            <xsl:call-template name="min">
            <xsl:with-param name="nodes" select="/testResults/*/@t" />
            </xsl:call-template>
            </xsl:variable>
            <xsl:variable name="allMaxTime">
            <xsl:call-template name="max">
            <xsl:with-param name="nodes" select="/testResults/*/@t" />
            </xsl:call-template>
            </xsl:variable>
            <xsl:attribute name="class">
            <xsl:choose>
            <xsl:when test="$allFailureCount > 0">Failure</xsl:when>
            </xsl:choose>
            </xsl:attribute>
            <td align="center">
            <xsl:value-of select="$allCount" />
            </td>
            <td align="center">
            <xsl:value-of select="$allFailureCount" />
            </td>
            <td align="center">
            <xsl:call-template name="display-percent">
            <xsl:with-param name="value" select="$allSuccessPercent" />
            </xsl:call-template>
            </td>
            <td align="center">
            <xsl:call-template name="display-time">
            <xsl:with-param name="value" select="$allAverageTime" />
            </xsl:call-template>
            </td>
            <td align="center">
            <xsl:call-template name="display-time">
            <xsl:with-param name="value" select="$allMinTime" />
            </xsl:call-template>
            </td>
            <td align="center">
            <xsl:call-template name="display-time">
            <xsl:with-param name="value" select="$allMaxTime" />
            </xsl:call-template>
            </td>
            </tr>
            </table>
            </xsl:template>
            
            <xsl:template name="pagelist">
            <h2>Pages</h2>
            <table align="center" class="details" border="0" cellpadding="5" cellspacing="2" width="95%">
            <tr valign="top">
            <th>URL</th>
            <th># Samples</th>
            <th>Failures</th>
            <th>Success Rate</th>
            <th>Average Time</th>
            <th>Min Time</th>
            <th>Max Time</th>
            <th></th>
            </tr>
            <xsl:for-each select="/testResults/*[not(@lb = preceding::*/@lb)]">
            <xsl:variable name="label" select="@lb" />
            <xsl:variable name="count" select="count(../*[@lb = current()/@lb])" />
            <xsl:variable name="failureCount" select="count(../*[@lb = current()/@lb][attribute::s=‘false‘])" />
            <xsl:variable name="successCount" select="count(../*[@lb = current()/@lb][attribute::s=‘true‘])" />
            <xsl:variable name="successPercent" select="$successCount div $count" />
            <xsl:variable name="totalTime" select="sum(../*[@lb = current()/@lb]/@t)" />
            <xsl:variable name="averageTime" select="$totalTime div $count" />
            <xsl:variable name="minTime">
            <xsl:call-template name="min">
            <xsl:with-param name="nodes" select="../*[@lb = current()/@lb]/@t" />
            </xsl:call-template>
            </xsl:variable>
            <xsl:variable name="maxTime">
            <xsl:call-template name="max">
            <xsl:with-param name="nodes" select="../*[@lb = current()/@lb]/@t" />
            </xsl:call-template>
            </xsl:variable>
            <tr valign="top">
            <xsl:attribute name="class">
            <xsl:choose>
            <xsl:when test="$failureCount > 0">Failure</xsl:when>
            </xsl:choose>
            </xsl:attribute>
            <td>
            <xsl:if test="$failureCount > 0">
            <a><xsl:attribute name="href">#<xsl:value-of select="$label" /></xsl:attribute>
            <xsl:value-of select="$label" />
            </a>
            </xsl:if>
            <xsl:if test="0 >= $failureCount">
            <xsl:value-of select="$label" />
            </xsl:if>
            </td>
            <td align="center">
            <xsl:value-of select="$count" />
            </td>
            <td align="center">
            <xsl:value-of select="$failureCount" />
            </td>
            <td align="right">
            <xsl:call-template name="display-percent">
            <xsl:with-param name="value" select="$successPercent" />
            </xsl:call-template>
            </td>
            <td align="right">
            <xsl:call-template name="display-time">
            <xsl:with-param name="value" select="$averageTime" />
            </xsl:call-template>
            </td>
            <td align="right">
            <xsl:call-template name="display-time">
            <xsl:with-param name="value" select="$minTime" />
            </xsl:call-template>
            </td>
            <td align="right">
            <xsl:call-template name="display-time">
            <xsl:with-param name="value" select="$maxTime" />
            </xsl:call-template>
            </td>
            <td align="center">
            <a href="">
            <xsl:attribute name="href"><xsl:text/>javascript:change(‘page_details_<xsl:value-of select="position()" />‘)</xsl:attribute>
            <img src="expand.png" alt="expand/collapse"><xsl:attribute name="id"><xsl:text/>page_details_<xsl:value-of select="position()" />_image</xsl:attribute></img> 
            </a>
            </td>
            </tr>
            
            <tr class="page_details">
            <xsl:attribute name="id"><xsl:text/>page_details_<xsl:value-of select="position()" /></xsl:attribute>
            <td colspan="8" bgcolor="#FF0000">
            <div align="center">
            <b>Details for Page "<xsl:value-of select="$label" />"</b>
            <table bordercolor="#000000" bgcolor="#2674A6" border="0" cellpadding="1" cellspacing="1" width="95%">
            <tr>
            <th>Thread</th>
            <th>Iteration</th>
            <th>Time (milliseconds)</th>
            <th>Bytes</th>
            <th>Success</th>
            </tr>
            
            <xsl:for-each select="../*[@lb = $label and @tn != $label]"> 
            <tr>
            <td><xsl:value-of select="@tn" /></td>
            <td align="center"><xsl:value-of select="position()" /></td>
            <td align="right"><xsl:value-of select="@t" /></td>
            <!-- TODO allow for missing bytes field -->
            <td align="right"><xsl:value-of select="@by" /></td>
            <td align="center"><xsl:value-of select="@s" /></td>
            </tr>
            </xsl:for-each>
            
            </table>
            </div>
            </td>
            </tr>
            
            </xsl:for-each>
            </table>
            </xsl:template>
            
            <xsl:template name="detail">
            <xsl:variable name="allFailureCount" select="count(/testResults/*[attribute::s=‘false‘])" />
            
            <xsl:if test="$allFailureCount > 0">
            <h2>Failure Detail</h2>
            
            <xsl:for-each select="/testResults/*[not(@lb = preceding::*/@lb)]">
            
            <xsl:variable name="failureCount" select="count(../*[@lb = current()/@lb][attribute::s=‘false‘])" />
            
            <xsl:if test="$failureCount > 0">
            <h3><xsl:value-of select="@lb" /><a><xsl:attribute name="name"><xsl:value-of select="@lb" /></xsl:attribute></a></h3>
            
            <table align="center" class="details" border="0" cellpadding="5" cellspacing="2" width="95%">
            <tr valign="top">
            <th>Response</th>
            <th>Failure Message</th>
            <xsl:if test="$showData = ‘y‘">
            <th>Response Data</th>
            </xsl:if>
            </tr>
            
            <xsl:for-each select="/testResults/*[@lb = current()/@lb][attribute::s=‘false‘]">
            <tr>
            <td><xsl:value-of select="@rc | @rs" /> - <xsl:value-of select="@rm" /></td>
            <td><xsl:value-of select="assertionResult/failureMessage" /></td>
            <xsl:if test="$showData = ‘y‘">
            <td><xsl:value-of select="./binary" /></td>
            </xsl:if>
            </tr>
            </xsl:for-each>
            
            </table>
            </xsl:if>
            
            </xsl:for-each>
            </xsl:if>
            </xsl:template>
            
            <xsl:template name="min">
            <xsl:param name="nodes" select="/.." />
            <xsl:choose>
            <xsl:when test="not($nodes)">NaN</xsl:when>
            <xsl:otherwise>
            <xsl:for-each select="$nodes">
            <xsl:sort data-type="number" />
            <xsl:if test="position() = 1">
            <xsl:value-of select="number(.)" />
            </xsl:if>
            </xsl:for-each>
            </xsl:otherwise>
            </xsl:choose>
            </xsl:template>
            
            <xsl:template name="max">
            <xsl:param name="nodes" select="/.." />
            <xsl:choose>
            <xsl:when test="not($nodes)">NaN</xsl:when>
            <xsl:otherwise>
            <xsl:for-each select="$nodes">
            <xsl:sort data-type="number" order="descending" />
            <xsl:if test="position() = 1">
            <xsl:value-of select="number(.)" />
            </xsl:if>
            </xsl:for-each>
            </xsl:otherwise>
            </xsl:choose>
            </xsl:template>
            
            <xsl:template name="display-percent">
            <xsl:param name="value" />
            <xsl:value-of select="format-number($value,‘0.00%‘)" />
            </xsl:template>
            
            <xsl:template name="display-time">
            <xsl:param name="value" />
            <xsl:value-of select="format-number($value,‘0 ms‘)" />
            </xsl:template>
            
            </xsl:stylesheet>

             

             

            4、jenkins安装

            1)之前本地已经安装过jenkins了,这里就不在讲如何安装jenkins。

            2)jenkins构建项目

            a、输入任务名称,点击构建一个自由风格的软件项目,点击确定

             

            b、在构建中添加Invoke Ant

             

             

             

            c、在点击高级

             

            配置你在build.xml文件中配置的build.xml的路径,点击保存

            d、点击立即构建,出现蓝色说明执行成功了,如图:

             

            备注:到你在build.xml中配置的报告路径去找执行后的报告就可以了。————————————————版权声明:本文为CSDN博主「qq_30684681」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。原文链接:https://blog.csdn.net/qq_30684681/article/details/79577372

            相关文章
            相关标签/搜索
            每日一句
              每一个你不满意的现在,都有一个你没有努力的曾经。
            公众号推荐
               一个历史类的公众号,欢迎关注
            一两拨千金
            王中王鉄算盘开奖结果118 哈巴河县| 元谋县| 安宁市| 车致| 军事| 安远县| 三亚市| 合江县| 庆城县| 梅州市| 扬中市| 陕西省| 建德市| 深圳市| 惠水县| 根河市| 建平县| 胶州市| 塔河县| 宁城县| 平凉市| 江津市| 湖口县| 台中市| 沙洋县| 磐石市| 罗山县| 班戈县| 澜沧| 上蔡县| 德格县| 遂川县| 乡宁县| 武山县| 嘉兴市| 敖汉旗| 博白县| 勃利县| 鹤峰县| 北辰区| 偃师市| 犍为县| 区。| 永新县| 洪洞县| 伊吾县| 舟曲县| 横山县| 临漳县| 华池县| 武隆县| 瓦房店市| 安阳县| 柳河县| 吉安县| 五峰| 龙海市| 济宁市| 资溪县| 绍兴市| 侯马市| 保康县| 通城县| 大同县| 湟中县| 从江县| 石林| 志丹县| 五台县| 连云港市| 陕西省| 香港| 东乡族自治县| 黑山县| 维西| 望奎县| 鄯善县| 三门峡市| 南安市| 贵州省| 晋城| 若羌县| 清水河县| 香港| 五莲县| 迭部县| 舒城县| 张家界市| 岚皋县| 乃东县| 南召县| 调兵山市| 临西县| 青铜峡市| 平利县| 万安县| 阳曲县| 卢湾区| 平度市| 延津县| 雅安市| 柳江县| 海原县| 乐山市| 如东县| 塘沽区| 县级市| 宁南县| 佳木斯市| 山西省| 毕节市| 内丘县| 铜陵市| 老河口市| 民丰县| 克东县| 湖州市| 扶余县| 奉化市| 台中县| 通山县| 集安市| 获嘉县| 印江| 石泉县| 乌海市| 尤溪县| 马山县| 康马县| 青浦区| 郑州市| 南安市| 汽车| 上饶县| 青浦区| 临夏县| 南丰县| 青铜峡市| 同心县| 班戈县| 根河市| 富裕县| 通山县| 邵东县| 都昌县| 乐安县| 调兵山市| 天门市| 即墨市| 赣州市| 宣化县| 荔浦县| 成安县| 嵊州市| 郯城县| 呼图壁县| 宜昌市| 图木舒克市| 洪湖市| 保康县| 塔城市| 朝阳区| 建宁县| 满洲里市| 南昌县| 平定县| 遵义县| 教育| 志丹县| 抚远县| 上饶县| 临邑县| 泰宁县| 太康县| 聊城市| 樟树市| 韶关市| 小金县| 牙克石市| 长顺县| 云和县| 黎平县| 准格尔旗| 德阳市| 马边| 涿州市| 南乐县| 莫力| 封丘县| 汨罗市| 双峰县| 固安县| 韩城市| 上思县| 伊金霍洛旗| 峡江县| 灵石县| 兖州市| 南宫市| 谢通门县| 呼伦贝尔市| 汉沽区| 正阳县| 建始县| 渝中区| 会泽县| 京山县| 霞浦县| 铁力市| 武乡县| 彰化市| 淮滨县| 洛宁县| 循化| 武宁县| 巴彦县| 锦屏县| 久治县| 基隆市| 明水县| 介休市| 读书| 阜宁县| 和硕县| 平昌县| 同江市| 镇原县| 肥西县| 台东县| 盱眙县| 贵阳市| 蒙城县| 大悟县| 祁阳县| 鄂州市| 富裕县| 额济纳旗| 京山县| 南宁市| 泗水县| 锡林郭勒盟| 阜新| 钦州市| 灵台县| 中超| 宜宾市| 肃北| 天祝| 泰和县| 江西省| 安庆市| 黄浦区| 芷江| 西乌珠穆沁旗| 花莲县| 郯城县| 论坛| 大港区| 金山区| 广元市| 鹤庆县| 昂仁县| 泸定县| 西安市| 丰都县| 青岛市| 嵊泗县| 余姚市| 翼城县| 桂东县| 运城市| 通江县| SHOW| 读书| 盐池县| 邢台市| 建德市| 湘乡市| 西昌市| 鄂托克旗| 西充县| 丹凤县| 大厂| 永嘉县| 嫩江县| 惠州市| 富蕴县| 遂宁市| 佛学| 高尔夫| 瓦房店市| 班玛县| 土默特右旗| 潜江市| 余姚市| 通州市| 太仆寺旗| 儋州市| 浦县| 灵丘县| 都安| 油尖旺区| 读书| 通化市| 都兰县| 连城县| 文昌市| 三都| 仪陇县| 崇左市| 台山市| 当阳市| 盱眙县| 海兴县| 江华| 集安市| 华蓥市| 嵊泗县| 和政县| 禹州市| 治多县| 望江县| 清远市| 田林县| 祥云县| 筠连县| 景德镇市| 岑巩县| 汉沽区| 高碑店市| 延吉市| 鄂托克前旗| 外汇| 徐州市| 竹北市| 太和县| 兴业县| 乌鲁木齐县| 东阳市| 遵义县| 德阳市| 义马市| 龙游县| 容城县| 河北省| 白沙| 监利县| 正镶白旗| 宁陵县| 深泽县| 华安县| 潼南县| 兴和县| 龙南县| 凤冈县| 双柏县| 仪陇县| 彰化县| 昌江| 遂溪县| 南宫市| 个旧市| 上饶县| 巴塘县| 深泽县| 商丘市| 宜良县| 宁安市| 鲁山县| 安仁县| 垫江县| 洛浦县| 呼玛县| 阿鲁科尔沁旗| 隆昌县| 来宾市| 慈溪市| 阿图什市| 白山市| 翼城县| 威远县| 东丰县| 嘉黎县| 九江市| 万宁市| 隆昌县| 琼结县| 泸水县| 大新县| 全南县| 杨浦区| 盈江县| 汨罗市| 长宁区| 康保县| 新宾| 南汇区| 宁乡县| 平利县| 博客| 阿克陶县| 搜索| 浑源县| 荆门市| 田阳县| 浠水县| 乌兰浩特市| 光山县| 和顺县| 长顺县| 十堰市| 叶城县| 栾川县| 墨玉县| 射阳县| 四会市| 石棉县| 渭源县| 马关县| 汪清县| 梁山县| 浙江省| 崇礼县| 华池县| 安乡县| 虹口区| 桐梓县| 四平市| 上林县| 乌兰察布市| 金沙县| 唐海县| 宜兴市| 霞浦县| 兰考县| 即墨市| 通城县| 临安市| 建昌县| 赤城县| 灵山县| 阜阳市| 甘德县| 万宁市| 新民市| 宕昌县| 双鸭山市| 翁牛特旗| 金门县| 文化| 清原| 衡山县| 兰考县| 抚远县| 津南区| 通道| 柳河县| 赤城县| 屯门区| 郓城县| 张掖市| 富阳市| 定安县| 嘉禾县| 陇南市| 房产| 温泉县| 德州市| 钟山县| 陇西县| 米林县| 大英县| 灵璧县| 久治县| 临颍县| 公主岭市| 郑州市| 阿拉善左旗| 固阳县| 嵊泗县| 开远市| 吴旗县| 工布江达县| 乌兰察布市| 威海市| 桂阳县| 璧山县| 阳新县| 临安市| 凤山市| 汤阴县| 阿拉善左旗| 西宁市| 滨海县| 兴安县| 甘南县| 南丰县| 沅陵县| 简阳市| 大方县| 嘉黎县| 贡山| 横峰县| 梅河口市| 木里| 永川市| 北宁市| 沙河市| 衡山县| 福泉市| http://wap.gz1980parentc.fun http://m.yqo2j5rl7v.fun http://m.gz1980slidec.fun http://wap.bo2020blocks.fun http://wap.yqo1j8rl4v.fun http://www.gz1980staffc.fun http://wap.gz1980wedc.fun http://wap.bo2020benefits.fun http://m.yqo5j7rl7v.fun http://www.gz1980blockc.fun http://wap.gz1980carryc.fun http://m.bo2020channels.fun http://www.yqo4j7rl9v.fun http://wap.yqo6j4rl0v.fun http://www.gz1980schedulec.fun