JMeter+Ant+SVN+Jenkins自動化持續(xù)集成

JMeter 接口測試或者性能測試中爷怀,經(jīng)常要用到 Jenkins 來幫助我們做一些持續(xù)集成的工作菱蔬。這里我們來學(xué)習(xí)一個簡
單的 JMeter+Ant+Jenkins 自動化持續(xù)集成測試方案窑睁。
一骇陈、JMeter 編寫和上傳測試腳本
1.1 編寫測試腳本
在本地 JMeter 中創(chuàng)建線程組宠页,線程組下添加幾個調(diào)試用的 java 請求和一個 HTTP 請求左胞,其中 HTTP 請求訪問的接
口系統(tǒng)服務(wù)沒有開啟,意在發(fā)送失敗的請求举户,最后創(chuàng)建一個監(jiān)聽器--查看結(jié)果樹方便后面查看運行結(jié)果烤宙。
筆者這里把測試腳本放在了 JMeter 根目錄下的 scripts 目錄下。


image.png

下面來運行一次看看結(jié)果吧敛摘。


image.png

從上面的結(jié)果可以看出4個請求中有3個是運行成功的门烂,其中一個運行失敗。
1.2 SVN 管理測試腳本
代碼調(diào)試完成后把腳本上傳到 SVN ,方便后期獲取構(gòu)建項目屯远。


image.png

筆者把 JMeter 整個目錄上傳到了 SVN 蔓姚,路徑如下: https://szsvr101:9443/svn/test_yunpan/jmeter_pro ,這
個路徑在后期 Jenkins 配置 SVN 步驟中用到。
本地操作到此暫且告一段落揽祥,后會有期卢佣。
二、安裝和配置 Ant
在公司里备闲, Jenkins 一般都是部署在服務(wù)器上,接下來在服務(wù)器上配置一下 Jenkins 捅暴。
2.1 安裝 Ant安裝 Ant 這里選擇下載二進制安裝包的方式安裝恬砂,官網(wǎng)下載安裝包地址:https://ant.apache.org/bindownload.cg
i。
下載完成后解壓到服務(wù)器即可蓬痒,筆者解壓到服務(wù)器 C 盤根目錄下(偷偷告訴你泻骤,這個路徑后面的配置步驟用到)。

image.png

2.2 配置 Ant

  1. 安裝完成后對 Ant 配置環(huán)境變量梧奢。


    image.png
  2. 接著狱掂,創(chuàng)建一個 Ant 構(gòu)建文件 build.xml,新建一個 txt 文本文件亲轨,然后把文件后綴改成 .xml 就是 XML 文件
    了趋惨。構(gòu)建文件可以放在任何的位置 ,筆者這里把它放在 Ant 根目錄下新建的 ant_properties 目錄下(這個路
    徑后面配置構(gòu)建步驟用到)惦蚊。


    image.png
  1. 另外器虾,創(chuàng)建一個 jtl 目錄存放運行后生成的 .jtl 結(jié)果文件,還要創(chuàng)建一個 html 目錄存放 html 格式的報告文
    件养筒。筆者這里在 Ant 根目錄下創(chuàng)建一個 reports 目錄曾撤,然后在該目錄下創(chuàng)建 jtl 目錄和 html 目錄。


    image.png
  1. 接下來用 Notepad++ 打開 build.xml 文件晕粪,并且對創(chuàng)建的 jtl 目錄和 html 目錄進行設(shè)置挤悉。


    image.png

源文件數(shù)據(jù)我也貼一下吧。

