測(cè)試用例管理:AgileTC平臺(tái)

平臺(tái)介紹

調(diào)研了業(yè)界的一些用例管理平臺(tái)(testlink/qc/禪道/云效等)后品腹,整理了一個(gè)用例管理平臺(tái)應(yīng)該具備的基本功能:

image

最終的系統(tǒng)架構(gòu):

image

使用方式

接入其他平臺(tái)

agiletc嵌入到其他項(xiàng)目管理平臺(tái)的難點(diǎn)主要是前端。當(dāng)前前端也已經(jīng)采用了組件化的方式,方便外部引用拾并。前端目錄結(jié)構(gòu)如下:

web
|-- dist  // 編譯好的文件
|-- src
     |-- components  // 核心組件檬寂,caselist&casemgt
     |-- pages
          |-- casepage      // 用例列表
          |-- testTask        // 用例詳情
          |-- testTaskList  // 基于需求查看任務(wù)列表
     |-- …

如果是接入其他平臺(tái),可以直接參考pages目錄下的代碼溯警。

import Casemgt from './components/case/casemgt'
<Casemgt
     {...this.props}
     type="oe"
     baseUrl=""
     kityApiPrefix="KITY_dev" 
     oeApiPrefix="" 
     doneApiPrefix=""
/>

其中的幾個(gè)參數(shù)如下:

屬性 說(shuō)明 類型 默認(rèn)值
type 嵌入的平臺(tái)類型 string oe
baseUrl 頁(yè)面路由的前綴 string 例:/biz/13/requirement
oeApiPrefix 需要轉(zhuǎn)發(fā)到 oe后端的請(qǐng)求前綴 string api_dev

獨(dú)立使用

運(yùn)行本項(xiàng)目盖淡,可以看到入口頁(yè)年柠,點(diǎn)擊之后進(jìn)入用例列表。如下所示禁舷”肷迹可以看到創(chuàng)建的用例集列表。

image

用戶可以創(chuàng)建新的用例集牵咙,填寫(xiě)用例集名稱派近、關(guān)聯(lián)的需求即可〗嘧溃可以直接上傳xmind渴丸。具體如下圖所示。

image

創(chuàng)建完成用例集后另凌,會(huì)直接跳轉(zhuǎn)到編輯界面谱轨,如下圖所示。

[圖片上傳中...(image-6b561-1634785769955-7)]

編輯完成吠谢,保存用例后土童,可以退回列表頁(yè)。此時(shí)可以創(chuàng)建測(cè)試任務(wù)工坊。

[圖片上傳中...(image-b76627-1634785769955-6)]

創(chuàng)建測(cè)試任務(wù)献汗,需要填寫(xiě)相關(guān)的信息,如負(fù)責(zé)人王污、測(cè)試周期等罢吃。此處支持通過(guò)優(yōu)先級(jí)或者自定義標(biāo)簽的方式過(guò)濾測(cè)試用例。

[圖片上傳中...(image-148593-1634785769955-5)]

測(cè)試任務(wù)創(chuàng)建好之后昭齐,會(huì)展示在對(duì)接的用例集下面尿招。

image

之后可以點(diǎn)擊測(cè)試任務(wù)名稱,通過(guò)標(biāo)記圖標(biāo)的方式執(zhí)行測(cè)試任務(wù)阱驾。

image

平臺(tái)開(kāi)發(fā)過(guò)程中的問(wèn)題

1.業(yè)界的用例平臺(tái)有哪些就谜?

a.線下用例管理方案一般有excel和xmind。

優(yōu)點(diǎn)

  • 功能完善:能夠滿足用例管理訴求
  • 穩(wěn)定可靠
  • 良好的操作體驗(yàn)

缺點(diǎn)

  • 用例集增加導(dǎo)致的管理困難
  • 測(cè)試過(guò)程黑盒里覆,用例編寫(xiě)和測(cè)試執(zhí)行過(guò)程無(wú)感知丧荐,無(wú)法進(jìn)行過(guò)程改進(jìn)
  • 協(xié)同效率低
b.線上用例管理
test-link QC 禪道 云效
系統(tǒng)性質(zhì) 開(kāi)源/商業(yè) 商業(yè) 開(kāi)源/商業(yè) 商業(yè)
操作類型 表單填寫(xiě) 表單填寫(xiě) 表單填寫(xiě) 表單填寫(xiě),支持腦圖展示
功能支持 項(xiàng)目管理

用例管理
測(cè)試計(jì)劃管理
測(cè)試統(tǒng)計(jì) | 需求管理
測(cè)試用例管理
測(cè)試過(guò)程管理
BUG管理
權(quán)限管理 | 需求管理
測(cè)試用例管理
測(cè)試過(guò)程管理
BUG管理
權(quán)限管理 | 腦圖導(dǎo)入
測(cè)試用例管理
測(cè)試過(guò)程管理
BUG管理
權(quán)限管理 |

