注冊 | 登錄讀書好,好讀書,讀好書!
讀書網(wǎng)-DuShu.com
當(dāng)前位置: 首頁出版圖書科學(xué)技術(shù)計算機/網(wǎng)絡(luò)軟件與程序設(shè)計JAVA及其相關(guān)JUnit IN ACTION中文版

JUnit IN ACTION中文版

JUnit IN ACTION中文版

定 價:¥39.00

作 者: (美)Vincent Massol著;鮑志云譯;鮑志云譯
出版社: 電子工業(yè)出版社
叢編項: Java人的工具箱系列
標(biāo) 簽: 軟件測試及維護(hù)

ISBN: 9787121004834 出版時間: 2004-10-01 包裝: 膠版紙
開本: 23cm 頁數(shù): 388 字?jǐn)?shù):  

內(nèi)容簡介

  本書特色★一本實例驅(qū)動的教你"怎樣做"的書。★IT名社Manning頂尖佳作完美中文化!★大受好評的Java單元測試工具JUnit經(jīng)典書籍?!顰mazon網(wǎng)站全五星一致推薦!★JUnit社群已經(jīng)采納本書中一些最佳實踐?!颙Unit框架已經(jīng)使用本書中一些著名的設(shè)計模式。內(nèi)容簡介·用mockobjects進(jìn)行隔離測試·用Cactus進(jìn)行容器內(nèi)測試·用Ant和Maven進(jìn)行自動構(gòu)建·在Eclipse內(nèi)進(jìn)行測試·對如下內(nèi)容進(jìn)行單元測試◆Java應(yīng)用程序◆Filter◆Servlet◆EJB◆JSP◆數(shù)據(jù)庫應(yīng)用程序◆Taglib本書主要介紹了在Java軟件開發(fā)中使用JUnit進(jìn)行測試的原則、技巧與實踐,深入闡述如何編寫自動測試,把一段代碼隔離開來測試有什么好處,如何判斷何時需要進(jìn)行整合測試,并對如何測試完整的J2EE應(yīng)用進(jìn)行了極具價值的討論。本書富含開發(fā)實踐當(dāng)中的真實案例,以專家手筆討論了實踐中的測試技術(shù),主要內(nèi)容包括:用mockobjects進(jìn)行隔離測試;用Cactus進(jìn)行容器內(nèi)測試;用Ant和Maven進(jìn)行自動構(gòu)建;在Eclipse內(nèi)進(jìn)行測試;對Java應(yīng)用程序、Filter、Servlet、EJB、JSP、數(shù)據(jù)庫應(yīng)用程序、Taglib等進(jìn)行單元測試。本書適合于在Java平臺下進(jìn)行各類軟件開發(fā)的開發(fā)人員、測試人員、單元測試研習(xí)者以及編程愛好者閱讀和學(xué)習(xí),具有極高的參考價值。熟知業(yè)界動向的開發(fā)者正在轉(zhuǎn)向一種新的測試策略:單元測試。在單元測試中,代碼和測試互相交織。這種強有力的方法會讓軟件具有更好的設(shè)計、更少的缺陷、更快的交付周期。單元測試以"能激勵開發(fā)者的士氣"聞名:每當(dāng)開發(fā)者往前邁進(jìn)一步,他們的信心也隨之增加,因為他們知道以前邁出的每一步都踏踏實實、正確無誤。JUnitinAction這本書能讓你快速開始這一新的編程方式。在編程時你無可避免地會常常犯錯,你會希望盡早發(fā)現(xiàn)這些錯誤。通過(經(jīng)常)使用單元測試,你能做到這一點。本書充滿了現(xiàn)實世界中的真實案例,以專家手筆討論了實踐中的測試技術(shù)。本書能告訴你如何編寫自動測試,把一段代碼隔離開來測試有什么好處,如何判斷何時需要進(jìn)行整合測試。本書還就如何測試完整的J2EE應(yīng)用進(jìn)行了極具價值且獨一無二的討論。"……歸納并描述了高效JUnit測試特別是J2EE測試的最佳實踐。在沒看過這本書之前不要對你的J2EE應(yīng)用做單元測試!":ErichGammaIBMOTI實驗宣JUnit作者之一"極好的杰作,讀來樂趣無窮!我全力推薦它。":ErikHatcherJavaDevelopinentwithAnt作者之一"以一致的結(jié)構(gòu)展現(xiàn)了大量的信息。":J.B.RainsbergerJUnit杜區(qū)領(lǐng)袖,作家"Virice不畏艱險,不避難點,迎難而上,厘清了人們面對的真正問題。":ScottStirling,BEA