<?xml version="1.0" encoding="utf-8"?>
<project name="JmeterTest" default="all" basedir=".">
<tstamp>
<format property="time" pattern="yyyy-MM-dd_HH" />
</tstamp>
<!-- 需要改成自己本地的 Jmeter 目錄-->
<property name="jmeter.home" value="C:\jenkins\workspace\test_pro" />
<!-- jmeter生成jtl格式的結(jié)果報告的路徑-->
<property name="jmeter.result.jtl.dir" value="C:\apache-ant-1.9.4\reports\jtl" />
<!-- jmeter生成html格式的結(jié)果報告的路徑-->
<property name="jmeter.result.html.dir" value="C:\apache-ant-1.9.4\reports\html" />
<!-- 生成的報告的前綴 -->
<property name="ReportName" value="發(fā)布會系統(tǒng)接口自動化測試報告" />
<property name="jmeter.result.jtlName"
value="${jmeter.result.jtl.dir}/${ReportName}${time}.jtl" />
<property name="jmeter.result.htmlName"
value="${jmeter.result.html.dir}/${ReportName}${time}.html" />
<target name="all">
<antcall target="test" />
<antcall target="report" />
</target>
<target name="test">
<taskdef name="jmeter"
classname="org.programmerplanet.ant.taskdefs.jmeter.JMeterTask" />
<jmeter jmeterhome="${jmeter.home}" resultlog="${jmeter.result.jtlName}">
<!-- 聲明要運行的腳本巫湘。"*.jmx"指包含此目錄下的所有jmeter腳本 -->
<testplans dir="C:\jenkins\workspace\test_pro\scripts" includes="*.jmx" />
</jmeter>
</target>
<target name="report">
<xslt in="${jmeter.result.jtlName}" out="${jmeter.result.htmlName}"
style="${jmeter.home}/extras/jmeter-results-report_21.xsl" />
<!-- 因為上面生成報告的時候装悲,不會將相關(guān)的圖片也一起拷貝至目標(biāo)目錄,所以需要手動拷貝 -->
<copy todir="${jmeter.result.html.dir}">
<fileset dir="${jmeter.home}/extras">
<include name="${ReportName}${time}.html" />
</fileset>
</copy>
</target>
</project>

三尚氛、安裝和配置 Jenkins
3.1 安裝 Jenkins
筆者這里安裝的 Jenkins 版本為 V2.121.3诀诊,不同版本之間系統(tǒng)頁面可能存在差異但不影響使用,安裝包下載地址:
鏈接:https://pan.baidu.com/s/1Hf8fbeouCwNMjN6rZtvxvA 密碼:logk 阅嘶。也可以到官網(wǎng)下載属瓣,官網(wǎng)下載地址:
https://jenkins.io/download/载迄。
安裝時注意安裝目錄不要帶空格,要不后面構(gòu)建項目步驟會出問題抡蛙,不信你可以試試护昧。
安裝完成后在瀏覽器上輸入:http://localhost:8080/ 回車,如果提示解鎖 Jenkins 就按照頁面提示操作即可粗截。

image.png

接下來會跳到推薦安裝插件的頁面惋耙,到后期操作過程中需要哪些插件我們再有針對性去安裝,這里點擊 選擇插件來安裝 熊昌。


image.png

先不安裝插件绽榛,關(guān)掉新頁面。


image.png

點擊開始使用 Jenkins 婿屹。


image.png

看到下面的頁面說明 Jenkins 已經(jīng)安裝成功了灭美。


image.png

3.2 配置 Jenkins
3.2.1. 在 Jenkins 中配置 Ant
首先要安裝 Ant 插件。
在 系統(tǒng)管理 --> 管理插件 中找到 可選插件 昂利,然后搜索 Ant 插件安裝即可冲粤。如果第一次進入沒有顯示任何插件信息
的話點 立即獲取 按鈕獲取,估計要等待一段時間页眯,可以趁機上個洗手間。


image.png

插件安裝完成后厢呵,接下來對 Ant 的配置進行設(shè)置窝撵。
點擊 系統(tǒng)管理 ,舊版本 Jenkins 進入 系統(tǒng)設(shè)置 襟铭,新版本 Jenkins 進入 全局工具配置 碌奉,找到 Ant 安裝配置項進行設(shè)
置并保存(前面偷偷告訴你的路徑下面就用到了)。


image.png

