版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、門戶 JUnit 開發(fā)流程 說明1:單元測試的入門知識3:請配置好 perties 中的uesserver 地址和 perties 中的 iserver,aserver,snsserv址,要保證各 url 和接口指向的地址可用hbserver,forumserver 地4:新建測試類時,注意包路徑和類名稱的格式com.test 這個是基本路徑 datasource 表示是數據源(還有 action) portaluser 這個是子路徑(同類名)如果類中包含很多方法,需要針對不同的方法, 分別寫測試類,類名可為 methodTest(例如:5:代碼注釋經過一系列debug,ues 門戶跑juni
2、t 用例時,最好注釋掉 2 處代碼:(涉及 2 個類)1:CachedFactory 中的init 方法中的2:BaseHttpTools 中的sendHttpRequestByHttpCnt 方法內部:和6:項目工程的路徑,請盡量不要包含中文。否則初始化配置文件會報錯2.2 數據源的單元測試一:新建測試類設置junit 相關選中要測試的方法得到測試類繼承JUnit 基類(這個基類是專門為門戶寫的保證環(huán)境可以運行的類)并設置當前請求的request 和用戶信息當前測試方法編寫1:查看該數據源方法主要調用的接口2:針對該接口寫測試樁3:最后一般是斷言結束。4:若數據源包。參,則需要寫多個測試方法
3、。執(zhí)行test:查看結果:2.3 Action 的單元測試一:以 AddBlackListAction 為例,創(chuàng)建 test 類,并繼承 BaseJunitTest 基類二:查看 action 內部調用的接口,并結合 action 最后的返回,得到不同的場景,然后創(chuàng)建不同的測試樁,test 不同的結果比如 AddBlackListAction 中,有 2 種結果,分別為跳轉到成功頁面和失敗頁面。對應的是snsserver 接口 addBlackUser 的成功和失敗。所以測試方法需要寫 2 個(如果失敗的場景有具體的細分,比如接口的不同的異常碼,這時就需要的測試方法)注意:1:如果action
4、 內部調用的接口為多個的話,就要組合不同的場景進試。2:action 的測試并非固定的,需要根據 action 內部的邏輯然后選用最合適的測試方法。1:成功的接口返回2:失敗的接口返回測試方法-成功場景:(可以在方法名后面在場景標識:成功 or 失敗 or 接口異常碼)測試方法-失敗場景執(zhí)行結果:2.4 包含 DSF 接口的調用的單元測試1:查看代碼可以看到,dsf 接口的調用,主要通過是:DSFserverAction 中的recordAction方法。這個方法內部有對測試樁的處理,所以涉及 dsf 接口的調用,junit 使用測試樁。2:繼承BaseJunitTest,并寫測試邏輯3:注意
5、 dsf 接口測試樁的 url 配置,包含 2 部分:一個是對response 的設置:(服務名.接口名.class) setSnsServerUrl(paymentServi rofile.class,.getDirectPaymentAccountPcom.jaguar.cgyment.response.GetDirectPaymentAccountProfileRsp);一個是 url 的設置:(服務名.接口名. erface)setSnsServerUrl(paymentServi rofile.erface,.getDirectPaymentAccountP4:測試樁:);5:查看運
6、行結果控制臺:3:遺留問題和建議:1:沒有啟動memcache 相關2:由于門戶的數據源方法較多,建議測試類名后+版本號+ 區(qū)分。 (見準備工作 2.1.4)3:有時測試時間會比較長,經查看發(fā)現是卡在 Class.forName4:會不自覺的啟動定時任務,消耗內存-需要注釋部分代碼5:暫時沒 dsf 接口的測試樣例 (已補充 dsf 接口調用樣例,見 2.4)6:日志暫時沒有打印到控制臺7:snsserver 接口調用,在一個測試過程中,一個接口只能寫一個測試樁,不能針對一個接 口寫多個測試樁(代碼中對URL 固定了)-如果修復這個問題,需要改動代碼(也可以不改動代碼)7:snsserver
7、和 dsf 接口模擬測試樁的時候,一個接口只能寫 一個測試樁(代碼中寫死了,會在 url 后面加上方法名),如果想解決,看下面的解決方案(4.4 和 4.5)8:一個潛在的死循環(huán)風險:在調用 http 接口時,會埋點日志相關(判斷埋點日志開關是否打開),但是埋點日志開關是門戶參數,也會調用接口,這樣就導致了死循環(huán)的風險。(代碼測試中發(fā)現循環(huán)了300 次后就取到值了,代碼發(fā)現是由于緩存配置的maxThread=300,達到 300 后,會取默認值,然后設置到緩存中)-解決這個問題,需要注釋掉埋點日志的代碼(http 接口調用中的 2 處)4:開發(fā)過程中遇到的問題以及解決方案:1:JDK 版本問題
8、。請使用JDK1.8 版本,否則報錯2:如果不識別test 目錄下的java 類,需要添加路徑3:加載緩存配置時,會啟動定時任務(共 20 個),這段代碼需要注釋掉4:關于 snsserver 接口調用問題對于snsserver 接口調用,根據接口名稱獲取接口調用地址,代碼是這樣的:由于最后返回的結果在 url 的基礎上追加了path,舉例:setSnsServerUrl(addBlackUser, );這 樣 根 據 上 面 的 方 法 , 針 對 addBlackUser 這 個 接 口 獲 取的 url 為可以通過: setSnsServerUrl(addBlackUser, )這樣的話
9、,無需改動代碼,但是,測試樁的接口名稱的規(guī)范就變動了。5:dsf 模擬接口測試樁,也存在和上面 4 一樣的問題:所以,需要: setSnsServerUrl(paymentServi rofile.class,.getDirectPaymentAccountPcom.jaguar.cgyment.response.GetDirectPaymentAccountProfileRsp);setSnsServerUrl(paymentServi.getDirectPaymentAccountProfile. erface,);最理想的情況是:setSnsServerUrl(addBlackUser,
10、 addBlackUser_1);所以,想要達到理想結果,需要改動 getApiUrl 這個方法。這樣會造成代碼污染。修改后的代碼6:關于埋點日志引起的死循環(huán)問題啟動初始化緩存和 dataload 時(CachedFactory.init()執(zhí)行時),當Index=47 時,進入到 DBDtaLoader 時,會卡 3 秒鐘左右。進一步發(fā)現是通過反射創(chuàng)建 MonthlyTiketDataLoader這個類的時候,在獲取其靜態(tài)不可改變的屬性: LOADER_NUMBER (門戶參數 book.monthly.ticket)引起的。更進一步發(fā)現,獲取門戶參數,最終是通過 GENERALINFOCACHE 的 dataload 調用接口獲取的,而調用接,會判斷埋點日志的開關是否打開,這個埋點日志開關,同樣也是門戶參數(buried_po _switch)。就這樣,引起了(偽)死循環(huán)。幸好的是:GENERALINFOCACHE 緩存配置下面有這個配置:300。在 根 據 緩 存 名 稱 獲 取 獲 取 value 時 , Refresha
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 城市綠化合同管理辦法
- 宗教藝術博物館管理辦法
- 一站式工程維護服務承諾書
- 車輛限號管理辦法
- 美容院實習生轉正合同
- 城市供電設施拆遷電力保障
- 生態(tài)養(yǎng)殖場養(yǎng)豬場租賃
- 城市綠化箱涵施工合同
- 產品售后服務承諾書協(xié)議書
- 建筑照明工程合同
- 小學體育課學生學情分析報告
- 服裝企業(yè)安全臺賬2
- 國內研究現狀及發(fā)展趨勢分析
- 信息技術(基礎模塊上下冊)4.3分析數據
- 魯科版《鹽類的水解》省公開課金獎全國賽課一等獎微課獲獎課件
- 11水平五 高一 田徑單元18課時計劃-《田徑:跨欄跑-跨欄步》教案
- “三新”背景下2024年高考政治一輪復習策略建議
- 網球活動策劃推廣方案
- 全國食品安全風險監(jiān)測參考值 2024年版
- 急救學教學課件
- 2023年福建省考評員考試題
評論
0/150
提交評論