




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、接口自動化測試設(shè)計文檔管理信息表主題接口自動化測試版本TIBCO_Adapter_V1.0內(nèi)容設(shè)計關(guān)鍵字接口參考文檔單元測試創(chuàng)建時間2008-03-21創(chuàng)建人馮昌建職位SDETest主管最新發(fā)布日期2008-04-02(一)測試背景概述新項目結(jié)構(gòu)大致是:即產(chǎn)品1和產(chǎn)品2為待測試對象,抽象出來可以歸結(jié)為【http json協(xié)議接口測試】與【http web功能測試】。其中【http web功能測試】針對未曾接觸的一種數(shù)據(jù)庫,還包含了大量數(shù)據(jù)庫和SQL級別的專有操作測試內(nèi)容,此處不予討論。測試對象無論是由C/C+還是Java還是JS/Html實現(xiàn),對于協(xié)議測試和功能測試(白盒測試和單元測試另當(dāng)別論
2、),都不需要深入了解該語言,熟悉任一種高級語言(最好還有一種腳本語言)+自動化思維意識+快速學(xué)習(xí)能力,完全能實施測試自動化策略。網(wǎng)上查了一下:JSON(JavascriptObjectNotation)是一種輕量級的數(shù)據(jù)交換語言,以文字為基礎(chǔ),且易于讓人閱讀。常應(yīng)用于http通信和數(shù)據(jù)傳輸,應(yīng)用如Apache開源搜索引擎ElasticSearch等。JSON建構(gòu)有兩種結(jié)構(gòu):1. “名稱/值”對的集合(A collection of name/value pairs)。不同的語言中,它被理解為對象(object),記錄(record),結(jié)構(gòu)(struct),字典(dictionary),哈希表(
3、hashtable),有鍵列表(keyed list),或者關(guān)聯(lián)數(shù)組(associative array)。2.值的有序列表(An ordered list of values)。在大部分語言中,它被理解為數(shù)組(array)。* Linux C/C+單元測試和覆蓋率統(tǒng)計參見:即使對上面一無所知,先來分析一下【http json協(xié)議接口】的特點。(二)測試需求分析1. Web頁面(即產(chǎn)品2)HTTP請求數(shù)據(jù)包(post/put)格式如: POST -d &qu
4、ot;task":"login","token":"ae873897a0a9a2afb9bb12a49c4237744a82ea77049df67c9b58d7acc5c0c7527926f07dd201b6aa","id":"admin","password":“123456","clientver":"8.4" POST /cm_api -d"task":"st
5、artinfo","token":"ae873897a0a9a2af11077f40cf303d7406ec4d40b90b3a041b8a4edfd63d0fbe7926f07dd201b6aa" 2. Web Service(即產(chǎn)品1)響應(yīng)數(shù)據(jù)包格式,除以下其余未知:(1)格式錯誤,不響應(yīng);(http json協(xié)議層判定)(2) token(每個用戶每次登錄時取得,唯一)錯誤或者連接、數(shù)據(jù)庫等其他問題,響應(yīng) status: failure(3)token正確,其他正確,響應(yīng) status:
6、 success如: "_EXEC_TIME" : "1 ms", "note" : "none", "status" : "success", "task" : "authenticate", “token” : “ae873897a0a9a2afdb676eefe4e864e2b0e3abb07cd73cf0944e77d
7、6c792b1aa7926f07dd201b6aa” 登錄成功,響應(yīng) status: success,并取得token值 "note" : "Request is rejected due to invalid token. Pleasereconnect.", "status" : "failure", “task” : “startinfo” token錯誤,響應(yīng) st
8、atus: failure 3. 接口會擴(kuò)展,增加或改變(數(shù)百個)。 4. 幾乎所有接口有嚴(yán)格執(zhí)行順序(如順序執(zhí)行:login-> optimized->stopdb->logout),login成功獲取該用戶本次動態(tài)token,后面每個接口請求包使用此token。動態(tài)token,即測試數(shù)據(jù)和結(jié)果都不是固定的,故Fitnesse等一些接口測試工具難以實現(xiàn)。 5.
9、60; 用例中可含自定義的任意參數(shù)變量,如針對Linux:$DBNAME=/home/DBNAME,$DBNAME_DATABASES=/home/DBNAME /databases ,;Windows:$DBNAME=C:DBNAME, $DBNAME_DATABASES =C:DBNAME databases , 6. 成本1(=不熟悉à找測試工具à學(xué)習(xí)測試工具à執(zhí)行測試) >成本2(=自己花部分時間寫個測試程序或工具靈活可控:生
10、成自定義測試用例和判定結(jié)果、報告) 7. 最后解決方案確定:自己花部分時間寫個測試程序或工具靈活可控:生成自定義測試用例和判定結(jié)果、報告(三)設(shè)計和技術(shù)細(xì)節(jié)準(zhǔn)備1. 測試用例和測試結(jié)果生成,我希望按以下數(shù)據(jù)格式生成文件,固定分隔符分割(便于excel打開),token錯誤響應(yīng) status: failure則Pass,token正確響應(yīng)status:success則Pass,F(xiàn)ail的記錄status手工核查(擴(kuò)展:每條接口用例設(shè)定一個
11、字段表示期望值,檢查收到期望值則Pass,收不到則Fail)。Case-ID:CMS-145Interface Name:updateattributePreconditions:correcttoken: ae873897a0a9a2afd540113d7e03001469caacde0c9322491cd95e57cef94f427926f07dd201b6aaStep:curl-POST -d "task":"updateattribute","token":"ae873897a0a9a2afd540113d7e030
12、01469caacde0c9322491cd95e57cef94f427926f07dd201b6aa","dbname":"demodb","classname":"athlete"Result: "_EXEC_TIME": "11 ms", "note" : "Failed to connect to database server, demodb, on the following h
13、ost(s): localhost:localhost", "status" : "failure", "task" : "updateattribute"P/F:FRemark:status:"failure" 2. 測試輸入數(shù)據(jù)(開發(fā)維護(hù)):數(shù)據(jù)包文件列表(根據(jù)接口名字命名,增加一個接口相應(yīng)增加一個)接口順序文件json_list(接口名的執(zhí)行順序列表,根
14、據(jù)此文件中接口順序執(zhí)行) 3. 動態(tài)token獲?。簂ongin 響應(yīng)保存tokenà讀取jsonlist保存列表à根據(jù)jsonlist順序讀取對應(yīng)接口名數(shù)據(jù)包文件,并替換token字段值à請求和響應(yīng)à檢查響應(yīng)結(jié)果的狀態(tài)和其他內(nèi)容(斷言) 4. 兩種方式實現(xiàn)(C#): 方式一:封裝開源Ssh庫登錄一臺Linux調(diào)用Curl命令,記錄整個過程并分析處理,生成測試用例和測試結(jié)果文件,人工查看和整理。(涉及平臺環(huán)節(jié)更多,更鍛煉。
15、) 方式二:利用.Net豐富的Web類庫和其他庫文件實現(xiàn)。(更簡單,技術(shù)積累熟練程度,時間分鐘級到小時級即可完成。)(四)開發(fā)實施和自測1. SSH方式遠(yuǎn)程登錄Linux2. 執(zhí)行流程舉例3. 保存正確的token值4. 幾個讀寫文件流5. &
16、#160; 順序讀取、拼接、發(fā)送、接收、判斷處理、記錄6. 配置參數(shù)項:json請求地址、cci請求地址、自定義參數(shù)變量(變長)、用例路徑、是否循環(huán)(長時間穩(wěn)定性測試)(五)結(jié)果演示1. 執(zhí)行效果(可配置循環(huán)長時間測試)2. 輸入輸出生成結(jié)果3. 【新版本檢測>
17、;新版本部署>執(zhí)行測試工具】【整理查看測試結(jié)果>校驗Fail問題>提交bug】 其中,“新版本檢測à新版本部署à執(zhí)行測試工具”流程可以通過一些測試框架(如staf/stax,或其他,或自己靈活開發(fā)定制等)實現(xiàn)全自動(包括版本通知和測試結(jié)果通知),可實現(xiàn)手工時間集中到“整理查看測試結(jié)果à校驗Fail問題à提交bug”流程。 附:通用自動化測試工具效果1. 主體框架實現(xiàn)特定功能,高級語言完成,并開放大量實用API,且不斷增加和完善2. 嵌套或封裝一種或多種腳本語言解析器,能夠動態(tài)執(zhí)行測試用例腳本,對Windows窗體、Web、代碼、接口、
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 度生產(chǎn)加工合同
- 牛仔布供需合同
- 再生廢物原料國外裝運前檢驗合同全文
- 租賃合同范本:辦公場地篇
- 新版買賣合同模板
- 14《天文學(xué)上的曠世之爭》教學(xué)設(shè)計 2023-2024學(xué)年統(tǒng)編版高中語文選擇性必修下冊
- 度醫(yī)院護(hù)士勞動合同
- 5《七律·長征》教學(xué)設(shè)計-2024-2025學(xué)年六年級語文上冊統(tǒng)編版
- 企業(yè)戰(zhàn)略聯(lián)盟合同樣本
- 1《春夏秋冬》教學(xué)設(shè)計-2024-2025學(xué)年語文一年級下冊統(tǒng)編版
- 基坑監(jiān)測總結(jié)報告
- 2024年華師大版九年級數(shù)學(xué)下冊全冊教案
- 合肥市廬陽區(qū)雙崗街道社區(qū)工作者招聘考試試題及答案2024
- JBT 106-2024 閥門的標(biāo)志和涂裝(正式版)
- 煤礦技術(shù)員必須會的知識
- (高清版)JTGT 3650-01-2022 公路橋梁施工監(jiān)控技術(shù)規(guī)程
- 北京市2024小升初數(shù)學(xué)模擬試卷一
- 一年級口算題100以內(nèi)比大小
- 《提案與方案優(yōu)化設(shè)計》課件-第一部分 常見戶型問題解析及平面布局優(yōu)化
- 產(chǎn)科抗磷脂綜合征診斷與處理專家共識
- MOOC 跨文化交際通識通論-揚州大學(xué) 中國大學(xué)慕課答案
評論
0/150
提交評論