3.2.2. 新建項目
回到 Jenkins 首頁寒砖,點擊 新建任務(wù) 創(chuàng)建任務(wù)赐劣。


image.png

3.3.3. 配置項目
項目創(chuàng)建完成后要進行配置。
3.3.3.1 安裝和配置 SVN 選項
后期我們會對測試腳本進行 SVN 配置管理哩都,所以要在 Jenkins 里配置 SVN 相關(guān)信息魁兼。首先要安裝 SVN 插件,安裝
方式和 Ant 插件安裝類似漠嵌,在可選插件中搜索 Subversion 即可安裝咐汞。
安裝插件后進入項目配置頁面。


image.png

配置 SVN 選項信息儒鹿。


image.png

設(shè)置 SVN 用戶賬號和密碼化撕。


image.png

3.3.3.2 配置構(gòu)建環(huán)境
假如我們每天都想在固定時間對項目進行構(gòu)建一次來檢驗項目質(zhì)量情況,而且這個時間要選大家下班以后约炎,避免其
他人操作影響測試結(jié)果植阴。這樣的話經(jīng)常會挑每天凌晨的時間構(gòu)建蟹瘾,人為去執(zhí)行構(gòu)建不太現(xiàn)實,這個時候就可以設(shè)置
一些觸發(fā)構(gòu)建的條件來幫我們實現(xiàn)掠手。


image.png

以上兩個觸發(fā)機制任意一個滿足條件都會觸發(fā)構(gòu)建項目憾朴。
3.3.3.3 配置構(gòu)建
在 構(gòu)建 --> 添加構(gòu)建步驟 中選擇 Invoke Ant 。


image.png

在 高級 中設(shè)置 build.xml 文件路徑惨撇。


image.png

設(shè)置完成后點擊保存伊脓。
四、構(gòu)建項目
進入項目頁面進行構(gòu)建魁衙。


image.png

構(gòu)建后先不管構(gòu)建結(jié)果情況报腔,因為還有其他信息沒有配置完。現(xiàn)在我們要去看 Jenkins 構(gòu)建項目時從 SVN 上獲取的
代碼放到服務(wù)器哪里剖淀?


image.png

熟悉 Jenkins 工作機制的同志應(yīng)該知道在上面截圖的位置纯蛾,其實 test_pro 目錄下的文件就是 JMeter 的安裝包文
件,所以在服務(wù)器上不需要另外安裝 JMeter 了纵隔。
4.1 配置 JMeter
復(fù)制 JMeter 的 extras 目錄的 ant-jmeter-1.1.1.jar 到 Ant 的 lib 目錄下翻诉。


image.png
image.png

修改 JMeter 的 jmeter.properties 配置文件,用 Notepad++ 打開文件找到
jmeter.save.saveservice.output_format=csv捌刮,將 csv 改成 xml碰煌。如果之前開啟了 JMeter 需要重啟 JMeter
才能使修改的配置生效。
4.2 配置 build.xml文件
build.xml 文件在前面已經(jīng)配置過一次了绅作,因為涉及到后面的操作步驟信息芦圾,所以還有一部分信息沒有配置完成,
現(xiàn)在繼續(xù)去完善俄认,如:時間格式个少、JMeter 安裝路徑、報告名稱眯杏、jtl 文件名夜焦、html 文件名、腳本存放路徑岂贩。


image.png

其中把時間加在生成的 jtl 結(jié)果文件和 html 報告文件后面是為了避免文件覆蓋茫经。
到此為止,需要配置的信息已經(jīng)完成河闰,現(xiàn)在再次構(gòu)建項目科平。


image.png

還是構(gòu)建失敗了,看控制臺輸出信息意思是在 C:\Program Files\Java\jre1.8.0_161\lib\ 目錄下找不到 tools.jar
這個包姜性。
解決辦法:將 C:\Program Files\Java\jdk1.8.0_161\lib 目錄下的 tools.jar 文件拷貝到 C:\Program
Files\Java\jre1.8.0_161\lib 目錄下 瞪慧。
4.3 處理 Jenkins 亂碼問題
拷貝完成后接著構(gòu)建項目。


