成人午夜视频全免费观看高清-秋霞福利视频一区二区三区-国产精品久久久久电影小说-亚洲不卡区三一区三区一区

DevOpsonDevCloud|如何實(shí)現(xiàn)應(yīng)用接口的混合驅(qū)動(dòng)測試-創(chuàng)新互聯(lián)

引言:在“DevOps能力之屋(Capabilities House of DevOps)”中,華為云DevCloud提出(工程方法+最佳實(shí)踐+生態(tài))×工具平臺(tái)=DevOps能力。華為云DevCloud將推出“DevOps on DevCloud”系列,針對DevOps領(lǐng)域場景,闡述該場景在華為云DevCloud上的實(shí)施方法與實(shí)踐。

專注于為中小企業(yè)提供成都網(wǎng)站設(shè)計(jì)、成都網(wǎng)站制作服務(wù),電腦端+手機(jī)端+微信端的三站合一,更高效的管理,為中小企業(yè)江城免費(fèi)做網(wǎng)站提供優(yōu)質(zhì)的服務(wù)。我們立足成都,凝聚了一批互聯(lián)網(wǎng)行業(yè)人才,有力地推動(dòng)了1000多家企業(yè)的穩(wěn)健成長,幫助中小企業(yè)通過網(wǎng)站建設(shè)實(shí)現(xiàn)規(guī)模擴(kuò)充和轉(zhuǎn)變。

目前越來越多不同行業(yè)的企業(yè)開啟了數(shù)字化轉(zhuǎn)型,以提升業(yè)務(wù)敏捷性與開放合作能力,為客戶或合作伙伴提供更好的體驗(yàn)。微服務(wù)架構(gòu)(Microservices Architecture)和敏捷與DevOps成為諸多企業(yè)在數(shù)字化轉(zhuǎn)型中對于應(yīng)用架構(gòu)和工程方法的不二選擇。隨著微服務(wù)架構(gòu)的廣泛流程,RESTful風(fēng)格API也成為大勢所趨。因而,對API進(jìn)行持續(xù)測試成為DevOps的關(guān)注點(diǎn)之一。隨著微服務(wù)數(shù)量規(guī)模增加、DTAP環(huán)境配置變化、軟件交付周期縮短,持續(xù)測試自動(dòng)化成為更為亟需解決的問題。毫不夸張地講,沒有測試自動(dòng)化,微服務(wù)架構(gòu)的實(shí)施對于企業(yè)更會(huì)成為一場災(zāi)難。

一談到測試自動(dòng)化,大多數(shù)團(tuán)隊(duì)通常將其視為純粹的技術(shù)挑戰(zhàn),例如選擇測試框架、確定測試工具等等。實(shí)際上,測試自動(dòng)化成功的核心原則之一是測試設(shè)計(jì)(Test Design)。團(tuán)隊(duì)?wèi)?yīng)該從一開始在測試設(shè)計(jì)上進(jìn)行足夠多的投入。測試設(shè)計(jì)過程始于分析測試需求。為了提升測試覆蓋率,團(tuán)隊(duì)可以使用“業(yè)務(wù)流(Business Flow)”方法來分析需求。團(tuán)隊(duì)需要在業(yè)務(wù)層級(jí)(Business Level)與交互層級(jí)(Interaction Level)上對操作(Action)或數(shù)據(jù)(Data)進(jìn)行抽象。因此,業(yè)界提出了關(guān)鍵字驅(qū)動(dòng)測試(KDT,Keyword Driven Testing)或者數(shù)據(jù)驅(qū)動(dòng)測試(DDT,Data Driven Testing)等方法來進(jìn)行測試設(shè)計(jì),提升測試自動(dòng)化效率。

對于KDT和DDT,從其定義來講,存在一定的區(qū)別,即什么因素對測試結(jié)果起決定性作用就是什么驅(qū)動(dòng)測試。當(dāng)然KDT與DDT也有聯(lián)系。例如:以登錄為例,首先登錄由不同的Action組成(按鈕點(diǎn)擊、文本框輸入等),其次將登錄的用戶名、密碼作為變化的數(shù)據(jù)(參數(shù)化),可以只關(guān)注數(shù)據(jù)。因此,為提升復(fù)用性,在實(shí)際項(xiàng)目中,一般會(huì)采用混合驅(qū)動(dòng)測試的方法,即融合關(guān)鍵字驅(qū)動(dòng)測試與數(shù)據(jù)驅(qū)動(dòng)測試??偠灾?,測試設(shè)計(jì)需要對操作與數(shù)據(jù)進(jìn)行抽象、分組等。