2.腦圖編輯器方案有哪些租谈?

選擇腦圖編輯器時(shí),主要考慮了所處的環(huán)境和給用戶的價(jià)值,環(huán)境包括依托的系統(tǒng)架構(gòu)和當(dāng)時(shí)的人力現(xiàn)狀割去。

選型角度 分析過(guò)程 方案需要滿足的條件
環(huán)境 依托項(xiàng)目管理web平臺(tái)窟却。平臺(tái)采用前后端分離的架構(gòu),前端是react呻逆,后端是Spring boot 網(wǎng)頁(yè)版腦圖編輯
開(kāi)發(fā)成本 技術(shù)棧:基礎(chǔ)的java能力
QA兼職夸赫,業(yè)務(wù)測(cè)試之余進(jìn)行開(kāi)發(fā) 學(xué)習(xí)和改造成本低
用戶價(jià)值 (新體驗(yàn)-舊體驗(yàn))-替換成本
提升新系統(tǒng)操作體驗(yàn),降低替換成本 類似xmind操作體驗(yàn)
增加測(cè)試任務(wù)管理和用例管理定制功能

調(diào)研了如下的腦圖框架:

開(kāi)源工具 kityminder jsMind My Mind xmind Free Mind
技術(shù)架構(gòu) JavaScript

采用angular框架
網(wǎng)頁(yè)版腦圖編輯 | JavaScript
網(wǎng)頁(yè)版腦圖編輯 | JavaScript
網(wǎng)頁(yè)版腦圖編輯 | Java
本地APP版本咖城,無(wú)網(wǎng)頁(yè)版 | Java
本地APP版本茬腿,無(wú)網(wǎng)頁(yè)版 |
| 用戶價(jià)值 | 交互基本跟xmind一致
兼容xmind用例 | 與xmind操作差異大
支持節(jié)點(diǎn)折疊
沒(méi)有圖標(biāo)標(biāo)識(shí) | 與xmind操作接近
圖標(biāo)不易用
不支持節(jié)點(diǎn)折疊 | 操作習(xí)慣一致 | 交互與xmind接近 |
| 開(kāi)發(fā)成本 | 中:百度出品,良好的分層封裝 | 低宜雀,約4K | 中 | 高:工程復(fù)雜切平,代碼量30K+ | 代碼未下載成功 |

最終,選擇了百度的kityminder進(jìn)行二次開(kāi)發(fā)辐董。

3.多人協(xié)同是怎么做的悴品?

多人協(xié)同經(jīng)歷了3個(gè)版本。 最開(kāi)始采用了加鎖的方案简烘,不支持多人實(shí)時(shí)協(xié)同苔严。其中1個(gè)用戶打開(kāi)編輯后,其他用戶無(wú)法編輯孤澎。 之后有些人反饋的多人協(xié)同的訴求届氢。為了支持快速上線,我們采用了diff-patch的方案解決編輯沖突覆旭,用polling實(shí)現(xiàn)實(shí)時(shí)通信退子。如圖所示。用戶A變更后姐扮,會(huì)將diff發(fā)送到服務(wù)端絮供,而每個(gè)客戶端會(huì)定時(shí)從服務(wù)端拉起最新的case。這里就存在1個(gè)問(wèn)題茶敏,如果拉去時(shí)間設(shè)置過(guò)短壤靶,客戶端與服務(wù)端的交互就會(huì)特別頻繁;設(shè)置時(shí)間過(guò)長(zhǎng)惊搏,由于更新不及時(shí)贮乳,就會(huì)導(dǎo)致用例丟失。實(shí)際該功能上線之后交互體驗(yàn)較差恬惯。 最后采用了websocket的方式解決實(shí)時(shí)通信問(wèn)題向拆。如圖所示,客戶端A的變更會(huì)及時(shí)發(fā)送到服務(wù)端酪耳,服務(wù)端接受變更后浓恳,會(huì)推送給其他的客戶端刹缝。

[圖片上傳中...(image-3d332a-1634785769954-2)]

4.分布式部署怎么做?

為什么要分布式部署呢颈将?分布式部署的好處:1.避免單點(diǎn)故障導(dǎo)致的服務(wù)不可用梢夯;2.承載更大的用戶量。如果直接進(jìn)行分布式部署晴圾,會(huì)存在如上圖所示的問(wèn)題颂砸。A/B/C三個(gè)客戶端,均打開(kāi)1個(gè)用例死姚,服務(wù)端會(huì)建立3個(gè)session來(lái)保存與客戶端的鏈接信息人乓。這時(shí)出現(xiàn)3個(gè)session不在1個(gè)容器中。例如用戶A編輯用例后都毒,同步到服務(wù)端色罚,服務(wù)端發(fā)送變更到clientB,但是C就無(wú)法獲取最新的變更温鸽。