image.png

結(jié)果一樣構(gòu)建失敗了部念,但這次報的不是之前的錯誤了弃酌,看起來是腳本名稱和測試報告名稱含有中文導(dǎo)致的錯誤氨菇。
解決辦法:添加環(huán)境變量。
鍵 = JAVA_TOOL_OPTIONS
值 = -Dfile.encoding=UTF-8


image.png

添加環(huán)境變量后需要重啟 Jenkins 服務(wù)妓湘,在 開始 --> 運行 中輸入 services.msc 回車查蓉,然后找到 Jenkins 服務(wù)重啟。


image.png

重啟后再來構(gòu)建項目榜贴。


image.png

最終的構(gòu)建結(jié)果還是失敗豌研,但中文能顯示出來了。另外唬党,從最后的結(jié)果看得出腳本是被運行了鹃共,但 jtl 文件因名稱
存在中文沒有被生成。這里筆者在 build.xml 文件中把原來中文報告名稱 發(fā)布會系統(tǒng)接口自動化測試報告 換成英文
的 fabuhui_Interface_automation_testreport 名稱驶拱。


image.png

修改保存 build.xml 文件后最后一次運行霜浴,這次再構(gòu)建不成功就放棄了。


image.png

居然成功了蓝纲!淚流滿面耙趺稀!看來老天不想讓我放棄税迷。另外永丝,Jenkins 亂碼的情況非常多,大家遇到不一樣的亂碼問
題可以多找一下度娘箭养。
最后类溢,哪位同志日后把上面報告名稱含有中文的問題解決了歡迎拿出來跟筆者分享一下哈。
五露懒、查看報告文件
構(gòu)建完成后,我們來查看 jtl 結(jié)果文件和 html 報告文件砂心。
jtl 文件懈词。


image.png

html 文件。


image.png

打開 html 文件看看報告內(nèi)容辩诞。


image.png

從結(jié)果中可以看到3個 java 請求執(zhí)行成功坎弯,1個 HTTP 請求執(zhí)行失敗∫朐荩總共4個請求抠忘,1個失敗,3個成功外永,成功率為
75%崎脉。失敗的請求在最下方有失敗的詳細信息。
六伯顶、發(fā)送報告到郵箱
上面生成的 jtl 測試結(jié)果文件和測試報告 html 文件都是在 Jenkins 服務(wù)器上囚灼,如果要看一眼報告還要跑到服務(wù)器去
找骆膝,這個不實際。如果可以在構(gòu)建項目并生成報告文件后能自動把報告發(fā)送到指定郵箱灶体,這樣就方便查看運行結(jié)果了阅签。下面我們來學(xué)
習(xí)一下如何在 Jenkins 里面配置發(fā)送郵件。
6.1 安裝 Email Extension 插件
發(fā)送郵件需要安裝 Email Extension 插件蝎抽,安裝方式跟前面安裝 Ant 一樣政钟,在 可選插件 中搜索 Email Extension 找
到插件安裝即可。
6.2 配置 Extended E-mail Notification
安裝完成后在 Jenkins 首頁進入 系統(tǒng)管理 --> 系統(tǒng)設(shè)置 樟结,找到 Extended E-mail Notification 項進行配置养交。


image.png