作者簡介

  VincentMassol是JakartaCactus框架的創(chuàng)建者,還是Maven、Gump、MockObjects開發(fā)團(tuán)隊的積極參與者。在4年中,他擔(dān)任了幾個大項目(大多數(shù)是J2EE構(gòu)架)的技術(shù)構(gòu)架師,之后他就和別人一起創(chuàng)立了Pivolis并擔(dān)任CTO。Pivolis公司專注于把敏捷方法應(yīng)用于軟件外包。在白天,Vincent是一位顧問和演講者;在晚上,他是開源軟件的開發(fā)者。Vincent目前居住在法國巴黎,可以通過他的bloghttp;//blogs.codehaus.org/people/vmassol/來聯(lián)系他。

圖書目錄

譯序  iii
前言  xiii
致謝  xv
關(guān)于本書  xvii
關(guān)于作者  xxi
關(guān)于書名  xxii
關(guān)于封面  xxiii
第1部分  JUnit精粹  1
1  JUnit起步  3
1.1  證實它能運作  4
1.2  從頭開始  6
1.3  理解單元測試框架  10
1.4  安裝JUnit  11
1.5  用JUnit測試  13
1.6  小結(jié)  16
2  探索JUnit  17
2.1  探索JUnit核心  18
2.2  用test runner來運行測試  20
2.2.1  選擇test runner  20
2.2.2  定義你自己的test runner  21
2.3  用TestSuite來組合測試  21
2.3.1  運行自動suite  22
2.3.2  編寫你自己的test suite  23
2.4  用TestResult來收集參數(shù)  25
2.5  用TestListener來觀察結(jié)果  27
2.6  用TestCase來工作  28
2.6.1  用fixture來管理資源  29
2.6.2  創(chuàng)建單元測試方法  30
2.7  創(chuàng)建TestCalculator全過程  32
2.7.1  創(chuàng)建TestSuite  33
2.7.2  創(chuàng)建TestResult  35
2.7.3  執(zhí)行測試方法  36
2.7.4  復(fù)習(xí)完整JUnit生命周期  37
2.8  小結(jié)  38
3  JUnit實例  39
3.1  引入controller組件  40
3.1.1  設(shè)計接口  41
3.1.2  實現(xiàn)基類  43
3.2  讓我們來測試吧  45
3.2.1  測試DefaultController  46
3.2.2  增加處理器  46
3.2.3  處理請求  50
3.2.4  改進(jìn)testProcessRequest  54
3.3  測試異常處理  55
3.3.1  模擬異常條件  56
3.3.2  測試異常  60
3.4  建立測試項目  62
3.5  小結(jié)  64
4  探索軟件測試  65
4.1  單元測試的必要性  66
4.1.1  帶來更大的測試范圍  67
4.1.2  帶來團(tuán)隊協(xié)作的可能  67
4.1.3  防止衰退,減少調(diào)試  67
4.1.4  使得重構(gòu)可行  68
4.1.5  改進(jìn)實現(xiàn)設(shè)計  69
4.1.6  當(dāng)作開發(fā)者文檔來用  69
4.1.7  非常有趣  70
4.2  不同種類的測試  71
4.2.1  軟件測試的4種類型  71
4.2.2  單元測試的3種類型  75
4.3  判斷測試質(zhì)量  77
4.3.1  衡量測試覆蓋面  78
4.3.2  產(chǎn)生測試覆蓋情況報告  79
4.3.3  測試交互  81
4.4  測試驅(qū)動開發(fā)  81
4.4.1  調(diào)整周期  81
4.4.2  TDD兩步走  83
4.5  在開發(fā)周期中的測試  84
4.6  小結(jié)  87
5  JUnit自動化  88
5.1  生命中的一天  89
5.2  從Ant中執(zhí)行測試  90
5.2.1  不可缺少的Ant  91
5.2.2  Ant目標(biāo)、項目、屬性以及任務(wù)  92
5.2.3  javac任務(wù)  94
5.2.4  JUnit任務(wù)  96
5.2.5  讓Ant來執(zhí)行任務(wù)  97
5.2.6  用JUnitReport打印好看的報告  98
5.2.7  自動找出要運行的測試  100
5.3  從Maven運行測試  102
5.3.1  Maven,目標(biāo)尋找者  102
5.3.2  為項目配置Maven  104
5.3.3  使用Maven來執(zhí)行JUnit測試  109
5.3.4  用Maven處理要依賴的jar  109
5.4  從Eclipse中運行測試  112
5.4.1  創(chuàng)建一個Eclipse項目  112
5.4.2  在Eclipse中運行JUnit測試  114
5.5  小結(jié)  116
第2部分  測試策略  117
6  用stub進(jìn)行粗粒度測試  119
6.1  stub簡介  120
6.2  一個HTTP連接的例子  121
6.2.1  選擇一個替換方案  124
6.2.2  用Jetty作為嵌入式服務(wù)器  125
6.3  替換Web服務(wù)器資源  126
6.3.1  建立第一個stub測試  126
6.3.2  測試失敗情況  132
6.3.3  回顧第一個stub測試  133
6.4  替換連接  134
6.4.1  創(chuàng)建自定義URL協(xié)議處理器  134
6.4.2  創(chuàng)建JDK的HttpURLConnection stub  136
6.4.3  運行測試  137
6.5  總結(jié)  138
7  用mock objects 進(jìn)行孤立測試  139
7.1  mock objects簡介  140
7.2  體驗mock objects:一個簡單例子  141
7.3  把mock objects用作重構(gòu)手法  146
7.3.1  方便的重構(gòu)  147
7.3.2  允許更靈活的代碼  148
7.4  實踐HTTP連接示例程序  150
7.4.1  定義mock object  150
7.4.2  測試示例方法  151
7.4.3  嘗試1:簡單的方法重構(gòu)技法  152
7.4.4  嘗試2:使用類工廠進(jìn)行重構(gòu)  155
7.5  把mock objects用作特洛伊木馬  159
7.6  決定何時使用mock objects  163
7.7  小結(jié)  164
8  使用Cactus進(jìn)行容器內(nèi)測試  165
8.1  對組件進(jìn)行單元測試的問題  166
8.2  用mock objects測試組件  167
8.2.1  用EasyMock來測試servlet例子  168
8.2.2  用mock objects測試組件的優(yōu)勢與不足  170
8.3  什么是集成單元測試  172
8.4  介紹Cactus  173
8.5  用Cactus測試組件  173
8.5.1  運行Cactus測試  174
8.5.2  用Cactus/Jetty集成來執(zhí)行測試  174
8.5.3  容器內(nèi)測試的缺點  178
8.6  Cactus如何工作  179
8.6.1  在客戶端和服務(wù)器端的步驟  180
8.6.2  一步步執(zhí)行測試  180
8.7  小結(jié)  182
第3部分  測試組件  185
9  對servlet和filter 進(jìn)行單元測試  187
9.1  介紹管理應(yīng)用程序  188
9.2  用Cactus編寫 servlet 測試  189
9.2.1  設(shè)計第一個測試  190
9.2.2  使用 Maven 來運行Cactus測試  192
9.2.3  完成 Cactus servlet 測試  198
9.3  用mock objects測試 servlet  204
9.3.1 使用 DynaMocks 和 DynaBeans寫一個測試  205
9.3.2  完成 DynaMock 測試  206
9.4  用Cactus寫filter測試  208
9.4.1  用SELECT查詢測試filter  209
9.4.2  對其它的查詢類型測試filter  210
9.4.3  用Maven運行Cactus filter測試  212
9.5  何時使用Cactus,何時使用mock objects  213
9.6  小結(jié)  214
10  對JSP和taglib 進(jìn)行單元測試  215
10.1  回顧管理應(yīng)用軟件  216
10.2  什么是JSP單元測試  217
10.3  單獨使用Cactus 對JSP進(jìn)行單元測試  217
10.3.1  利用SQL結(jié)果數(shù)據(jù)執(zhí)行JSP  218
10.3.2  編寫Cactus測試  219
10.3.3  使用Maven執(zhí)行Cactus JSP的測試程序  222
10.4  使用 Cactus 對 taglib 進(jìn)行單元測試  224
10.4.1  定義自定義標(biāo)記  225
10.4.2  測試自定義標(biāo)記  227
10.4.3  對帶 body 的標(biāo)記進(jìn)行單元測試  228
10.4.4  對協(xié)作標(biāo)記進(jìn)行單元測試  233
10.5  用mock objects對taglib進(jìn)行單元測試  233
10.5.1  MockMaker 及其 Eclipse 插件的安裝  234
10.5.2  用 MockMaker 從類中產(chǎn)生mock objects  234
10.6  何時使用mock objects,何時使用 Cactus  237
10.7  小結(jié)  237
11  對數(shù)據(jù)庫應(yīng)用程序進(jìn)行單元測試  239
11.1  對數(shù)據(jù)庫進(jìn)行單元測試的介紹  240
11.2  隔離開數(shù)據(jù)庫測試業(yè)務(wù)邏輯  242
11.2.1  實現(xiàn)數(shù)據(jù)庫訪問層的接口  243
11.2.2  建立一個模擬數(shù)據(jù)庫接口層  244
11.2.3  模擬數(shù)據(jù)庫接口層  246
11.3  隔離開數(shù)據(jù)庫測試持久性代碼  247
11.3.1  測試execute方法  248
11.3.2  用預(yù)期驗證狀態(tài)  256
11.4  數(shù)據(jù)庫集成單元測試的編寫  260
11.4.1  滿足數(shù)據(jù)庫集成測試的要求  260
11.4.2  預(yù)設(shè)數(shù)據(jù)庫數(shù)據(jù)  261
11.5  用Ant 運行Cactus測試  265
11.5.1  項目結(jié)構(gòu)的回顧  265
11.5.2  Cactus/Ant 集成模塊介紹  266
11.5.3  一步步建立Ant build 文件  267
11.5.4  執(zhí)行Cactus測試  274
11.6  改進(jìn)構(gòu)建性能  275
11.6.1  分解出只讀數(shù)據(jù)  275
11.6.2  按功能將測試分組  277
11.6.3  使用駐留內(nèi)存數(shù)據(jù)庫  278
11.7  數(shù)據(jù)庫整體單元測試策略  278
11.7.1  選擇一種方法  278
11.7.2  應(yīng)用持續(xù)集成  279
11.8  小結(jié)  280
12  對EJB進(jìn)行單元測試  281
12.1  定義一個簡單的EJB應(yīng)用程序  282
12.2  使用façade策略  283
12.3  使用mock objects對JNDI代碼進(jìn)行單元測試  284
12.4  對session bean進(jìn)行單元測試  285
12.4.1  使用工廠方法策略  289
12.4.2  使用工廠類策略  293
12.4.3  使用mock JNDI實現(xiàn)策略  297
12.5  使用mock objects測試message-driven bean  307
12.6  使用mock objects測試entity bean  310
12.7  選擇正確的mock objects策略  312
12.8  使用集成單元測試  313
12.9  使用JUnit和遠(yuǎn)程調(diào)用  314
12.9.1  直接使用JUnit的要求  315
12.9.2  把Petstore應(yīng)用程序打包進(jìn)ear文件  315
12.9.3  自動部署和執(zhí)行測試  319
12.9.4  為PetstoreEJB編寫遠(yuǎn)程的JUnit測試  325
12.9.5  修改JNDI名字  326
12.9.6  運行測試  327
12.10  使用Cactus  328
12.10.1  用Cactus編寫EJB單元測試  328
12.10.2  項目目錄結(jié)構(gòu)  329
12.10.3  打包Cactus測試  329
12.10.4  執(zhí)行Cactus測試  333
12.11  小結(jié)  334
A  源代碼說明  335
A.1  獲取源代碼  336
A.2  源代碼概覽  336
A.3  外部庫  338
A.4  Jar版本  339
A.5  目錄結(jié)構(gòu)慣例  340
B  Eclipse快速上手  341
B.1  安裝Eclipse  342
B.2  從源代碼中建立Eclipse項目  342
B.3  從Eclipse中運行JUnit測試  343
B.4  從Eclipse中執(zhí)行Ant腳本  344
B.5  從Eclipse中運行Cactus測試  345
參考文獻(xiàn)  346
索引  351

本目錄推薦

掃描二維碼
Copyright ? 讀書網(wǎng) m.ranfinancial.com 2005-2020, All Rights Reserved.
鄂ICP備15019699號 鄂公網(wǎng)安備 42010302001612號