華為云DevCloud云測服務(wù)提供了接口測試功能,支持HTTP和HTTPS協(xié)議,并可通過參數(shù)化、自定義環(huán)境、關(guān)鍵字等特性支持混合驅(qū)動(dòng)測試,同時(shí)將將接口測試納入流水線進(jìn)行管理,支持產(chǎn)品團(tuán)隊(duì)踐行DevOps理念,為微服務(wù)架構(gòu)的API保駕護(hù)航。

1 準(zhǔn)備工作

1.1 示例應(yīng)用接口

華為云DevCloud對外提供了開放API,供第三方平臺(tái)進(jìn)行集成。本接口測試將以華為云DevCloud項(xiàng)目管理服務(wù)相關(guān)API示例。華為云DevCloud的API列表請參考 https://support.huaweicloud.com/devg-devcloud/devcloud_api_1000.html,接口調(diào)用方法請參考 https://support.huaweicloud.com/devg-devcloud/devcloud_api_0001.html,獲取Token認(rèn)證的方式請參考 https://support.huaweicloud.com/devg-devcloud/zh-cn_topic_0107684989.html。

1.2 創(chuàng)建項(xiàng)目

開發(fā)者可以訪問華為云DevCloud( https://www.huaweicloud.com/devcloud/),登錄后在首頁新建項(xiàng)目,選擇“空白項(xiàng)目”的Scrum或者看板之一,輸入項(xiàng)目名稱(例如:Prj4ApiHDT)即可創(chuàng)建項(xiàng)目。

在訪問Prj4ApiHDT項(xiàng)目,并進(jìn)入“測試”-“接口測試”后,就可以開展接口測試相關(guān)工作了。

2 API測試

本次API測試將覆蓋一個(gè)業(yè)務(wù)流(Business Flow):獲取授權(quán)令牌->創(chuàng)建項(xiàng)目->查詢項(xiàng)目當(dāng)前工作項(xiàng)列表->在項(xiàng)目中新建工作項(xiàng)->查詢項(xiàng)目當(dāng)前工作項(xiàng)列表->刪除項(xiàng)目。

2.1 創(chuàng)建關(guān)鍵字getAuthToken

調(diào)用華為云DevCloud的開放API首先需要獲取授權(quán)令牌(token),詳細(xì)情況請參考“獲取用戶token”( https://support.huaweicloud.com/api-iam/zh-cn_topic_0057845583.html)。為了測試API的所有用例方便獲取token,將創(chuàng)建關(guān)鍵字getAuthToken。

在進(jìn)入“接口測試”頁面后,點(diǎn)擊“新建”,在“新建用例”頁面輸入名稱“manageProject”等信息,并點(diǎn)擊“確定”,用例創(chuàng)建成功并進(jìn)入編輯用例腳本頁面。

在用例“manageProject”的編輯用例腳本頁面,進(jìn)入“測試步驟”,新建“URL請求”,名稱設(shè)置為“getAuthToken”,并輸入以下信息:

§ 請求:如圖1所示,請求信息的方法選為“POST”,URL填為“iam.cn-north-1.myhuaweicloud.com/v3/auth/tokens”;請求體選擇“JSON”,并填寫如下信息:

{

"auth": {

"identity": {

"methods": [

"password"

],

"password": {

"user": {

"name": "$${userName}",

"password": "$${password}",

"domain": {

"name": "$${domainName}"

}

}

}

},

"scope": {

"domain": {

"name": "$${domainName}"

}

}

}

}

§ 檢查點(diǎn):來源為“響應(yīng)碼”,比較符為“等于(數(shù)字)”,目標(biāo)值為“201”。參見圖2。

§ 響應(yīng) 提取:出參為“X-Auth-Token”,來源為“響應(yīng)頭”,屬性為“X-Subject-Token”。參見圖3。

DevOps on DevCloud|如何實(shí)現(xiàn)應(yīng)用接口的混合驅(qū)動(dòng)測試 DevOps on DevCloud|如何實(shí)現(xiàn)應(yīng)用接口的混合驅(qū)動(dòng)測試 DevOps on DevCloud|如何實(shí)現(xiàn)應(yīng)用接口的混合驅(qū)動(dòng)測試 DevOps on DevCloud|如何實(shí)現(xiàn)應(yīng)用接口的混合驅(qū)動(dòng)測試 DevOps on DevCloud|如何實(shí)現(xiàn)應(yīng)用接口的混合驅(qū)動(dòng)測試 DevOps on DevCloud|如何實(shí)現(xiàn)應(yīng)用接口的混合驅(qū)動(dòng)測試

圖6 使用關(guān)鍵字

2.2.1 “創(chuàng)建項(xiàng)目”步驟

在用例“manageProject”的編輯用例腳本頁面的“測試步驟”中,新建“URL請求”, 名稱設(shè)置為“createProject”,并輸入以下信息:

§ 請求:請求信息的方法選為“POST”,URL填為“api.devcloud.huaweicloud.com/pcedge/v1/projects”;請求頭名稱為“X-Auth-Token”,值為“${X-Auth-Token}”,此值為關(guān)鍵字getAuthToken的響應(yīng)提取中的出參名稱“X-Auth-Token”。請求體選擇“JSON”,并填寫如下信息:

{

"name": "demo1",

"description": "項(xiàng)目描述",

"type": "scrum",

"homepage": ""

}

§ 檢查點(diǎn):【1】來源為“響應(yīng)碼”,比較符為“等于(數(shù)字)”,目標(biāo)值為“200”?!?】來源為“響應(yīng)體(JSON)”,屬性為“status”,比較符為“等于(字符串、區(qū)分大小寫)”,目標(biāo)值為“success”。

§ 響應(yīng) 提取:出參為“project_uuid”,來源為“響應(yīng)體(JSON)”,屬性為“result.project.project_uuid”。此參數(shù)將作為后續(xù)API接口的輸入。

2.2.2 “查詢工作項(xiàng)列表” 步驟

在用例“manageProject”的編輯用例腳本頁面的“測試步驟”中,新建“URL請求”, 名稱設(shè)置為“queryWorkItemList”,并輸入以下信息:

§ 請求:請求信息的方法選為“POST”,URL填為“api.devcloud.huaweicloud.com/pcedge/v1/projects/${project_uuid}/issues/query”;請求頭名稱為“X-Auth-Token”,值為“${X-Auth-Token}”,此值為關(guān)鍵字getAuthToken的響應(yīng)提取中的出參名稱“X-Auth-Token”。請求體選擇“JSON”,并填寫如下信息:

{

"page_num": "1",

"page_size": "15",

"query_type": "backlog",

"tracker_id": [

2,

3,

7

]

}

§ 檢查點(diǎn):來源為“響應(yīng)碼”,比較符為“等于(數(shù)字)”,目標(biāo)值為“200”。

2.2.3 “創(chuàng)建工作項(xiàng)”步驟

在用例“manageProject”的編輯用例腳本頁面的“測試步驟”中,新建“URL請求”, 名稱設(shè)置為“createWorkItem”,并輸入以下信息:

§ 請求:請求信息的方法選為“POST”,URL填為“api.devcloud.huaweicloud.com/mobile/v1/projects/${project_uuid}/issues”;請求頭名稱為“X-Auth-Token”,值為“${X-Auth-Token}”,此值為關(guān)鍵字getAuthToken的響應(yīng)提取中的出參名稱“X-Auth-Token”。請求體選擇“JSON”,并填寫如下信息:

{

"subject": "Item1",

"description": "工作項(xiàng)描述",

"type_id": 3,

"start_date": "1566809662",

"due_date": "1566896062",

"priority_id": 3,

"servity_id": 12,

"status_id": 1,

"expected_work_hours": 8

}

§ 檢查點(diǎn):來源為“響應(yīng)碼”,比較符為“等于(數(shù)字)”,目標(biāo)值為“200”。

2.2.4 “查詢工作項(xiàng)列表” 步驟

在用例“manageProject”的編輯用例腳本頁面的“測試步驟”中,在步驟“queryWorkItemList”上點(diǎn)擊“復(fù)制”,并將新的步驟拖拽到createWorkItem后面。

2.2.5 測試步驟“刪除項(xiàng)目”

在用例“manageProject”的編輯用例腳本頁面的“測試步驟”中,新建“URL請求”, 名稱設(shè)置為“deleteProject”,并輸入以下信息:

§ 請求:請求信息的方法選為“DELETE”,URL填為“api.devcloud.huaweicloud.com/pcedge/v1/projects/${project_uuid}”;請求頭名稱為“X-Auth-Token”,值為“${X-Auth-Token}”,此值為關(guān)鍵字getAuthToken的響應(yīng)提取中的出參名稱“X-Auth-Token”。

§ 檢查點(diǎn):來源為“響應(yīng)碼”,比較符為“等于(數(shù)字)”,目標(biāo)值為“200”。

2.3 測試情況分析

假如測試用例正確創(chuàng)建,那么執(zhí)行的正常結(jié)果應(yīng)該為:【1】成功創(chuàng)建項(xiàng)目;【2】項(xiàng)目中工作項(xiàng)數(shù)量為0;【3】成功創(chuàng)建工作項(xiàng);【4】工作項(xiàng)數(shù)量為1;【3】成功刪除項(xiàng)目。在此過程中如果出現(xiàn)失敗的情況,可以查看測試用例manageProject的結(jié)果頁面,進(jìn)行分析。

當(dāng)然,大家仔細(xì)觀察測試步驟中有2步是“查詢工作項(xiàng)列表”,可以用關(guān)鍵字來進(jìn)行處理,供大家自行實(shí)現(xiàn)。

本文通過案例展示了華為云DevCloud的接口測試特性的關(guān)鍵能力以及使用。在實(shí)際項(xiàng)目中,測試場景與測試用例等將更為復(fù)雜,因此正如前文所述,產(chǎn)品團(tuán)隊(duì)?wèi)?yīng)該投入精力進(jìn)行測試設(shè)計(jì),在此基礎(chǔ)上進(jìn)行測試自動(dòng)化,實(shí)現(xiàn)持續(xù)測試。當(dāng)然持續(xù)測試不可能一蹴而就,產(chǎn)品團(tuán)隊(duì)可以采用迭代的方式,持續(xù)重構(gòu)優(yōu)化。