接下來對上面每一個選項配置進行說明:
SMTP server: 郵件發(fā)送服務(wù)器∠梁穑可以寫公司 SMTP 服務(wù)器层坠,也可以寫網(wǎng)易或者 QQ 的郵箱發(fā)送服務(wù)器,這里以
QQ 郵箱為例刁笙。
Default user email suffix:用戶默認郵箱后綴破花,這個取決你用哪個郵箱,比如網(wǎng)易就用 @163.com疲吸,QQ 的就用
@qq.com座每。
使用 QQ 郵箱 SMTP 服務(wù)器需要身份驗證,打開高級設(shè)置去設(shè)置身份摘悴,勾選 Use SMTP Authentication 峭梳。
User Name:輸入你郵件服務(wù)器的郵箱。
Password:由于 QQ 郵箱的升級蹂喻,對于 Password 騰訊要求第三方客戶端使用要輸入16位授權(quán)碼葱椭,所以我們需要
在 QQ 郵箱中開啟16位授權(quán)碼。具體操作可以看筆者寫的另外一篇文章口四,這里就不重復(fù)寫一遍了(https://www.jia
nshu.com/p/d444c854e5b3)孵运。
勾選 Use SSL 選項。
SMTP port:端口寫465或者587都可以蔓彩。
Charset:設(shè)置成 UTF-8 治笨。Default Content Type:輸入 HTML(text/html) 。
其他沒有提到的選項默認即可赤嚼。
6.3 配置 Jenkins Location

image.png

Jenkins URL:別人訪問 Jenkins 的地址旷赖,如果是遠程需要把 localhost 改成 Jenkins 服務(wù)器 IP 。
系統(tǒng)管理員郵件地址:這個地址輸入你前面配置發(fā)送郵件的 QQ 郵箱更卒,兩個郵箱地址要保持一致等孵,不然無法發(fā)送郵
件,切記u蹇铡A骷谩锐锣!
6.4 配置郵件通知服務(wù)器
找到郵件通知選項,各項輸入內(nèi)容和前面 Extended E-mail Notification 設(shè)置的一致绳瘟。


image.png

這里你可以點擊 Test configuration 按鈕進行測試郵件發(fā)送配置雕憔,前面配置好的 QQ 郵件服務(wù)器會給你這里設(shè)置的
接收郵箱發(fā)一封測試郵件,如下圖:


image.png

配置完成后點擊應(yīng)用按鈕糖声,最后點擊保存按鈕即可斤彼。
6.5 配置構(gòu)建后操作
郵件服務(wù)器信息配置完成后,接下來對郵件內(nèi)容進行設(shè)置蘸泻。
在操作之前琉苇,先要安裝一個 Build Timestamp 插件,該插件可以給我們提供一個構(gòu)建時間悦施,安裝插件方式和前面
一樣在 可選插件 中搜索 Build Timestamp 安裝即可并扇。
安裝完成后回到 Jenkins 首頁,進入 系統(tǒng)管理 --> 系統(tǒng)設(shè)置 抡诞,在 Build Timestamp 中可以自定義設(shè)置時間的格
式穷蛹,筆者這里設(shè)置成跟前面配置 build.xml 文件 time 變量一致: yyyy-MM-dd_HH ,實際的時間如:2018-08-28_11
昼汗。在其他地方調(diào)用這個構(gòu)建時間用以下格式:${BUILD_TIMESTAMP} 肴熏。


image.png

接下來進入項目的配置頁面,在 構(gòu)建后操作 --> 增加構(gòu)建后操作步驟 中選擇 Editable Email Notification 顷窒。


image.png

