锘??xml version="1.0" encoding="utf-8" standalone="yes"?>国产精品亚发布,美女啪啪无遮挡免费久久网站,亚洲欧美国产高清http://www.shnenglu.com/leetaolion/category/4356.htmlOnly those who have the patience to do simple things perfectly ever acquire the skill to do difficult things easily. zh-cnTue, 20 May 2008 00:53:00 GMTTue, 20 May 2008 00:53:00 GMT60娓╁害璁$殑瀵撹█http://www.shnenglu.com/leetaolion/archive/2008/03/14/44525.html鍒涘緩鏇村ソ鐨勮В鍐蟲柟妗?/dc:creator>鍒涘緩鏇村ソ鐨勮В鍐蟲柟妗?/author>Fri, 14 Mar 2008 12:49:00 GMThttp://www.shnenglu.com/leetaolion/archive/2008/03/14/44525.htmlhttp://www.shnenglu.com/leetaolion/comments/44525.htmlhttp://www.shnenglu.com/leetaolion/archive/2008/03/14/44525.html#Feedback0http://www.shnenglu.com/leetaolion/comments/commentRss/44525.htmlhttp://www.shnenglu.com/leetaolion/services/trackbacks/44525.html涓鍦虹獊鍙戠殑嫻佽鎬ф劅鍐掞紝浣垮緱甯傞潰涓婁綋娓╄濂囩己錛屼環(huán)鏍間篃鏄按娑ㄨ埞楂樸備竴涓啘姘戜紒涓氬鎶曡祫50w鍒涘緩鐨勬俯搴﹁鍏徃Good Metor錛屼竴鐩存儴娣$粡钀ワ紝榪欎箞濂界殑鏈轟細錛岃嚜鐒朵笉浼氭斁榪囥傚競鍦轟笂浠鋒牸鏈楂樼殑鏄竴縐嶈兘璁板綍涓孌墊椂闂村唴浜轟綋娓╁害鍙樺寲鏇茬嚎錛屽茍鍒ゆ柇浣跨敤鑰呮槸鍚︽?zhèn)d笂杩櫩U嶅彲鎬曠殑嫻佹劅鐨勬櫤鑳戒綋娓╄Smart Thermometer銆傚叾瀹炵幇寰堢畝鍗曪紝鏃犻潪鏄湪浼犵粺鐨勪綋娓╄涓婂姞涓鍧楀崟鐗囨満錛屼綋娓╄鍜屽崟鐗囨満婊″ぇ琛楅兘鏄紝鑰屽崟鐗囨満鍐呯▼搴忕殑鎺屾彙鍦ˋnyMetor鍑犲澶у瀷娓╁害璁″巶鍟嗘墜涓紝浠庝笉澶栨硠銆備簬鏄疓ood Metor鍐沖畾璧屼竴鎶婏紝鎵句漢寮鍙戣繖縐嶈蔣浠訛紝甯屾湜鍊熸鍜擱奔緲昏韓銆?br>涓涓伓鐒剁殑鏈轟細錛孏oodMetor鏉ュ埌浜哬oungSoft錛屽弻鏂逛竴鎷嶅嵆鍚堛傜敱YongSoft鎵挎媴Smart Thermometer杞歡鐨勫紑鍙戝伐浣滐紝浠烽挶璋堝畾100kRMB錛屽畾閲?0k錛屽弻鏂圭害瀹?涓湀涔嬪唴浜よ揣錛屾寜鏈熶氦璐у彟鏈夊閲?0kRMB銆?br>榪欑宸ヤ綔瀵筜ongSoft綆鐩存槸鎵嬪埌鎿掓潵錛屽摜5涓綈涓婇樀錛屼笉鑲栦袱涓湀鐨勬椂闂達紝GoodSmartMetro v1.0鐗堟湰灝盧elease浜嗐傚墿涓嬩竴涓湀鐨勬椂闂達紝5浣嶅勾杞諱漢鏈夎凍澶熺殑鏃墮棿鍠濆枬鑼訛紝鑱婅亰澶╋紝鍋氫簺闆剁鐨勬椿錛岀瓑鐫GoodMetor鏉ラ獙鏀躲?br>鍦ㄤ袱涓崐鏈堢殑鏃跺欙紝GoodMetor灝卞潗涓嶄綇浜嗭紝鍖嗗寙蹇欏繖鏉ュ埌YoungSoft錛屽綋寰楃煡杞歡宸茬粡姝e紡鍙戝竷鐨勬椂鍊欙紝鑷劧鍠滀笉鑷錛屽綋鏃ュ嵆浠樻竻璐ф鍜屽閲戯紝鍥炲巶鎵歸噺鐢熶駭銆?br>鍙曠殑嫻佹劅鍙堟寔緇簡涓や釜鏈堬紝緇堜簬鐨勫埌浜嗘湁鏁堢殑鎺у埗銆侴oodMetor鍏徃鐨勮秴浣庝環(huán)鍙兘浣撴俯璁″湪榪欐鎶楀嚮嫻佹劅涓湪涓哄浗瀹跺拰紺句細浣滃嚭鍗撹秺璐$尞鐨勫悓鏃訛紝鏇翠負鍏徃璧氫簡涓泦婊¢挼婊★紝500w鐨勭函鍒╂鼎鍟婏紝GoodMetor鐨勮佸ぇ鍋氭ⅵ閮芥病鎯沖埌榪囥?br>CPI楂樹紒錛岄挶瀛橀摱琛屼笉鏄庢櫤錛孏oodMetor鑰佸ぇ鍐沖畾錛氭墿澶х敓浜с傜敓浜у暐鍛紵鐜板湪浜洪兘璁茬┒鍋ュ悍楗錛岄ギ鐢ㄦ按涓婃洿鏄弗鏍兼妸鍏籌紝縐戝鐮旂┒琛ㄦ槑錛岀儳寮姘存椂濡傛灉姘存俯涓婂崌鏇茬嚎鍜屾帹鑽愭洸綰垮惢鍚堬紝浜哄枬浜嗕箣鍚庝細鏇村仴搴楓備簬鏄竴縐嶇洃嫻嬫按娓╂帶鍒剁伀鍊欑殑鏂板瀷鐏跺叿HealthOven搴旇繍鑰岀敓銆傝佸ぇ鎷嶆澘錛屽氨鎼炲畠浜嗐?br>浜庢槸鍙堟壘鍒頒簡YoungSoft銆?br>鍗婂勾榪囧幓浜嗭紝YoungSoft鐨勫嚑涓勾杞諱漢鍋氫簡鍑犱釜灝忛」鐩紝浜哄憳緇撴瀯涔熷彂鐢熶簡鏀瑰彉錛屽ぇ瀹舵湁浜嗘洿鏄庣‘鐨勫垎宸ャ備竴涓仈緋諱笟鍔★紝鍒嗘瀽闇姹傦紝灝戦噺緙栫爜鐨凥uManager錛屼笁涓紪鐮佺殑WenProgramers錛屼竴涓礋璐f祴璇曪紝灝戦噺緙栫爜鐨刉uTester銆?br>HuManager鍒嗘瀽璁や負錛孒ealthOven鍜孲martThermometer涔嬮棿錛岄櫎嫻嬮噺鑼冨洿浠庝漢鐨勪綋娓╀笂鍗囧埌姘寸殑娌哥偣涔嬪錛屾俯搴﹁涓殑娑蹭綋涔熶粠姘撮摱鎹㈡垚浜嗛厭綺俱侴oodSmartMetro v1.0涓噰鐢ㄤ簡涓涓厤璐圭殑娑蹭綋浣撶Н娓╁樊鎹㈢畻搴揗ercuryLib錛屾墍浠ュ仛鐨勬椂鍊欑渷鍘諱簡澶ф妸鐨勫伐浣溿傞厭綺懼拰姘撮摱鐨勭墿鐞嗗睘鎬х浉宸お澶э紝榪欐鎹㈢畻鐨勫姛鑳芥曟槸瑕佽嚜宸卞紑鍙戜簡錛屾殏瀹氬悕涓篖iquidLib錛屾敮鎸佹按閾跺拰閰掔簿鐨勪綋縐俯宸崲綆椼備絾鏄互鍓嶇洿鎺ヨ皟鐢∕ercuryLib鐨勬ā鍧楀繀欏昏繘琛岃В鑰﹀拰嫻嬭瘯錛屽鏁頒笉鑳借浜嗐?br>鏈緇堬紝鍙屽彂綰﹀畾5涓湀鍐呰蔣浠朵氦浠樹嬌鐢紝鎬諱環(huán)50wRMB錛屽畾閲?0wRMB錛屽強鏃朵氦浠樺閲?wRMB銆?br>鍦℅oodSmartMetro v2.0寮鍙戣繘琛屽埌絎?涓湀鐨勬椂鍊欙紝W(xué)enProgramer浜嗚В鍒幫紝浜т笟鍗囩駭榪囩▼涓紝娓╂帶鐐塆reenIron鐐奸挗鑳藉ぇ騫呴檷浣庤兘鑰楋紝騫跺湪涓嬈¢」鐩粍CCB浼氳涓婃彁浜嗗嚭鏉ワ紝澶у涓鑷磋涓篩oungSoft瑕佸姞閫熷彂灞曪紝蹇呴』鐫鐪兼湭鏉ャ侴oodSmartMetro v2.0鐗堟湰鍙互涓哄皢鏉ユ墦寮GreenIron甯傚満鏃╁仛鍑嗗銆備笉鑳藉啀鍚僊ercuryLib閭f牱鐨勪簭浜嗐侺iquidLib妯″潡闇瑕佽壇濂界殑閫氱敤鎬э紝灝嗘潵鍙互浣滀負騫沖彴鐨勫熀紜妯″潡錛屾敮鎸佸悇縐嶄笉鍚屾恫浣撳仛鎴愭俯搴﹁鐨勬俯鎺ц蔣浠跺紑鍙戙?br>GreenIron璁懼鍟嗛噰鐢ㄤ笉鍚岀殑娑蹭綋鍋氭垚鐨勬俯搴﹁錛屽湪榪欎釜闂涓婏紝涓氱晫榪樻病鏈夌粺涓鐨勬爣鍑嗐?br>錛堟湭瀹屽緟緇?..錛?br>

]]>
鐢–PPUnit鍋氬崟鍏冩祴璇曪紙鍘熸枃鍦‥鏂囧叏緲諱腑錛?/title><link>http://www.shnenglu.com/leetaolion/archive/2007/05/26/24882.html</link><dc:creator>鍒涘緩鏇村ソ鐨勮В鍐蟲柟妗?/dc:creator><author>鍒涘緩鏇村ソ鐨勮В鍐蟲柟妗?/author><pubDate>Sat, 26 May 2007 02:53:00 GMT</pubDate><guid>http://www.shnenglu.com/leetaolion/archive/2007/05/26/24882.html</guid><wfw:comment>http://www.shnenglu.com/leetaolion/comments/24882.html</wfw:comment><comments>http://www.shnenglu.com/leetaolion/archive/2007/05/26/24882.html#Feedback</comments><slash:comments>2</slash:comments><wfw:commentRss>http://www.shnenglu.com/leetaolion/comments/commentRss/24882.html</wfw:commentRss><trackback:ping>http://www.shnenglu.com/leetaolion/services/trackbacks/24882.html</trackback:ping><description><![CDATA[<p>鐢–PPUnit鍋氬崟鍏冩祴璇?br>渚嬪瓙紼嬪簭涓嬭澆錛?a >http://www.codeproject.com/library/Using_CPPUnit/my_tests.zip</a><br>CPPUnit鏈鏂扮増鏈厤璐逛笅杞斤細<br><a >http://cppunit.sourceforge.net/</a><br>CPPUnit鏄熀浜嶤++鐨勫崟鍏冩祴璇曟鏋訛紝鍙互鏈夋晥鎻愰珮寮鍙戠殑緋葷粺璐ㄩ噺銆?br>寮曡█錛?br>QA榪囩▼甯擱噰鐢ㄤ袱縐嶆祴璇曟柟娉曪細<br>1銆佸崟鍏冩祴璇曪紙acceptance嫻嬭瘯錛夛細涓鴻蔣浠剁郴緇熶腑鐨勬瘡涓涓昏緫鍗曞厓鍒跺畾鐨勪竴緋誨垪楠岃瘉鏂規(guī)硶銆備粎嫻嬭瘯鍗曞厓鐨勫姛鑳斤紝鑰屼笉鑰冭檻鍚勪釜鍗曞厓涔嬮棿鐨勫崗浣滃叧緋匯?br>2銆佺郴緇熸祴璇曪紙闆嗘垚嫻嬭瘯錛夛細嫻嬭瘯緋葷粺鐨勫姛鑳斤紝灝ゅ叾鏄悇鍗曞厓妯″潡涔嬮棿鐨勫崗浣滃叧緋匯?br>涓嬮潰瑕佽鐨勬槸濡備綍閲囩敤CPPUnit瀵笴/C++宸ョ▼榪涜鍗曞厓嫻嬭瘯銆?br>鏂囩珷鍋囪璇昏呯啛鎮(zhèn)夊崟鍏冩祴璇曠殑姒傚康鍙婂叾閲嶈鎬с?br>鍗曞厓嫻嬭瘯璁捐錛?br>鎯充竴涓嬪紑鍙戝洟闃熶腑甯稿父鍑虹幇鐨勪竴縐嶅満鏅細紼嬪簭鍛樻鍦ㄤ嬌鐢―ebugger宸ュ叿嫻嬭瘯浠g爜銆傞噰鐢―ebugger宸ュ叿鍙互鍙互闅忔椂闅忓湴媯鏌ユ瘡涓彉閲忋傛姝ヨ窡韙紝媯鏌ュ彉閲忕殑鍊兼槸鍚﹀紓甯搞侱ebugger鏄竴縐嶅己鏈夊姏鐨勮皟璇曞伐鍏鳳紝浣嗘槸璋冭瘯閫熷害鐩稿綋鎱紝騫朵笖鍖呭惈涓嶅皯閿欒銆傚湪榪欑鎯呭喌涓嬭皟璇曟槸璁╀漢宕╂簝鐨勩傝繖浜涘鏉傛湁澶ч噺閲嶅鐨勯獙璇佹柟娉曟槸鍙互閫氳繃鑷姩鍖栫殑鎵嬫瀹屾垚鐨勶紝闇瑕佸仛鐨勬槸閫夋嫨鍚堥傜殑宸ュ叿騫剁紪鍐欏皯閲忎唬鐮併?br>涓嬮潰瑕佷粙緇嶇殑宸ュ叿鍙仛“鍗曞厓嫻嬭瘯妗嗘灦”錛屽熷姪榪欑宸ュ叿錛屽彲浠ラ氳繃緙栧啓涓浜涘皬鐨勬ā鍧楁潵瀹屾垚妯″潡錛堝彲浠ユ槸綾匯佸嚱鏁板拰搴擄級鐨勫崟鍏冩祴璇曘?br>涓嬮潰鏉ョ湅涓涓緥瀛愶細緙栧啓涓涓皬鐨勬ā鍧楋紝涓昏鍔熻兘鏄眰涓ゆ暟涔嬪拰銆傚叾C璇█浠g爜濡備笅錛?br>BOOL addition(int a, int b)<br>{<br>    return (a + b);<br>}<br>嫻嬭瘯鍗曞厓緙栧啓鎴愬彟澶栦竴涓ā鍧楋紙C鍑芥暟錛夈傝妯″潡嫻嬭瘯鎵鏈夊彲鑳界殑姹備袱鏁頒箣鍜岀殑緇勫悎錛岄氳繃榪斿洖True鎴朏alse鏉ュ垽鏂嫻嬫ā鍧楁槸鍚﹂氳繃浜嗘祴璇曘備唬鐮佸涓嬶細<br>BOOL additionTest()<br>{<br>    if ( addition(1, 2) != 3)<br>    {<br>        return (FALSE);<br>    }</p> <p>    if ( addition(0, 0) != 0)<br>    {<br>        return (FALSE);<br>    }</p> <p>    if ( addition(10, 0) != 10)<br>    {<br>        return (FALSE);<br>    }</p> <p>    if ( addition(-8, 0) != -8)<br>    {<br>        return (FALSE);<br>    }</p> <p>    if ( addition(5, -5) != 0)<br>    {<br>        return (FALSE);<br>    }</p> <p>    if ( addition(-5, 2) != -3)<br>    {<br>        return (FALSE);<br>    }</p> <p>    if ( addition(-4, -1) != -5)<br>    {<br>        return (FALSE);<br>    }</p> <p>    return (TRUE);<br>}<br>嫻嬭瘯鐨勬儏鍐靛寘鎷細<br>姝f暟+姝f暟<br>0+0<br>姝f暟+0<br>璐熸暟+0<br>姝f暟+璐熸暟<br>璐熸暟+姝f暟<br>璐熸暟+璐熸暟<br>姣忎竴嬈℃祴璇曢兘鏄氳繃瀵規(guī)瘮琚祴妯″潡鐨勮繑鍥炲煎拰鏈熸湜鍊鹼紝濡傛灉浜岃呬笉鍚岋紝榪斿洖FALSE銆傚鏋滄渶緇堣繑鍥濼RUE錛岃鏄庢ā鍧楅氳繃浜嗘墍鏈夌殑嫻嬭瘯銆?br>榪欎釜鐢ㄤ互嫻嬭瘯鍏朵粬妯″潡鐨勫皬妯″潡錛堝嚱鏁幫級琚О涓篢est Case, 鍏朵腑鍖呭惈浜嗙▼搴忓憳闇瑕佸琚祴鍗曞厓鐨勪竴緋誨垪媯鏌ャ傛瘡涓涓‘璁わ紙瀵硅嫻嬪崟鍏冪殑涓嬈¤皟鐢級閮藉繀欏誨拰琚祴鍗曞厓鐩稿搴斻傚湪榪欎釜渚嬪瓙涓紝媯鏌ヤ簡“姹傚拰鎿嶄綔”鍦ㄦ搷浣滄暟絎﹀彿涓嶅悓鐨勬儏鍐典笅鐨勮繍琛屾儏鍐點傚綋鐒朵簡錛岃繕闇瑕佸彟澶栧啓涓浜汿est Case鏉ラ獙璇佸叾浠栨儏鍐典笅鐨勮繍琛屾儏鍐點傛瘮濡傚叾浠栦竴浜涘父瑙佺殑鍔犳硶緇勫悎銆備緥瀛愬涓嬶細<br>int additionPropertiesTest()<br>{<br>    //conmutative: a + b = b + a<br>    if ( addition(1, 2) != addition(2, 1) )<br>    {<br> return (FALSE);<br>    }</p> <p>    //asociative: a + (b + c) = (a + b) + c<br>    if ( addition(1, addition(2, 3)) != addition(addition(2, 1), 3 ) )<br>    {<br> return (FALSE);<br>    }</p> <p>    //neutral element: a + NEUTRAL = a<br>    if ( addition(10, 0) != 10 )<br>    {<br> return (FALSE);<br>    }</p> <p>    //inverse element: a + INVERSE = NEUTRAL<br>    if ( addition(10, -10) != 0 )<br>    {<br> return (FALSE);<br>    }</p> <p>    return (TRUE);<br>}<br>涓婇潰鐨勪緥瀛愭祴璇曚簡澶氫釜鏁版嵁鐩稿姞欏哄簭涓嶅悓鐨勬儏鍐點?br>涓婅堪鐨勪袱涓猅est Case緇勬垚浜嗕竴涓猅est Suite錛孴est Suite鏄寚鐢ㄦ潵嫻嬭瘯鍚屼竴琚祴鍗曞厓鐨勪竴緇凾est Case銆?br>鍦ㄥ紑鍙戣嫻嬫ā鍧楁椂蹇呴』鍚屾椂緙栧啓榪欎簺Test Case鍜孴est Suite鐨勪唬鐮侊紝琚祴妯″潡鍙樻洿鏃訛紝瑕佸悓鏃跺彉鏇達紙鏈夋椂闇瑕佸鍔狅級鐩稿簲鐨凾est Case鍜孴est Suite銆?br>涓句緥鏉ヨ錛屽綋姹傚拰妯″潡鍗囩駭涓哄彲浠ュ灝忔暟姹傚拰鐨勬ā鍧楋紝灝卞繀欏誨彉鏇碩est Case鍜孴est Suite錛屽姞鍏ヨ濡俛ddDecimalNumbersTest涔嬬被鐨凾est Case銆?br>鏋侀檺緙栫▼寤鴻紼嬪簭鍛樺湪緙栧啓鐩爣妯″潡涔嬪墠灝卞紑鍙戝嚭鎵鏈夊崟鍏冩祴璇曚腑瑕佺敤鍒扮殑Test Case銆傚叾涓昏鐞嗙敱鏄細涓鏃︾▼搴忓憳澶勪簬寮鍙戣繃紼嬩箣涓紝閭d箞浠栧氨榪涘叆浜嗕竴涓寔緇敼榪涚殑闃舵錛屽繀欏誨悓鏃惰冭檻鍗曞厓妯″潡鍔熻兘銆侀渶瑕佸叕甯冪殑鎺ュ彛銆侀渶瑕佺粰鏂規(guī)硶浼犻掔殑鍙傛暟銆佸閮ㄨ闂佸唴閮ㄨ涓虹瓑絳夈傚湪緙栧啓鐩爣鍗曞厓涔嬪墠閫氳繃寮鍙慣est Case錛屽彲浠ュ闇瑕佽冭檻鐨勮繖浜涘洜绱犳湁鏇村ソ鐨勪簡瑙o紝榪欐牱緙栧啓鐩爣妯″潡涓庡叾浠栨柟娉曠浉姣旈熷害浼氭洿蹇紝浠g爜鐨勮川閲忎篃浼氭洿濂姐?br>姣忓綋寮鍙戝洟闃熼渶瑕佸彂甯冩柊鐗堟湰鐨勬椂鍊欙紝閮借榪涜褰誨簳鐨勫崟鍏冩祴璇曘傛墍鏈夌殑鍗曞厓蹇呴』閫氳繃鍗曞厓嫻嬭瘯錛岃繖鏍峰氨鍙互鍙戝竷鎴愬姛鐨勭増鏈傚鏋滄湁1涓垨浠ヤ笂鐨勫崟鍏冩病鏈夐氳繃鎵鏈夌殑嫻嬭瘯錛孊ug灝卞嚭鐜頒簡銆傞亣鍒拌繖縐嶆儏鍐靛氨闇瑕佸湪榪涜嫻嬭瘯錛屽鏋滈渶瑕佺殑璇濊繕闇瑕佸鍔犳柊鐨凾est Case錛屾鏌ュ彲浠ヤ嬌Bug鍐嶇幇鐨勬墍鏈夋儏鍐點傚鏋滄柊鐨凾est Case鍙互浣緽ug閲嶇幇錛屽氨鍙互淇榪欎釜Bug錛岀劧鍚庡啀榪涜嫻嬭瘯錛屽鏋滄ā鍧楅氳繃浜嗘祴璇曪紝灝卞彲浠ヨ涓築ug宸茬粡淇錛屽彲浠ュ彂甯冩柊鐨勬棤Bug鐗堟湰浜嗐?br>涓烘瘡涓涓彂鐜扮殑Bug娣誨姞鏂扮殑Test Case鏄緢鏈夊繀瑕佺殑錛屽洜涓築ug浼氬弽澶嶅嚭鐜幫紝褰撳叾閲嶅鍑虹幇鏃墮渶瑕佹湁鏁堢殑嫻嬭瘯鏉ユ嫻婤ug銆傝繖鏍風(fēng)殑璇濓紝Test Bettery浼氶愭笎鑶ㄨ儉鐩磋嚦瑕嗙洊鎵鏈夌殑鍘嗗彶Bug鍜屾綔鍦ㄧ殑閿欒銆?br>嫻嬭瘯宸ュ叿錛?br>鏈変袱涓皬浼欏瓙錛屼竴涓彨Kent Beck錛屽彟涓涓彨Eric Gamma錛屼粬浠啓浜嗕竴緋誨垪鐨凧ava綾伙紝甯屾湜鍙互鎶婃祴璇曞仛鐨勫敖鍙兘鑷姩鍖栵紝騫剁О涔嬩負JUnit錛孞Unit浣挎暣涓崟鍏冩祴璇曠晫浜х敓鐨勫緢澶х殑闇囧姩銆傚叾浠栫殑寮鍙戣呬滑鎶奐Unit鐨勪唬鐮佺Щ妞嶅埌鍏朵粬璇█涓婏紝鏋勫緩浜嗕竴澶х郴鍒楃О涓簒Unit妗嗘灦鐨勪駭鍝併傚叾鎬誨寘鎷珻/C++鐨凜Unit鍜孋PPUnit錛孌elphi鐨凞Unit錛孷isual Basic鐨刅BUnit錛?NET騫沖彴涓婄殑NUnit錛岀瓑絳夈?br>鎵鏈夎繖浜涙鏋墮兘閲囩敤鍚屾牱鐨勮鍒欙紝瀵硅璦鐨勪緷璧栨у緢灝忥紝鐔熸?zhèn)夊叾涓竴涓鏋跺氨鑳藉鐔熺粌搴旂敤鍏朵粬妗嗘灦銆?br>涓嬮潰瑕佽鐨勬槸濡備綍閫氳繃浣跨敤CPPUnit鏉ョ紪鍐欐祴璇曚唬鐮佸茍鎻愰珮鍗曞厓鐨勮川閲忋?br>CPPUnit閲囩敤闈㈠悜瀵硅薄鐨勭紪紼嬫柟娉曪紝涓棿浼氶亣鍒拌濡傚皝瑁呫佺戶鎵褲佸鎬佽繖浜涙蹇點傚彟澶栵紝CPPUnit閲囩敤C++ SEH錛圫tructured Exception Handling錛夛紝鎵浠ヨ繕浼氶亣鍒板紓甯哥殑姒傚康錛屼互鍙妕hrow, try, finally, catch榪欎簺鎸囦護銆?br>CPPUnit<br>姣忎竴涓猅est Case閮介渶瑕佸湪TestCase綾葷殑媧劇敓綾諱腑瀹氫箟銆俆estCase綾諱腑鍖呭惈浜嗚澶氬熀鏈殑鍔熻兘錛屾瘮濡傝繍琛屾祴璇曘佸湪Test Suite涓敞鍐孴est Case絳夈?br>姣斿鍦ㄩ渶瑕佸啓涓涓湪紓佺洏涓婂瓨鍌ㄦ暟鎹殑灝忔ā鍧楃殑鏃跺欙紝妯″潡錛堝畾涔変負DiskData綾伙級涓昏瀹炵幇涓や釜鍔熻兘錛氳鍙栨暟鎹拰瑁呰澆鏁版嵁銆備緥紼嬪涓嬶細<br>typedef struct _DATA<br>{<br>    int number;<br>    char string[256];<br>}DATA, *LPDATA;</p> <p>class DiskData<br>{<br>public:<br>    DiskData();<br>    ~DiskData();</p> <p>    LPDATA getData();<br>    void setData(LPDATA value);</p> <p>    bool load(char *filename);<br>    bool store(char *filename);</p> <p>private:<br>    DATA m_data;<br>};</p> <p>姝ゆ椂錛岄鍏堣鍋氱殑浜嬫儏涓嶆槸寮勬槑鐧戒笂闈㈢殑浠g爜鏄浣曞彉鍑烘潵鐨勶紝鑰屾槸瑕佺‘瀹氫笂闈㈡墍瀹氫箟鐨勭被鏄惁瀹屾垚浜嗚璁$殑鍏ㄩ儴鍔熻兘鈥斺旀紜湴璇誨彇鍜屽瓨鍌ㄦ暟鎹?/p> <p>涓烘錛岄渶瑕佽璁′竴涓柊鐨凾est Suite錛屽叾涓寘鍚袱涓猅est Case錛氫竴涓鍙栨暟鎹佷竴涓瓨鍌ㄦ暟鎹?/p> <p>浣跨敤CPPUnit</p> <p>鏈鏂扮増鏈殑CPPUnit鍙互鍦?a >http://cppunit.sourceforge.net/</a>涓婂厤璐逛笅杞藉埌錛屽叾涓寘鍚墍鏈夌殑搴撴枃浠躲佹枃妗c佷緥瀛愮▼搴忓拰鍏朵粬鏈夎叮鐨勭礌鏉愩?/p> <p>鍦╓in32鐜涓嬶紝鍙互鍦╒C++錛?.0鎴栨洿鏂扮増鏈級涓嬌鐢–PPUnit錛岀敱浜嶤PPUnit閲囩敤鐨勬槸ANSI C++錛屾墍浠ュ彲搴旂敤浜嶤++ Builder絳夊紑鍙戠幆澧冧腑鐨勭増鏈緝?yōu)畱銆?br>鏋勫緩搴撴枃浠剁殑姝ラ鍙互鍦–PPUnit鍙戝竷鐗堟湰鐨処NSTALL-WIN32.txt鏂囦歡涓壘鍒般傛瀯<br>寤哄ソ搴撴枃浠朵箣鍚庡氨鍙互鐫鎵嬬紪鍐橳est Suite浜嗐?/p> <p>鍦╒C++涓嬬紪鍐欏崟鍏冩祴璇曠▼搴忕殑姝ラ濡備笅錛?br> 鍒涘緩涓涓熀浜嶮FC鐨勫璇濇搴旂敤紼嬪簭錛堟垨鑰呮枃妗e簲鐢ㄧ▼搴忥級<br> 寮鍚疪TTI:Project Settings -> C++ -> C++ Language<br> 鍦╥nclude鐩綍涓姞鍏PPUnit\include:Tools -> Options -> Directories -> Include<br> 榪炴帴cppunitd.lib(闈欐佽繛鎺?鎴栬卌ppunitd_dll.lib(鍔ㄦ佽繛鎺?錛宼estrunnerd.lib銆傚鏋滄槸鍦?#8220;Release”閰嶇疆涓嬬紪璇戯紝鍚屾牱闇瑕佽繛鎺ヨ繖浜涘簱鏂囦歡錛屽彧鏄渶瑕佹妸鍚嶇О涓殑“d”瀛楁瘝鍘繪帀銆?br> 鎷瘋礉testrunnerd.dll鏂囦歡鍒板彲鎵ц鏂囦歡澶圭殑涓嬮潰錛堟垨鑰呰礬寰勪笅鐨勫叾浠栨枃浠跺す涓級錛屽鏋滄槸鍔ㄦ佽繛鎺ョ殑璇濓紝榪橀渶瑕佹嫹璐漜ppunitd_dll.dll錛?#8220;Release”閰嶇疆涓嬮渶瑕佹嫹璐漷estrunner.dll鍜宑ppunit_dll.dll錛夈?/p> <p>閰嶇疆濂戒箣鍚庡嵆鍙互鐫鎵嬭繘琛屽崟鍏冩祴璇曠被緙栫爜浜嗐?/p> <p>寰呮祴璇曠殑DiskData綾伙紝涓昏瀹炵幇涓や釜鍔熻兘錛氳鍙栧拰瀛樺偍紓佺洏涓婄殑鏁版嵁銆傝嫻嬭瘯榪欎袱涓姛鑳斤紝闇瑕佷袱涓猅est Case錛氫竴涓礋璐h鍙栨暟鎹佷竴涓礋璐e瓨鍌ㄦ暟鎹?br>涓嬮潰鏄崟鍏冩祴璇曠被鐨勫畾涔夛細<br>#if !defined(DISKDATA_TESTCASE_H_INCLUDED)<br>#define DISKDATA_TESTCASE_H_INCLUDED</p> <p>#if _MSC_VER > 1000<br>#pragma once<br>#endif // _MSC_VER > 1000</p> <p>#include <cppunit/TestCase.h>//涓轟簡浠庡熀綾籘estCase媧劇敓鏂扮殑嫻嬭瘯綾?br>#include <cppunit/extensions/HelperMacros.h>//鏂逛究蹇熷畾涔夋祴璇曠被鐨勫畯</p> <p>#include "DiskData.h"</p> <p>class DiskDataTestCase : public CppUnit::TestCase<br>{<br>    CPPUNIT_TEST_SUITE(DiskDataTestCase);//瀹氫箟Test Suite鐨勮搗鐐?br> CPPUNIT_TEST(loadTest);//瀹氫箟Test Case<br> CPPUNIT_TEST(storeTest);<br>    CPPUNIT_TEST_SUITE_END();//瀹氫箟Test Suite鐨勭粓鐐?/p> <p>public:<br>    void setUp();<br>    void tearDown();</p> <p>protected:<br>    void loadTest();<br>    void storeTest();</p> <p>private:<br>    DiskData *fixture;<br>};</p> <p>#endif</p> <p>渚嬬▼涓紝DiskDataTestCase綾婚噸杞戒簡涓や釜鏂規(guī)硶錛歴etUp()鍜宼earDown()銆傝繖涓や釜鏂規(guī)硶鍦═est Case寮濮嬪拰緇撴潫鐨勬椂鍊欒嚜鍔ㄨ繍琛屻?/p> <p>嫻嬭瘯閫昏緫鏄湪涓や釜Protected鏂規(guī)硶涓疄鐜扮殑錛岀◢鍚庤娑夊強鍒板浣曚負嫻嬭瘯閫昏緫緙栫爜銆?nbsp;</p> <p>渚嬬▼鐨勬渶鍚庡畾涔変簡鎸囧悜DiskData綾誨瀷鏁版嵁鐨勬寚閽坒ixture錛岀敤浠ヤ繚瀛樻祴璇曡繃紼嬩腑鐨勭洰鏍囧璞°俿etUp()鏄垵濮嬪寲鍑芥暟錛屽湪璋冪敤姣忎竴涓猅est Case涔嬪墠璋冪敤setUp()錛屽悓鏃惰礋璐e垵濮嬪寲鐩爣瀵硅薄銆俆est Case榪愯榪囩▼涓浣跨敤fixture銆傚湪姣忎竴涓猅est Case榪愯緇撴潫涔嬪悗錛岃皟鐢╰earDown()閿姣乫ixture銆傝繖鏍鳳紝姣忔榪愯Test Case鏃舵墍浣跨敤鐨勯兘鏄柊浜х敓鐨刦ixture銆?/p> <p>嫻嬭瘯姝ラ濡備笅錛?br> 寮鍚祴璇曠▼搴?br> 鐐瑰嚮“Run”鎸夐敭<br> 璋冪敤setUp()鏂規(guī)硶錛氬垵濮嬪寲fixture<br> 璋冪敤絎竴涓猅est Case鍑芥暟<br> 璋冪敤tearDown()鏂規(guī)硶錛氶噴鏀緁ixture<br> 璋冪敤setUp()鏂規(guī)硶錛氬垵濮嬪寲fixture<br> 璋冪敤絎簩涓猅est Case鍑芥暟<br> 璋冪敤tearDown()鏂規(guī)硶錛氶噴鏀緁ixture <br> ...</p> <p>緇忚繃緙栫爜錛?br>#include "DiskDataTestCase.h"</p> <p>CPPUNIT_TEST_SUITE_REGISTRATION(DiskDataTestCase);</p> <p><br>void DiskDataTestCase::setUp()<br>{<br>    fixture = new DiskData();<br>}</p> <p>void DiskDataTestCase::tearDown()<br>{<br>    delete fixture;<br>    fixture = NULL;<br>}</p> <p><br>void DiskDataTestCase::loadTest()<br>{<br>    // our load test logic<br>}</p> <p><br>void DiskDataTestCase::storeTest()<br>{<br>    // our store test logic<br>}</p> <p>鐜板湪錛岀紪鐮佸凡緇忓彉寰楅潪甯哥畝鍗曚簡錛歴etUp()鍜宼earDown()瀹炵幇浜嗗垱寤恒侀噴鏀緁ixture錛屼笅闈㈣鍋氱殑灝辨槸涓簂oadTest()銆乻toreTest()緙栫爜浜嗐?/p> <p>Test Case緙栫爜</p> <p>鎼炴竻妤氶渶瑕佹祴璇曢偅浜涙柟闈箣鍚庣殑宸ヤ綔鏄紪鐮佸疄鐜般傚彲浠ラ氳繃浣跨敤搴撳嚱鏁般佺涓夋柟搴撳嚱鏁般乄in32 API鎴栬匔/C++鎿嶄綔絎﹀拰鎸囦護鐨勫唴閮ㄥ睘鎬с?/p> <p>鏈夋椂闇瑕佽緟鍔╃殑鏂囦歡鎴栬呮暟鎹簱琛ㄦ潵瀛樺偍姝g‘鐨勬暟鎹傚湪鏈緥涓紝閫氳繃瀵規(guī)瘮鍐呴儴涓嶆暟鎹拰澶栭儴鏂囦歡鐨勬暟鎹潵鍒ゆ柇緇撴灉鏄惁姝g‘銆?/p> <p>褰撳嚭鐜伴敊璇椂錛堟瘮濡傚唴閮ㄦ暟鎹拰澶栭儴鏁版嵁涓嶅悓錛夛紝闇瑕佹姏鍑哄紓甯搞傚彲浠ラ氳繃CPPUNIT_FAIL(message)瀹忓疄鐜幫紝涔熷彲浠ラ氳繃assertions瀹忓疄鐜般?br>浠ヤ笅鏄竴浜涘父鐢ㄧ殑assertion瀹?<br> CPPUNIT_ASSERT(condition): 媯鏌ondition錛屽涓篺alse錛屾姏鍑哄紓甯?br> CPPUNIT_ASSERT_MESSAGE(message, condition): 媯鏌ondition錛屽涓篺alse錛屾姏鍑哄紓甯革紝騫舵樉紺洪鍏堣瀹氱殑淇℃伅<br> CPPUNIT_ASSERT_EQUAL(expected,current): 媯鏌xpected涓巆urrent鐨勫兼槸鍚︾浉絳夛紝鎶涘嚭寮傚父錛屾樉紺篹xpected鍜宑urrent鐨勫?br> CPPUNIT_ASSERT_EQUAL_MESSAGE(message,expected,current): 媯鏌xpected鐨勫間笌actual鐨勫兼槸鍚︾浉絳夛紝鎶涘嚭寮傚父錛屾樉紺篹xpected,current鐨勫鹼紝騫舵樉紺洪鍏堣瀹氱殑淇℃伅<br> CPPUNIT_ASSERT_DOUBLES_EQUAL(expected,current,delta): 媯鏌xpected, current涔嬪樊鏄惁灝忎簬delta錛屽鏋滀笉灝忎簬錛屾樉紺篹xpected鍜宑urrent鐨勫?/p> <p>涓嬮潰璁蹭竴涓媗oadTest緙栫爜鐨勭紪鐮佹瀯鎯籌細棣栧厛闇瑕佷竴涓閮ㄦ枃浠訛紝鍏朵腑瀛樺偍榪欎竴涓狣ATA鍨嬫暟鎹紝鏂囦歡鐨勫垱寤烘柟寮忓茍涓嶉噸瑕侊紝鍏抽敭鏄淇濊瘉閲岄潰鐨勬暟鎹殑姝g‘鎬с傜劧鍚庯紝瑕佽繘琛岀殑鎿嶄綔鏄鏌oad鍑芥暟浠庡閮ㄦ枃浠朵腑璇誨嚭鐨勬暟鎹拰瀹炵幇瀛樺湪鍏朵腑鐨勬暟鎹槸鍚︿竴鑷淬備唬鐮佸涓嬶細<br>//<br>// 鍓嶆彁錛氬閮ㄦ枃浠朵腑宸插瓨鍌ㄤ簡姝g‘鐨勬暟鎹?br>//<br>#define AUX_FILENAME    "ok_data.dat"<br>#define FILE_NUMBER    19<br>#define FILE_STRING    "this is correct text stored in auxiliar file"</p> <p>void DiskDataTestCase::loadTest()<br>{<br>    // 鐩稿璺緞杞寲涓虹粷瀵硅礬寰?br>    TCHAR    absoluteFilename[MAX_PATH];<br>    DWORD    size = MAX_PATH;</p> <p>    strcpy(absoluteFilename, AUX_FILENAME);<br>    CPPUNIT_ASSERT( RelativeToAbsolutePath(absoluteFilename, &size) );</p> <p>    // 鎵ц鎿嶄綔<br>    CPPUNIT_ASSERT( fixture->load(absoluteFilename) );</p> <p>    // 閫氳繃assertion媯鏌ヨ繍琛岀粨鏋?br>    LPDATA    loadedData = fixture->getData();</p> <p>    CPPUNIT_ASSERT(loadedData != NULL);<br>    CPPUNIT_ASSERT_EQUAL(FILE_NUMBER, loadedData->number);<br>    CPPUNIT_ASSERT( 0 == strcmp(FILE_STRING, <br>            fixture->getData()->string) );<br>}</p> <p>閫氳繃榪欐牱涓涓畝鍗曠殑Test Case嫻嬭瘯浜?涓彲鑳藉瓨鍦ㄧ殑閿欒錛?br> load鍑芥暟榪斿洖鍊?br> getData鍑芥暟榪斿洖鍊?br> number緇撴瀯鐨勬垚鍛樺?br> string緇撴瀯鐨勬垚鍛樺?br> <br>storeTest瑕佸鏉備竴浜涳紝鍥犱負闇瑕佹妸fixture涓殑鏁版嵁瀛樺偍鍒頒復(fù)鏃舵枃浠朵腑錛屼箣鍚庢墦寮涓や釜鏂囦歡錛堟柊鐨勪復(fù)鏃舵枃浠跺拰澶栭儴鏂囦歡錛夛紝璇誨嚭鏁版嵁騫舵瘮鐓у唴瀹廣備唬鐮佸涓嬶細</p> <p>void DiskDataTestCase::storeTest()<br>{<br>    DATA    d;<br>    DWORD   tmpSize, auxSize;<br>    BYTE    *tmpBuff, *auxBuff;<br>    TCHAR   absoluteFilename[MAX_PATH];<br>    DWORD   size = MAX_PATH;</p> <p>    // 濉厖緇撴瀯浣?br>    d.number = FILE_NUMBER;<br>    strcpy(d.string, FILE_STRING);</p> <p>    // 鐩稿璺緞杞寲涓虹粷瀵硅礬寰?/p> <p>    strcpy(absoluteFilename, AUX_FILENAME);<br>    CPPUNIT_ASSERT( RelativeToAbsolutePath(absoluteFilename, &size) );</p> <p>    // 鎵ц鎿嶄綔<br>    fixture->setData(&d);<br>    CPPUNIT_ASSERT( fixture->store("data.tmp") );</p> <p>    // 璇誨嚭涓ゆ枃浠剁殑鍐呭騫跺姣?br>    // ReadAllFileInMemory 鏄竴涓垎閰嶇紦鍐插尯鐨勫閮ㄥ嚱鏁?br>    // 鎶婃枃浠跺唴瀹瑰瓨鍏ュ叾涓? 璋冪敤鍑芥暟璐熻矗閲婃斁緙撳啿鍖?<br>    tmpSize = ReadAllFileInMemory("data.tmp", tmpBuff);<br>    auxSize = ReadAllFileInMemory(absoluteFilename, auxBuff);</p> <p>    // 鏂囦歡涓嶅瓨鍦ㄥ垯鎶涘嚭寮傚父<br>    CPPUNIT_ASSERT_MESSAGE("New file doesn't exists?", tmpSize > 0);<br>    CPPUNIT_ASSERT_MESSAGE("Aux file doesn't exists?", auxSize > 0);</p> <p>    // 鏂囦歡澶у皬鍙幏寰楋紝鍚﹀垯鎶涘嚭寮傚父<br>    CPPUNIT_ASSERT(tmpSize != 0xFFFFFFFF);<br>    CPPUNIT_ASSERT(auxSize != 0xFFFFFFFF);</p> <p>    // 緙撳啿鍖哄繀欏誨彲鐢紝鍚﹀垯鎶涘嚭寮傚父<br>    CPPUNIT_ASSERT(tmpBuff != NULL);<br>    CPPUNIT_ASSERT(auxBuff != NULL);</p> <p>    // 涓や釜鏂囦歡鐨勫ぇ灝忓繀欏誨拰DATA涓鑷?br>    CPPUNIT_ASSERT_EQUAL((DWORD) sizeof(DATA), tmpSize);<br>    CPPUNIT_ASSERT_EQUAL(auxSize, tmpSize);</p> <p>    // 涓ゆ枃浠剁殑鍐呭蹇呴』涓鑷?br>    CPPUNIT_ASSERT( 0 == memcmp(tmpBuff, auxBuff, sizeof(DATA)) );</p> <p>    delete [] tmpBuff;<br>    delete [] auxBuff;</p> <p>    ::DeleteFile("data.tmp");<br>}</p> <p>鍚姩鐢ㄦ埛鐣岄潰<br>鏈鍚庯紝鐪嬬湅濡備綍鏄劇ず鍩轟簬MFC鐨勭敤鎴風(fēng)晫闈㈠璇濇錛堜簨鍏堝湪鍏跺唴閮ㄧ紪璇戜簡TestRunner.dll錛夈?/p> <p>鎵撳紑瀹炵幇綾葷殑鏂囦歡錛圥rojectNameApp.cpp錛夛紝鎶婁笅鍒椾唬鐮佸鍒跺埌InitInstance鏂規(guī)硶涓細<br>#include <cppunit/ui/mfc/TestRunner.h><br>#include <cppunit/extensions/TestFactoryRegistry.h></p> <p>BOOL CMy_TestsApp::InitInstance()<br>{<br>    ....</p> <p>    // 澹版槑Test Runner錛岀敤浠ユ敞鍐岀殑嫻嬭瘯濉叆鍏朵腑錛屽茍榪愯<br>    CppUnit::MfcUi::TestRunner runner;</p> <p>    runner.addTest( CppUnit::TestFactoryRegistry::getRegistry().makeTest() );</p> <p>    runner.run();    </p> <p>    return TRUE;<br>}<br> <br>寰堢畝鍗曪紝涓嶆槸鍚楋紵鍙渶瑕佸畾涔変竴涓?runner"瀹炰緥錛屾坊鍔犳敞鍐岃繃鐨則est錛坱est鏄氳繃CPP鏂囦歡涓殑CPPUNIT_TEST_SUITE_REGISTRATION瀹忔敞鍐岀殑錛夛紝灝卞彲浠ヨ繍琛宺un鍑芥暟浜嗐?/p> <p>緙栬瘧銆佽繍琛岋紝寮濮嬩綘鐨勫崟鍏冩祴璇曞惂:)</p> <img src ="http://www.shnenglu.com/leetaolion/aggbug/24882.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.shnenglu.com/leetaolion/" target="_blank">鍒涘緩鏇村ソ鐨勮В鍐蟲柟妗?/a> 2007-05-26 10:53 <a href="http://www.shnenglu.com/leetaolion/archive/2007/05/26/24882.html#Feedback" target="_blank" style="text-decoration:none;">鍙戣〃璇勮</a></div>]]></description></item></channel></rss> <a href="http://www.shnenglu.com/">青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品</a> <div style="position:fixed;left:-9000px;top:-9000px;"><font id="pjuwb"></font><button id="pjuwb"><pre id="pjuwb"></pre></button><sub id="pjuwb"></sub><tbody id="pjuwb"><var id="pjuwb"><address id="pjuwb"></address></var></tbody><listing id="pjuwb"><label id="pjuwb"><strong id="pjuwb"></strong></label></listing><wbr id="pjuwb"><small id="pjuwb"><tbody id="pjuwb"></tbody></small></wbr><ins id="pjuwb"><xmp id="pjuwb"></xmp></ins><style id="pjuwb"></style><label id="pjuwb"><em id="pjuwb"><li id="pjuwb"></li></em></label><samp id="pjuwb"></samp><menu id="pjuwb"><input id="pjuwb"></input></menu><pre id="pjuwb"><tbody id="pjuwb"><tfoot id="pjuwb"><button id="pjuwb"></button></tfoot></tbody></pre><form id="pjuwb"></form><i id="pjuwb"><style id="pjuwb"><label id="pjuwb"><sup id="pjuwb"></sup></label></style></i><li id="pjuwb"><table id="pjuwb"><abbr id="pjuwb"></abbr></table></li><video id="pjuwb"></video><dfn id="pjuwb"></dfn><progress id="pjuwb"></progress><strong id="pjuwb"></strong><mark id="pjuwb"></mark><em id="pjuwb"></em><tbody id="pjuwb"><p id="pjuwb"><strike id="pjuwb"><acronym id="pjuwb"></acronym></strike></p></tbody><option id="pjuwb"></option><strike id="pjuwb"></strike><u id="pjuwb"></u><td id="pjuwb"><center id="pjuwb"><tr id="pjuwb"></tr></center></td><em id="pjuwb"><mark id="pjuwb"><em id="pjuwb"><tt id="pjuwb"></tt></em></mark></em><strong id="pjuwb"></strong><wbr id="pjuwb"></wbr><s id="pjuwb"></s><strong id="pjuwb"></strong><legend id="pjuwb"></legend><nav id="pjuwb"></nav><dl id="pjuwb"><th id="pjuwb"><dl id="pjuwb"></dl></th></dl><noframes id="pjuwb"><ins id="pjuwb"></ins></noframes><font id="pjuwb"></font><strike id="pjuwb"><i id="pjuwb"><style id="pjuwb"><label id="pjuwb"></label></style></i></strike><output id="pjuwb"></output><thead id="pjuwb"><pre id="pjuwb"></pre></thead><source id="pjuwb"></source><menuitem id="pjuwb"><wbr id="pjuwb"></wbr></menuitem><pre id="pjuwb"><span id="pjuwb"><pre id="pjuwb"><big id="pjuwb"></big></pre></span></pre><cite id="pjuwb"><fieldset id="pjuwb"><s id="pjuwb"><rt id="pjuwb"></rt></s></fieldset></cite><big id="pjuwb"><progress id="pjuwb"><big id="pjuwb"></big></progress></big><samp id="pjuwb"><delect id="pjuwb"></delect></samp><dl id="pjuwb"></dl><strike id="pjuwb"><nav id="pjuwb"><dl id="pjuwb"><strong id="pjuwb"></strong></dl></nav></strike><tbody id="pjuwb"><b id="pjuwb"><optgroup id="pjuwb"><rp id="pjuwb"></rp></optgroup></b></tbody><em id="pjuwb"></em><xmp id="pjuwb"><blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote></xmp> <i id="pjuwb"><abbr id="pjuwb"><i id="pjuwb"><abbr id="pjuwb"></abbr></i></abbr></i><center id="pjuwb"><acronym id="pjuwb"><center id="pjuwb"></center></acronym></center><pre id="pjuwb"></pre><ul id="pjuwb"><thead id="pjuwb"></thead></ul><blockquote id="pjuwb"><pre id="pjuwb"><sup id="pjuwb"></sup></pre></blockquote><acronym id="pjuwb"></acronym><big id="pjuwb"><s id="pjuwb"></s></big><th id="pjuwb"></th><th id="pjuwb"></th><tbody id="pjuwb"></tbody><thead id="pjuwb"><strike id="pjuwb"></strike></thead><th id="pjuwb"><dl id="pjuwb"><wbr id="pjuwb"></wbr></dl></th><dl id="pjuwb"><strong id="pjuwb"></strong></dl><abbr id="pjuwb"><noframes id="pjuwb"><noscript id="pjuwb"></noscript></noframes></abbr><td id="pjuwb"><ol id="pjuwb"></ol></td><li id="pjuwb"><noscript id="pjuwb"><abbr id="pjuwb"></abbr></noscript></li><small id="pjuwb"><bdo id="pjuwb"><nav id="pjuwb"></nav></bdo></small><style id="pjuwb"></style><optgroup id="pjuwb"><table id="pjuwb"></table></optgroup><center id="pjuwb"><tr id="pjuwb"><dfn id="pjuwb"></dfn></tr></center><th id="pjuwb"></th><u id="pjuwb"></u><tfoot id="pjuwb"><legend id="pjuwb"><i id="pjuwb"></i></legend></tfoot><mark id="pjuwb"></mark><meter id="pjuwb"></meter><nav id="pjuwb"></nav><acronym id="pjuwb"><pre id="pjuwb"><acronym id="pjuwb"><ul id="pjuwb"></ul></acronym></pre></acronym><acronym id="pjuwb"><pre id="pjuwb"><acronym id="pjuwb"><ul id="pjuwb"></ul></acronym></pre></acronym><nobr id="pjuwb"></nobr><sub id="pjuwb"><th id="pjuwb"><menuitem id="pjuwb"><wbr id="pjuwb"></wbr></menuitem></th></sub><thead id="pjuwb"><sub id="pjuwb"></sub></thead><ul id="pjuwb"><address id="pjuwb"><menuitem id="pjuwb"><meter id="pjuwb"></meter></menuitem></address></ul><dfn id="pjuwb"></dfn><pre id="pjuwb"></pre><input id="pjuwb"><cite id="pjuwb"><fieldset id="pjuwb"></fieldset></cite></input><u id="pjuwb"><form id="pjuwb"><u id="pjuwb"></u></form></u><kbd id="pjuwb"><em id="pjuwb"><mark id="pjuwb"></mark></em></kbd><tr id="pjuwb"></tr><del id="pjuwb"><form id="pjuwb"><address id="pjuwb"></address></form></del><tfoot id="pjuwb"><legend id="pjuwb"><ol id="pjuwb"><dl id="pjuwb"></dl></ol></legend></tfoot><menu id="pjuwb"><nobr id="pjuwb"><th id="pjuwb"><nobr id="pjuwb"></nobr></th></nobr></menu><fieldset id="pjuwb"></fieldset><pre id="pjuwb"><blockquote id="pjuwb"><samp id="pjuwb"></samp></blockquote></pre><xmp id="pjuwb"><sup id="pjuwb"><pre id="pjuwb"></pre></sup></xmp><span id="pjuwb"><progress id="pjuwb"></progress></span><font id="pjuwb"></font><var id="pjuwb"><abbr id="pjuwb"></abbr></var><strong id="pjuwb"><label id="pjuwb"><i id="pjuwb"><legend id="pjuwb"></legend></i></label></strong><tr id="pjuwb"><em id="pjuwb"><em id="pjuwb"><output id="pjuwb"></output></em></em></tr><thead id="pjuwb"><strike id="pjuwb"></strike></thead> <acronym id="pjuwb"></acronym><i id="pjuwb"></i><tt id="pjuwb"></tt><rt id="pjuwb"><source id="pjuwb"><rt id="pjuwb"></rt></source></rt><strike id="pjuwb"><acronym id="pjuwb"></acronym></strike><del id="pjuwb"></del><font id="pjuwb"><output id="pjuwb"><ins id="pjuwb"><output id="pjuwb"></output></ins></output></font><kbd id="pjuwb"><tr id="pjuwb"><kbd id="pjuwb"></kbd></tr></kbd><pre id="pjuwb"><sup id="pjuwb"><delect id="pjuwb"><samp id="pjuwb"></samp></delect></sup></pre><samp id="pjuwb"></samp><track id="pjuwb"></track><tr id="pjuwb"></tr><center id="pjuwb"></center><fieldset id="pjuwb"></fieldset><i id="pjuwb"></i><td id="pjuwb"></td><rt id="pjuwb"></rt><object id="pjuwb"></object><pre id="pjuwb"><progress id="pjuwb"><sub id="pjuwb"><thead id="pjuwb"></thead></sub></progress></pre><kbd id="pjuwb"><tr id="pjuwb"><option id="pjuwb"></option></tr></kbd><output id="pjuwb"><ins id="pjuwb"></ins></output><ol id="pjuwb"></ol><source id="pjuwb"></source><strong id="pjuwb"></strong><ruby id="pjuwb"></ruby><sub id="pjuwb"><meter id="pjuwb"><menuitem id="pjuwb"><meter id="pjuwb"></meter></menuitem></meter></sub><pre id="pjuwb"></pre><center id="pjuwb"></center><tr id="pjuwb"><tbody id="pjuwb"><xmp id="pjuwb"><dd id="pjuwb"></dd></xmp></tbody></tr><video id="pjuwb"></video><pre id="pjuwb"></pre><form id="pjuwb"><optgroup id="pjuwb"></optgroup></form><samp id="pjuwb"></samp><kbd id="pjuwb"></kbd><strong id="pjuwb"><option id="pjuwb"></option></strong><object id="pjuwb"></object><abbr id="pjuwb"><noframes id="pjuwb"><abbr id="pjuwb"></abbr></noframes></abbr><ul id="pjuwb"><del id="pjuwb"><button id="pjuwb"><pre id="pjuwb"></pre></button></del></ul><abbr id="pjuwb"></abbr><strong id="pjuwb"><code id="pjuwb"><strong id="pjuwb"></strong></code></strong><option id="pjuwb"></option><optgroup id="pjuwb"><bdo id="pjuwb"><code id="pjuwb"></code></bdo></optgroup><mark id="pjuwb"><em id="pjuwb"><font id="pjuwb"></font></em></mark><acronym id="pjuwb"><code id="pjuwb"></code></acronym><dl id="pjuwb"></dl><em id="pjuwb"></em><object id="pjuwb"><input id="pjuwb"><object id="pjuwb"></object></input></object><output id="pjuwb"><dd id="pjuwb"></dd></output><option id="pjuwb"><button id="pjuwb"><option id="pjuwb"></option></button></option><small id="pjuwb"></small></div> <a href="http://caokk1.com" target="_blank">欧美日韩高清在线播放</a>| <a href="http://www249aaa.com" target="_blank">欧美一区2区视频在线观看</a>| <a href="http://www-236677.com" target="_blank">免费欧美在线</a>| <a href="http://goutoujunshi.com" target="_blank">亚洲欧洲精品一区二区三区波多野1战4 </a>| <a href="http://a718fun.com" target="_blank">国产一区清纯</a>| <a href="http://8x1080x.com" target="_blank">久久综合九九</a>| <a href="http://7115866.com" target="_blank">欧美高清你懂得</a>| <a href="http://5s5s5s.com" target="_blank">亚洲欧美中文日韩v在线观看</a>| <a href="http://520637.com" target="_blank">亚洲一区日韩在线</a>| <a href="http://xxxx43.com" target="_blank">狠狠色综合日日</a>| <a href="http://02326a.com" target="_blank">亚洲激情国产</a>| <a href="http://7788444.com" target="_blank">欧美日本国产</a>| <a href="http://irongxun.com" target="_blank">久久精品国产亚洲aⅴ</a>| <a href="http://oudaole.com" target="_blank">久久午夜激情</a>| <a href="http://jzsp101.com" target="_blank">亚洲一区二区三区高清</a>| <a href="http://jzsp121.com" target="_blank">午夜久久tv</a>| <a href="http://devmashup.com" target="_blank">久久免费黄色</a>| <a href="http://737sihu.com" target="_blank">亚洲一区精品在线</a>| <a href="http://zjjieda.com" target="_blank">久久久999精品免费</a>| <a href="http://060969.com" target="_blank">亚洲精品免费电影</a>| <a href="http://beeperagain.com" target="_blank">亚洲一区二区三区四区五区午夜 </a>| <a href="http://wxtarena.com" target="_blank">久久久久久久久久码影片</a>| <a href="http://whrcjy.com" target="_blank">亚洲精品一区二区三区蜜桃久</a>| <a href="http://dtwave-ind.com" target="_blank">夜色激情一区二区</a>| <a href="http://990288.com" target="_blank">尤物99国产成人精品视频</a>| <a href="http://www5123ri.com" target="_blank">亚洲精品美女在线观看</a>| <a href="http://jldianda.com" target="_blank">国产手机视频一区二区</a>| <a href="http://www330088.com" target="_blank">亚洲激情成人</a>| <a href="http://91see8.com" target="_blank">韩日午夜在线资源一区二区</a>| <a href="http://eastasp.com" target="_blank">亚洲日产国产精品</a>| <a href="http://xyyssa.com" target="_blank">国内精品久久久久久久果冻传媒</a>| <a href="http://928uc.com" target="_blank">亚洲欧洲日本国产</a>| <a href="http://0999555.com" target="_blank">国内一区二区在线视频观看</a>| <a href="http://jiyixitong.com" target="_blank">999在线观看精品免费不卡网站</a>| <a href="http://858185gg.com" target="_blank">国产亚洲视频在线</a>| <a href="http://ktokt.com" target="_blank">中日韩在线视频</a>| <a href="http://h7yy.com" target="_blank">亚洲国产三级在线</a>| <a href="http://www35353.com" target="_blank">久久大综合网</a>| <a href="http://1369080.com" target="_blank">午夜亚洲性色福利视频</a>| <a href="http://8xxjj.com" target="_blank">欧美绝品在线观看成人午夜影视</a>| <a href="http://www-6410c.com" target="_blank">久久久国产成人精品</a>| <a href="http://4379d.com" target="_blank">欧美手机在线</a>| <a href="http://www-49hk.com" target="_blank">亚洲激情在线激情</a>| <a href="http://www-273111.com" target="_blank">亚洲电影在线看</a>| <a href="http://clgtzz.com" target="_blank">新67194成人永久网站</a>| <a href="http://9952222.com" target="_blank">亚洲一区二区三区影院</a>| <a href="http://lymzdd.com" target="_blank">欧美经典一区二区</a>| <a href="http://2312138.com" target="_blank">欧美高清不卡在线</a>| <a href="http://lovehefei.com" target="_blank">在线看不卡av</a>| <a href="http://hkjccc.com" target="_blank">久久久久成人精品免费播放动漫</a>| <a href="http://kakatok.com" target="_blank">亚洲欧美日本日韩</a>| <a href="http://448968.com" target="_blank">国产精品国产三级欧美二区</a>| <a href="http://5456yy.com" target="_blank">亚洲三级电影全部在线观看高清</a>| <a href="http://kongtou8.com" target="_blank">136国产福利精品导航网址</a>| <a href="http://sdjinchuan.com" target="_blank">亚洲欧美在线一区</a>| <a href="http://677679.com" target="_blank">亚洲欧美激情诱惑</a>| <a href="http://myasker.com" target="_blank">国产精品都在这里</a>| <a href="http://aydsrmyy.com" target="_blank">中文日韩在线视频</a>| <a href="http://216667.com" target="_blank">亚洲小视频在线</a>| <a href="http://bbbbyb.com" target="_blank">欧美视频网站</a>| <a href="http://848585.com" target="_blank">一区二区三区四区五区精品</a>| <a href="http://www48929.com" target="_blank">在线视频精品一区</a>| <a href="http://238918.com" target="_blank">欧美三级电影精品</a>| <a href="http://www92444.com" target="_blank">在线一区观看</a>| <a href="http://wy77777.com" target="_blank">午夜视频久久久</a>| <a href="http://bjzgmember.com" target="_blank">国产精品私房写真福利视频</a>| <a href="http://979695.com" target="_blank">亚洲一区在线直播</a>| <a href="http://zgslwtc.com" target="_blank">久久精品论坛</a>| <a href="http://sishengnv.com" target="_blank">在线观看亚洲视频</a>| <a href="http://cnchtx.com" target="_blank">美女精品在线观看</a>| <a href="http://musicshq.com" target="_blank">亚洲国产精品小视频</a>| <a href="http://caox8.com" target="_blank">99视频热这里只有精品免费</a>| <a href="http://www-4890.com" target="_blank">欧美另类视频在线</a>| <a href="http://b46n.com" target="_blank">中文精品视频</a>| <a href="http://yunpiwang.com" target="_blank">欧美在线一二三四区</a>| <a href="http://www456456.com" target="_blank">国产亚洲一区精品</a>| <a href="http://www381818.com" target="_blank">久久免费精品视频</a>| <a href="http://251aaa.com" target="_blank">亚洲欧洲在线一区</a>| <a href="http://www-34909.com" target="_blank">亚洲午夜激情</a>| <a href="http://114499com.com" target="_blank">国产欧美日韩一区二区三区在线观看 </a>| <a href="http://69jp.com" target="_blank">国精产品99永久一区一区</a>| <a href="http://497988.com" target="_blank">亚洲欧美综合另类中字</a>| <a href="http://www47777.com" target="_blank">久久国产精彩视频</a>| <a href="http://ylsnuha.com" target="_blank">亚洲福利精品</a>| <a href="http://baigoso.com" target="_blank">欧美人成网站</a>| <a href="http://zyjzz.com" target="_blank">午夜亚洲福利</a>| <a href="http://zw1019.com" target="_blank">欧美激情亚洲综合一区</a>| <a href="http://80hogo.com" target="_blank">一区二区三区不卡视频在线观看 </a>| <a href="http://608u.com" target="_blank">亚洲在线视频观看</a>| <a href="http://4186a.com" target="_blank">国产一区二区三区免费不卡</a>| <a href="http://caihongie.com" target="_blank">久久综合伊人77777麻豆</a>| <a href="http://6567ya.com" target="_blank">亚洲人成久久</a>| <a href="http://hhhtalk.com" target="_blank">性色一区二区</a>| <a href="http://sifeksa.com" target="_blank">亚洲激情女人</a>| <a href="http://xilxx.com" target="_blank">国产女人18毛片水18精品</a>| <a href="http://hicao32.com" target="_blank">久久久久国内</a>| <a href="http://y4088.com" target="_blank">亚洲性感美女99在线</a>| <a href="http://balqueen.com" target="_blank">久久亚洲精品一区二区</a>| <a href="http://13501680.com" target="_blank">日韩视频一区二区三区</a>| <a href="http://scptw.com" target="_blank">国产欧美一区二区三区久久</a>| <a href="http://1332233.com" target="_blank">蜜乳av另类精品一区二区</a>| <a href="http://3534m.com" target="_blank">一本色道久久88综合亚洲精品ⅰ</a>| <a href="http://987kt.com" target="_blank">久久久久国产精品一区二区</a>| <a href="http://srojsy.com" target="_blank">日韩一级免费</a>| <a href="http://xjhzgy.com" target="_blank">尤物九九久久国产精品的分类</a>| <a href="http://567acg.com" target="_blank">欧美大片第1页</a>| <a href="http://69ru.com" target="_blank">午夜在线一区二区</a>| <a href="http://junhuatesu.com" target="_blank">亚洲欧洲精品一区</a>| <a href="http://phitris.com" target="_blank">久久香蕉精品</a>| <a href="http://xingcheny.com" target="_blank">亚洲在线观看视频网站</a>| <a href="http://54zcr.com" target="_blank">亚洲区免费影片</a>| <a href="http://17vx.com" target="_blank">国产丝袜一区二区</a>| <a href="http://9486322.com" target="_blank">欧美日韩一二三四五区</a>| <a href="http://482896.com" target="_blank">看片网站欧美日韩</a>| <a href="http://033232.com" target="_blank">欧美一区二区三区免费在线看</a>| <a href="http://mes-dvd.com" target="_blank">亚洲国产一区二区视频</a>| <a href="http://shruhan.com" target="_blank">久久理论片午夜琪琪电影网</a>| <a href="http://dkmcjc.com" target="_blank">亚洲欧美999</a>| <a href="http://kk8586.com" target="_blank">9色精品在线</a>| <a href="http://489633.com" target="_blank">亚洲国产精品成人综合色在线婷婷 </a>| <a href="http://7v51.com" target="_blank">99成人在线</a>| <a href="http://avtbr123.com" target="_blank">亚洲第一网站</a>| <a href="http://music444.com" target="_blank">久久综合九色综合网站</a>| <a href="http://x946.com" target="_blank">香蕉精品999视频一区二区</a>| <a href="http://0061366.com" target="_blank">中文网丁香综合网</a>| <a href="http://pp88qq.com" target="_blank">亚洲免费观看在线视频</a>| <a href="http://www-544778.com" target="_blank">亚洲国产91</a>| <a href="http://329aaa.com" target="_blank">伊人久久婷婷</a>| <a href="http://118936.com" target="_blank">激情欧美日韩一区</a>| <a href="http://928uc.com" target="_blank">国产一区二区在线观看免费播放</a>| <a href="http://www92y.com" target="_blank">欧美视频二区36p</a>| <a href="http://b1768.com" target="_blank">欧美美女福利视频</a>| <a href="http://pao449.com" target="_blank">欧美精品一区三区在线观看</a>| <a href="http://zgztby.com" target="_blank">两个人的视频www国产精品</a>| <a href="http://www442222.com" target="_blank">欧美中日韩免费视频</a>| <a href="http://422608.com" target="_blank">亚洲欧美综合国产精品一区</a>| <a href="http://797298.com" target="_blank">亚洲专区在线视频</a>| <a href="http://710195.com" target="_blank">亚洲一区在线直播</a>| <a href="http://www962aa.com" target="_blank">亚洲欧美怡红院</a>| <a href="http://969093.com" target="_blank">午夜亚洲伦理</a>| <a href="http://papala4444.com" target="_blank">小黄鸭精品密入口导航</a>| <a href="http://xxxsxx.com" target="_blank">欧美一区二区三区免费观看视频</a>| <a href="http://596361.com" target="_blank">午夜精品免费</a>| <a href="http://xingba999.com" target="_blank">欧美与黑人午夜性猛交久久久</a>| <a href="http://www895pao.com" target="_blank">亚洲一区二区四区</a>| <a href="http://e7w2.com" target="_blank">亚洲欧美不卡</a>| <a href="http://008528.com" target="_blank">欧美一级片在线播放</a>| <a href="http://www311pi.com" target="_blank">欧美影院一区</a>| <a href="http://428368.com" target="_blank">久久久久国产精品麻豆ai换脸</a>| <a href="http://www-893333.com" target="_blank">欧美在线视频不卡</a>| <a href="http://25axxa.com" target="_blank">激情五月***国产精品</a>| <a href="http://ffff53.com" target="_blank">欧美日韩一区二区三区在线观看免 </a>| <a href="http://4399360.com" target="_blank">欧美v日韩v国产v</a>| <a href="http://mm77gg.com" target="_blank">欧美激情亚洲另类</a>| <a href="http://xiehaihua.com" target="_blank">亚洲精品免费一二三区</a>| <a href="http://ahhyez.com" target="_blank">99精品热视频只有精品10</a>| <a href="http://baidijs.com" target="_blank">9色精品在线</a>| <a href="http://yeyesaoqi.com" target="_blank">亚洲一区久久</a>| <a href="http://215920.com" target="_blank">久久久久久久999精品视频</a>| <a href="http://yp77741.com" target="_blank">久久人人看视频</a>| <a href="http://1588vip.com" target="_blank">欧美日韩不卡一区</a>| <a href="http://zzmzit.com" target="_blank">国产精品青草久久久久福利99</a>| <a href="http://luluse882.com" target="_blank">国产乱理伦片在线观看夜一区 </a>| <a href="http://liandezhi.com" target="_blank">久久婷婷激情</a>| <a href="http://hsxinbao.com" target="_blank">欧美高清视频在线</a>| <a href="http://sao320.com" target="_blank">国产精品国产亚洲精品看不卡15</a>| <a href="http://huaihuaihuai.com" target="_blank">国产欧美日韩精品a在线观看</a>| <a href="http://my88855.com" target="_blank">国产一级精品aaaaa看</a>| <a href="http://710557.com" target="_blank">亚洲国产美女久久久久</a>| <a href="http://k82net.com" target="_blank">一区二区三欧美</a>| <a href="http://456985.com" target="_blank">久久成人一区</a>| <a href="http://xss521.com" target="_blank">亚洲盗摄视频</a>| <a href="http://essuee.com" target="_blank">亚洲在线一区</a>| <a href="http://160160160.com" target="_blank">久久综合久久久</a>| <a href="http://m10669.com" target="_blank">国产精品ⅴa在线观看h</a>| <a href="http://evaporsllc.com" target="_blank">国产原创一区二区</a>| <a href="http://by3259.com" target="_blank">一本色道88久久加勒比精品 </a>| <a href="http://5yy6.com" target="_blank">亚洲一区综合</a>| <a href="http://showrti.com" target="_blank">美女脱光内衣内裤视频久久影院</a>| <a href="http://www11108b.com" target="_blank">亚洲精美视频</a>| <a href="http://4439x9.com" target="_blank">久久成人18免费观看</a>| <a href="http://qvod777.com" target="_blank">欧美日韩成人综合在线一区二区</a>| <a href="http://917729.com" target="_blank">国产日本亚洲高清</a>| <a href="http://zhenhaozu.com" target="_blank">亚洲美女免费视频</a>| <a href="http://448968.com" target="_blank">久久人91精品久久久久久不卡</a>| <a href="http://avtt0.com" target="_blank">亚洲精品国产精品国自产观看</a>| <a href="http://www52y.com" target="_blank">午夜精品亚洲</a>| <a href="http://97aixxxx.com" target="_blank">欧美三级视频在线观看</a>| <a href="http://4446666.com" target="_blank">永久免费毛片在线播放不卡</a>| <a href="http://wwwavtb2049.com" target="_blank">亚洲午夜一区</a>| <a href="http://teqmeta.com" target="_blank">欧美国产日本高清在线</a>| <a href="http://liandezhi.com" target="_blank">香蕉成人啪国产精品视频综合网</a>| <a href="http://ythbhg.com" target="_blank">欧美成人精品不卡视频在线观看</a>| <a href="http://428368.com" target="_blank">国产欧美一区二区精品仙草咪</a>| <a href="http://shaijia123.com" target="_blank">亚洲欧洲精品一区</a>| <a href="http://proenhub.com" target="_blank">免费观看成人www动漫视频</a>| <a href="http://44cgcg.com" target="_blank">亚洲影视中文字幕</a>| <a href="http://fs-nanxiang.com" target="_blank">欧美片在线观看</a>| <a href="http://baigoso.com" target="_blank">亚洲福利在线看</a>| <a href="http://yckjwb.com" target="_blank">久久艳片www.17c.com</a>| <script> (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })(); </script> </body>