image

這是一個(gè)服務(wù)間通信的問(wèn)題保屯。首先想到的就是用消息隊(duì)列的方式,如圖所示涤垫,用戶A變更后姑尺,同步到服務(wù)端,服務(wù)端會(huì)將變更發(fā)送到客戶端B蝠猬,并且發(fā)送內(nèi)容到消息隊(duì)列切蟋,服務(wù)2就可以消費(fèi)消息,更新用例榆芦,并同步到客戶端C柄粹。此時(shí)存在一個(gè)問(wèn)題是:消息是一個(gè)異步動(dòng)作。這里匆绣,如果clientC是1個(gè)新打開(kāi)用例集的用戶驻右,如果連接到服務(wù)2上,可能會(huì)發(fā)現(xiàn)沒(méi)有打開(kāi)過(guò)該用例崎淳,就會(huì)從數(shù)據(jù)庫(kù)讀取用例堪夭,就會(huì)讀到老的用例。因此增加了1層redis拣凹。來(lái)存session中最新的case content森爽。

image
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市嚣镜,隨后出現(xiàn)的幾起案子爬迟,更是在濱河造成了極大的恐慌,老刑警劉巖菊匿,帶你破解...
    沈念sama閱讀 217,406評(píng)論 6 503
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件付呕,死亡現(xiàn)場(chǎng)離奇詭異计福,居然都是意外死亡,警方通過(guò)查閱死者的電腦和手機(jī)徽职,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,732評(píng)論 3 393
  • 文/潘曉璐 我一進(jìn)店門(mén)棒搜,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái),“玉大人活箕,你說(shuō)我怎么就攤上這事】煽睿” “怎么了育韩?”我有些...
    開(kāi)封第一講書(shū)人閱讀 163,711評(píng)論 0 353
  • 文/不壞的土叔 我叫張陵,是天一觀的道長(zhǎng)闺鲸。 經(jīng)常有香客問(wèn)我筋讨,道長(zhǎng),這世上最難降的妖魔是什么摸恍? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 58,380評(píng)論 1 293
  • 正文 為了忘掉前任悉罕,我火速辦了婚禮,結(jié)果婚禮上立镶,老公的妹妹穿的比我還像新娘壁袄。我一直安慰自己,他們只是感情好媚媒,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,432評(píng)論 6 392
  • 文/花漫 我一把揭開(kāi)白布嗜逻。 她就那樣靜靜地躺著,像睡著了一般缭召。 火紅的嫁衣襯著肌膚如雪栈顷。 梳的紋絲不亂的頭發(fā)上,一...
    開(kāi)封第一講書(shū)人閱讀 51,301評(píng)論 1 301
  • 那天嵌巷,我揣著相機(jī)與錄音萄凤,去河邊找鬼。 笑死搪哪,一個(gè)胖子當(dāng)著我的面吹牛靡努,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播噩死,決...
    沈念sama閱讀 40,145評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼颤难,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來(lái)了已维?” 一聲冷哼從身側(cè)響起行嗤,我...
    開(kāi)封第一講書(shū)人閱讀 39,008評(píng)論 0 276
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎垛耳,沒(méi)想到半個(gè)月后栅屏,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體飘千,經(jīng)...
    沈念sama閱讀 45,443評(píng)論 1 314
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,649評(píng)論 3 334
  • 正文 我和宋清朗相戀三年栈雳,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了护奈。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 39,795評(píng)論 1 347
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡哥纫,死狀恐怖霉旗,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情蛀骇,我是刑警寧澤厌秒,帶...
    沈念sama閱讀 35,501評(píng)論 5 345
  • 正文 年R本政府宣布,位于F島的核電站擅憔,受9級(jí)特大地震影響鸵闪,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜暑诸,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,119評(píng)論 3 328
  • 文/蒙蒙 一蚌讼、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧个榕,春花似錦篡石、人聲如沸。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 31,731評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)。三九已至苛让,卻和暖如春沟蔑,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背狱杰。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 32,865評(píng)論 1 269
  • 我被黑心中介騙來(lái)泰國(guó)打工瘦材, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人仿畸。 一個(gè)月前我還...
    沈念sama閱讀 47,899評(píng)論 2 370
  • 正文 我出身青樓食棕,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親错沽。 傳聞我的和親對(duì)象是個(gè)殘疾皇子簿晓,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,724評(píng)論 2 354

推薦閱讀更多精彩內(nèi)容