華為云DevCloud作為一站式云端DevOps平臺(tái),集成華為近30年研發(fā)實(shí)踐和前沿理念,面向開發(fā)者提供研發(fā)工具服務(wù),讓軟件開發(fā)簡單高效?,F(xiàn)支持5人以下額度范圍內(nèi),可以免費(fèi)使用,并且可以預(yù)約免費(fèi)的產(chǎn)品演示和技術(shù)交流,詳情查看華為云官網(wǎng)

網(wǎng)頁標(biāo)題:DevOpsonDevCloud|如何實(shí)現(xiàn)應(yīng)用接口的混合驅(qū)動(dòng)測試-創(chuàng)新互聯(lián)
鏈接分享:http://jinyejixie.com/article40/dipoho.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供定制開發(fā)、網(wǎng)站策劃營銷型網(wǎng)站建設(shè)、網(wǎng)站導(dǎo)航、微信小程序、品牌網(wǎng)站建設(shè)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

網(wǎng)站托管運(yùn)營
喀什市| 布拖县| 武强县| 耿马| 松江区| 德钦县| 吴堡县| 长宁区| 天长市| 上蔡县| 柘城县| 寻乌县| 多伦县| 乾安县| 辽宁省| 乾安县| 渭南市| 奉新县| 繁峙县| 乐至县| 山东省| 沙田区| 永兴县| 吕梁市| 建始县| 屏边| 彭泽县| 新平| 墨江| 黑山县| 长兴县| 义马市| 中江县| 望都县| 达拉特旗| 中宁县| 临洮县| 清水县| 永仁县| 澄迈县| 湖州市|