技術(shù)分享 | 被測系統(tǒng)架構(gòu)與數(shù)據(jù)流分析

      網(wǎng)友投稿 679 2025-04-02

      本文節(jié)選自霍格沃茲測試學(xué)院內(nèi)部教材


      深入了解測試過程中被測系統(tǒng)的架構(gòu)與數(shù)據(jù)流,有助于理解業(yè)務(wù)邏輯,梳理業(yè)務(wù)用例以及促進(jìn)部門協(xié)同。

      更深的理解業(yè)務(wù)邏輯是指要分析公司是做什么的,公司的重要的商務(wù)決策是什么,公司內(nèi)部數(shù)據(jù)流是怎么運行的,有哪些常見的業(yè)務(wù)場景。這也能考驗對公司業(yè)務(wù)的負(fù)責(zé)程度,可以更好的去服務(wù)業(yè)務(wù)部門,為公司創(chuàng)造價值。

      開源項目litemall系統(tǒng)架構(gòu)

      下面以開源項目 litemall 為例,分析一下這個項目中的系統(tǒng)架構(gòu)。

      litemall 這款產(chǎn)品是一個小的商城,以 SpringBoot 作為后端,Vue 管理員結(jié)合微信小程序作為前端,Vue 用戶作為移動端。

      litemall 的系統(tǒng)架構(gòu)如圖所示:

      image1031×485 108 KB

      litemall 的技術(shù)架構(gòu)如圖所示:

      image1010×514 65.9 KB

      開源項目Mall的系統(tǒng)架構(gòu)

      Mall 項目是一套電商系統(tǒng),包括前臺商城系統(tǒng)及后臺管理系統(tǒng),基于 SpringBoot + MyBatis 實現(xiàn),采用 Docker 容器化部署。前臺商城系統(tǒng)包含首頁門戶、商品推薦、商品搜索、商品展示、購物車、訂單流程、會員中心、客戶服務(wù)、幫助中心等模塊。后臺管理系統(tǒng)包含商品管理、訂單管理、會員管理、促銷管理、運營管理、內(nèi)容管理、統(tǒng)計報表、財務(wù)管理、權(quán)限管理、設(shè)置等模塊。

      系統(tǒng)架構(gòu)

      Mall 的系統(tǒng)架構(gòu)如圖所示:

      image1080×792 188 KB

      業(yè)務(wù)架構(gòu)

      Mall 的業(yè)務(wù)架構(gòu)如圖所示:

      公司架構(gòu)組成

      通過 litemall 和 mall 兩個開源項目可以看出,為了更好的服務(wù)公司,需要了解公司的架構(gòu),公司架構(gòu)一般分為業(yè)務(wù)架構(gòu)和系統(tǒng)架構(gòu)。

      商業(yè)模式:也是目前大家最關(guān)心的問題,公司怎樣使得收益最大化。例如抖音的盈利模式以及其中裂變系統(tǒng)是怎樣參與的,這就需要了解你身處的業(yè)務(wù)部門的業(yè)務(wù)模式以及技術(shù)棧,以及公司的發(fā)展模式與未來趨勢。

      業(yè)務(wù)數(shù)據(jù):了解角色、資源和數(shù)據(jù)。例如公司的賬戶管理中心中的角色有管理員、用戶等,而這些角色又可以分為輸出內(nèi)容的人和消費內(nèi)容的人,除了角色,還需要了解公司平臺上的核心資源的種類以及數(shù)據(jù)信息。

      業(yè)務(wù)流程:了解業(yè)務(wù)數(shù)據(jù)中角色,角色的行為以及數(shù)據(jù)之間的集成關(guān)系。

      系統(tǒng)架構(gòu)就是要把業(yè)務(wù)架構(gòu)進(jìn)行落地實施,實現(xiàn)其中的商業(yè)模式與業(yè)務(wù)流程。

      架構(gòu)角色與技術(shù)棧:架構(gòu)角色基本不會變,而技術(shù)棧會隨著技術(shù)的發(fā)展而不斷變化。其中的具體實現(xiàn)有:

      網(wǎng)關(guān):Apache/Nginx/F5

      應(yīng)用開發(fā):SpringBoot/SpringCloud

      通訊協(xié)議:Dubbo/HTTP/PB

      數(shù)據(jù)處理:Hadoop/Spark/Flink

      數(shù)據(jù)存儲:Redis/MySQL/Oracle/ES

      文檔存儲:MongoDB/HBase/Neo4j

      部署架構(gòu):架構(gòu)角色的集成關(guān)系,對應(yīng)業(yè)務(wù)架構(gòu)中的業(yè)務(wù)流程。

      技術(shù)分享 | 被測系統(tǒng)架構(gòu)與數(shù)據(jù)流分析

      建模語言UML

      為快速了解公司的架構(gòu),可以使用統(tǒng)一的建模語言 UML 來分析公司架構(gòu)。常用的編譯語言工具有:

      plantuml(推薦)

      yed

      draw.io

      processon

      visio (不常用)

      以 plantuml 工具為例,可以設(shè)計以下圖模型分析公司架構(gòu):

      用例圖:用來描述商業(yè)模式、業(yè)務(wù)角色

      時序圖:用來描述業(yè)務(wù)流程、調(diào)用關(guān)系

      部署圖:用來描述系統(tǒng)架構(gòu)與集成關(guān)系

      活動圖:用來分析業(yè)務(wù)邏輯

      @startuml left to right direction actor User as user actor Admin as admin package 商品 { usecase "發(fā)布商品" usecase "瀏覽商品" usecase "購買商品" usecase "下架商品" } package 訂單 { usecase "結(jié)算訂單" usecase "查詢訂單" usecase "退款" usecase "管理訂單" } admin -up-> 發(fā)布商品 admin -up-> 下架商品 admin -up-> 管理訂單 user --> 瀏覽商品 user --> 購買商品 user --> 結(jié)算訂單 user --> 結(jié)算訂單 user --> 查詢訂單 user --> 退款 @enduml

      @startmindmap scale 380 height * <&flag>Debian ** <&globe>Ubuntu *** Linux Mint *** Kubuntu *** Lubuntu *** KDE Neon ** <&graph>LMDE ** <&pulse>SolydXK ** <&people>SteamOS ** <&star>Raspbian with a very long name *** Raspmbc => OSMC *** Raspyfi => Volumio legend right Short legend endlegend @endmindmap

      scale 300 height 用戶 -> 認(rèn)證中心: 登錄操作 認(rèn)證中心 -> 緩存: 存放(key=token+ip,value=token)token 用戶 <- 認(rèn)證中心 : 認(rèn)證成功返回token 用戶 -> 認(rèn)證中心: 下次訪問頭部攜帶token認(rèn)證 認(rèn)證中心 <- 緩存: key=token+ip獲取token 其他服務(wù) <- 認(rèn)證中心: 存在且校驗成功則跳轉(zhuǎn)到用戶請求的其他服務(wù) 其他服務(wù) -> 用戶: 信息

      @startuml scale 580 height start repeat :Test something; if (Something went wrong?) then (no) #palegreen:OK; break endif ->NOK; :Alert "Error with long text"; repeat while (Something went wrong with long text?) is (yes) not (no) ->//merged step//; :Alert "Success"; stop @enduml

      梳理好業(yè)務(wù)用例的本質(zhì)是在測試過程中,更全面的測試公司的業(yè)務(wù)。例如復(fù)雜的電商系統(tǒng)或者保險行業(yè)的管理系統(tǒng),內(nèi)部涉及的業(yè)務(wù)流以及用戶的種類都很復(fù)雜多樣,不理解其中的業(yè)務(wù)邏輯和數(shù)據(jù),就很難編寫一個覆蓋完善的業(yè)務(wù)用例。

      更好的與研發(fā)運維進(jìn)行跨部門協(xié)同是指當(dāng)產(chǎn)品出現(xiàn)問題時,研發(fā)和運維都會排查。作為測試,要去了解出現(xiàn)的問題并幫助研發(fā)運維去解決,這樣可以加快部門協(xié)同進(jìn)度。

      更多技術(shù)文章: https://qrcode.ceba.ceshiren.com/link?name=article&project_id=qrcode&from=hwyun×tamp=1652690731&author=XP

      項目管理 ProjectMan

      版權(quán)聲明:本文內(nèi)容由網(wǎng)絡(luò)用戶投稿,版權(quán)歸原作者所有,本站不擁有其著作權(quán),亦不承擔(dān)相應(yīng)法律責(zé)任。如果您發(fā)現(xiàn)本站中有涉嫌抄襲或描述失實的內(nèi)容,請聯(lián)系我們jiasou666@gmail.com 處理,核實后本網(wǎng)站將在24小時內(nèi)刪除侵權(quán)內(nèi)容。

      版權(quán)聲明:本文內(nèi)容由網(wǎng)絡(luò)用戶投稿,版權(quán)歸原作者所有,本站不擁有其著作權(quán),亦不承擔(dān)相應(yīng)法律責(zé)任。如果您發(fā)現(xiàn)本站中有涉嫌抄襲或描述失實的內(nèi)容,請聯(lián)系我們jiasou666@gmail.com 處理,核實后本網(wǎng)站將在24小時內(nèi)刪除侵權(quán)內(nèi)容。

      上一篇:恒大汽車擬融資5億港元
      下一篇:瘋狂Java學(xué)習(xí)筆記(73)-----------ThreadLocal
      相關(guān)文章
      亚洲国产精品VA在线看黑人| 亚洲一区欧洲一区| 91亚洲视频在线观看| 亚洲AV日韩AV天堂一区二区三区| 亚洲自偷自偷在线制服| 亚洲综合激情另类专区| 国产精品亚洲专区在线播放| 精品国产日韩亚洲一区91| 国产精品亚洲综合天堂夜夜| 在线看亚洲十八禁网站| 亚洲精品乱码久久久久久蜜桃 | 亚洲色大成网站www永久| 日木av无码专区亚洲av毛片| 中文字幕亚洲精品| 亚洲国产精品网站久久| 国产成人精品日本亚洲直接| 亚洲人成网站999久久久综合| 亚洲AV无码一区二区三区久久精品| 久久亚洲欧美国产精品| 亚洲AV中文无码乱人伦在线视色| 亚洲高清最新av网站| 最新亚洲成av人免费看| 亚洲VA中文字幕无码毛片| 麻豆亚洲AV永久无码精品久久 | 亚洲美女视频网址| 亚洲一区免费在线观看| 亚洲综合小说另类图片动图| 一区二区亚洲精品精华液| 成人婷婷网色偷偷亚洲男人的天堂 | 亚洲Av永久无码精品黑人| 亚洲 无码 在线 专区| 久久久久亚洲?V成人无码| 亚洲国产精品无码久久一线| 久久精品国产亚洲AV高清热| 亚洲一区二区三区高清视频| 亚洲av综合av一区二区三区| 精品久久久久久亚洲综合网| 国产亚洲色视频在线| 亚洲国产成人久久精品影视| 亚洲小说图片视频| 亚洲欧洲免费无码|