接著講解一下需要設(shè)置的選項蛙吏,沒有講到的默認即可。
Project Recipient List:這個項目報告需要發(fā)送郵件給哪些人鞋吉,在這里輸入收件人郵箱鸦做,多個郵箱以英文狀態(tài)下
的逗號隔開,或者郵箱之間回車換行讓每個郵箱單獨一行也可以谓着。
Content Type:可以選擇 HTML 或者 Default馁龟,因為在 Jenkins 系統(tǒng)設(shè)置中默認格式就是 HTML 。
Default Subject: 郵件主題漆魔。可以書寫成:XXX項目自動化測試通知:PROJECT_NAME - Build #BUILD_NUMBER - BUILD_STATUS ! 這幾個參數(shù)意思是:PROJECT_NAME 構(gòu)建項目的名稱却音;# BUILD_NUMBER 構(gòu)建的號碼改抡;BUILD_STATUS 構(gòu)建
狀態(tài),這幾個參數(shù)會自動讀取系瓢,按照這種格式書寫即可阿纤。
Default Content:郵件內(nèi)容。這部分內(nèi)容是 HTML 格式夷陋,可以根據(jù)自己的需要而修改欠拾,這里只是給了一個樣式胰锌,
具體內(nèi)容如下:

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
</head>
<body leftmargin="8" marginwidth="0" topmargin="8" marginheight="4"
offset="0">
<div>
<table width="95%" cellpadding="0" cellspacing="0"
style="font-size: 11pt; font-family: Tahoma, Arial, Helvetica, sans-serif">
<tr>
<th align="center" colspan="2"><br />
<h2><p><font size="6" face="arial" >構(gòu)建信息</font></p></h2>
</th>上面倒數(shù)第7,8行是 HTML 報告源文件的路徑,配置后會把 HTML 源文件的內(nèi)容展示在郵件內(nèi)容里面藐窄,路徑需要根
據(jù)自己的實際情況編寫资昧。
Attachments:郵件附件。在這里荆忍,發(fā)送郵件的同時把 HTML 報告源文件以附件的形式附帶發(fā)送出去格带。填寫的內(nèi)
容是文件所處的路徑,路徑需要根據(jù)自己的實際情況填寫刹枉,筆者這里的路徑是:
reports\html\fabuhui_Interface_automation_testreport${BUILD_TIMESTAMP}.html 叽唱,可以是相對路徑,也可以
是絕對路徑微宝。
最后還需要配置什么時候觸發(fā)發(fā)送郵件這個操作棺亭,點擊 Advanced Settings… 按鈕。
點擊 Add Trigger 按鈕新增一個trigger蟋软,然后選擇 Always 選項镶摘,這樣不管構(gòu)建成功還是失敗,都會觸發(fā)這個發(fā)送
郵件的請求钟鸵。
</tr>
<tr>
<td>
(本郵件為程序自動下發(fā)钉稍,請勿回復(fù)!)<br/><hr/>
項目名稱:$PROJECT_NAME<br/><hr/>
構(gòu)建編號:$BUILD_NUMBER<br/><hr/>
構(gòu)建狀態(tài):$BUILD_STATUS<br/><hr/>
觸發(fā)原因:${CAUSE}<br/><hr/>
構(gòu)建日志地址:<a href="${BUILD_URL}console">${BUILD_URL}console/</a><br/><hr/>
構(gòu)建報告:<a href="${BUILD_URL}testReport">${BUILD_URL}testReport/</a><br/><hr/>
變更集:${JELLY_SCRIPT,template="html"}<br/><hr/>
</td>
</tr>
<tr>
<td colspan="2" align="center">
<h2><p><font size="6" face="arial" >測試報告</font></p></h2>
</td>
</tr>
<tr>
<td colspan="2" align="center">
<div>${FILE ,path="C:\\apache-ant-
1.9.4\\reports\\html\\fabuhui_Interface_automation_testreport${BUILD_TIMESTAMP}.html"}</div>
</td>
</tr>
</table>
</div>
</body>
</html>

上面倒數(shù)第7,8行是 HTML 報告源文件的路徑棺耍,配置后會把 HTML 源文件的內(nèi)容展示在郵件內(nèi)容里面贡未,路徑需要根
據(jù)自己的實際情況編寫。
Attachments:郵件附件蒙袍。在這里俊卤,發(fā)送郵件的同時把 HTML 報告源文件以附件的形式附帶發(fā)送出去。填寫的內(nèi)
容是文件所處的路徑害幅,路徑需要根據(jù)自己的實際情況填寫消恍,筆者這里的路徑是:
reports\html\fabuhui_Interface_automation_testreport${BUILD_TIMESTAMP}.html ,可以是相對路徑以现,也可以
是絕對路徑狠怨。
最后還需要配置什么時候觸發(fā)發(fā)送郵件這個操作,點擊 Advanced Settings… 按鈕邑遏。


image.png

點擊 Add Trigger 按鈕新增一個trigger佣赖,然后選擇 Always 選項,這樣不管構(gòu)建成功還是失敗记盒,都會觸發(fā)這個發(fā)送
郵件的請求憎蛤。


image.png

最后,點擊應(yīng)用和保存按鈕。
6.6 發(fā)送郵件
郵件內(nèi)容所有選項都設(shè)置完成后俩檬,我們對項目再進行一次構(gòu)建萎胰。


image.png
image.png

從上面看出項目構(gòu)建已經(jīng)成功,接著來看看郵件內(nèi)容棚辽。


image.png
image.png

查看郵箱技竟,郵件已經(jīng)發(fā)送成功,上面兩張圖片都是郵件的內(nèi)容晚胡。
上面是手動構(gòu)建項目的灵奖,你也可以設(shè)置定時構(gòu)建或者輪詢 SCM 的方式自動構(gòu)建項目,這里就不再演示了估盘。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末瓷患,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子遣妥,更是在濱河造成了極大的恐慌擅编,老刑警劉巖,帶你破解...
    沈念sama閱讀 219,490評論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件箫踩,死亡現(xiàn)場離奇詭異爱态,居然都是意外死亡,警方通過查閱死者的電腦和手機境钟,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,581評論 3 395
  • 文/潘曉璐 我一進店門锦担,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人慨削,你說我怎么就攤上這事洞渔。” “怎么了缚态?”我有些...
    開封第一講書人閱讀 165,830評論 0 356
  • 文/不壞的土叔 我叫張陵磁椒,是天一觀的道長。 經(jīng)常有香客問我玫芦,道長浆熔,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,957評論 1 295
  • 正文 為了忘掉前任桥帆,我火速辦了婚禮医增,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘老虫。我一直安慰自己叶骨,他們只是感情好,可當(dāng)我...
    茶點故事閱讀 67,974評論 6 393
  • 文/花漫 我一把揭開白布张遭。 她就那樣靜靜地躺著,像睡著了一般地梨。 火紅的嫁衣襯著肌膚如雪菊卷。 梳的紋絲不亂的頭發(fā)上缔恳,一...
    開封第一講書人閱讀 51,754評論 1 307
  • 那天,我揣著相機與錄音洁闰,去河邊找鬼歉甚。 笑死,一個胖子當(dāng)著我的面吹牛扑眉,可吹牛的內(nèi)容都是我干的纸泄。 我是一名探鬼主播,決...
    沈念sama閱讀 40,464評論 3 420
  • 文/蒼蘭香墨 我猛地睜開眼腰素,長吁一口氣:“原來是場噩夢啊……” “哼聘裁!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起弓千,我...
    開封第一講書人閱讀 39,357評論 0 276
  • 序言:老撾萬榮一對情侶失蹤衡便,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后洋访,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體镣陕,經(jīng)...
    沈念sama閱讀 45,847評論 1 317
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,995評論 3 338
  • 正文 我和宋清朗相戀三年姻政,在試婚紗的時候發(fā)現(xiàn)自己被綠了呆抑。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 40,137評論 1 351
  • 序言:一個原本活蹦亂跳的男人離奇死亡汁展,死狀恐怖鹊碍,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情善镰,我是刑警寧澤妹萨,帶...
    沈念sama閱讀 35,819評論 5 346
  • 正文 年R本政府宣布,位于F島的核電站炫欺,受9級特大地震影響乎完,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜品洛,卻給世界環(huán)境...
    茶點故事閱讀 41,482評論 3 331
  • 文/蒙蒙 一树姨、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧桥状,春花似錦帽揪、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,023評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至,卻和暖如春查邢,著一層夾襖步出監(jiān)牢的瞬間蔗崎,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,149評論 1 272
  • 我被黑心中介騙來泰國打工扰藕, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留缓苛,地道東北人。 一個月前我還...
    沈念sama閱讀 48,409評論 3 373
  • 正文 我出身青樓邓深,卻偏偏與公主長得像未桥,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子芥备,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 45,086評論 2 355

推薦閱讀更多精彩內(nèi)容