<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          阿里云薛冰洋:邊緣云自動化測試解決方案—TestMaster

          共 4508字,需瀏覽 10分鐘

           ·

          2022-08-02 11:17


          2022年7月8日-7月9日,QECon全球軟件質量&效能大會在深圳正式召開。本次大會聚焦“研發(fā)效能、卓越工程、質量工程、數(shù)智化測試”四大主題展開討論,邀請多位企業(yè)一線技術專家,共同關注軟件的質量保障與研發(fā)效能,激發(fā)質量新動能,鑄就效能新時代。



          阿里云智能測試開發(fā)專家薛冰洋受邀參加大會,并分享了以《邊緣云自動化測試解決方案—TestMaster》為主題的演講,介紹了邊緣云質量保障工作中的多重挑戰(zhàn),解讀了以平臺化技術全面賦能測試服務的創(chuàng)新實踐,以下為整理內容:




          邊緣云介紹




          邊緣云是基于云計算技術的核心和邊緣計算能力,構筑在邊緣基礎設施之上的云計算平臺。


          近年來,隨著視頻直播、物聯(lián)網(wǎng)等應用場景快速發(fā)展,近80%的數(shù)據(jù)和計算都發(fā)生在邊緣上,因此邊緣云具備降低時延、減輕云端壓力、降低帶寬成本、全網(wǎng)調度與算力分發(fā)能力等優(yōu)勢,其業(yè)務也與公有云類似,包括計算、網(wǎng)絡、存儲、安全等類型。



          目前,阿里云在全球擁有2800+節(jié)點,全網(wǎng)帶寬輸出能力達150+Tbps,業(yè)務范圍覆蓋了CDN、直播加速、全站加速、安全加速、邊緣節(jié)點、邊緣游戲等。




          質量挑戰(zhàn)




          阿里云在資源覆蓋上的超大規(guī)模、在業(yè)務范圍上的多樣性與縱深性對于質量保障工作造成了多方面挑戰(zhàn)。


          來自客戶側的挑戰(zhàn)


          邊緣云客戶來自金融、電商、政企、直播、短視頻等行業(yè),覆蓋著當前互聯(lián)網(wǎng)上大部分流量。同時,邊緣云還為重大活動,如雙十一、大型活動晚會、大型體育賽事等提供底層支持。因此,作為云服務提供商,邊緣云的研發(fā)、測試團隊面臨著以下方面問題:


          • 穩(wěn)定性問題。如果穩(wěn)定性不佳,將面臨巨額賠付、大額資損,甚至是大規(guī)模輿情;

          • 性能問題。邊緣云提供超大規(guī)模流量支撐,對于性能有較高要求,尤其短視頻、直播領域的快速發(fā)展催生了高并發(fā)、低延時等方面的需求;

          • 技術問題。目前大部分互聯(lián)網(wǎng)公司采用新興技術,作為服務商同樣需要快速迭代,比如對HTTP3、QUIC等協(xié)議的支持;傳統(tǒng)行業(yè)如金融、政企等類型公司則可能采用傳統(tǒng)技術,作為服務方需要進行同步,在技術跨度方面上無疑是不小的挑戰(zhàn);

          • 需求問題。針對不同類型業(yè)務與應用場景,邊緣云需要在短時間內滿足大量客戶差異化、定制化的需求。

          技術差異造成的挑戰(zhàn)


          邊緣云與移動端、電商類業(yè)務有明顯差別,其測試范圍更加關注底層業(yè)務:如超大規(guī)模分布式節(jié)點測試,音視頻類測試,穩(wěn)定性保障等。


          • 機房分布:公共云機房分布為集中式,節(jié)點較少;邊緣云機房全球分布,有數(shù)千個分布在不同城市的節(jié)點;

          • 節(jié)點規(guī)模:公共云節(jié)點規(guī)模較大;邊緣云資源有限,機房相對較小;

          • 流量調度:公共云采用單region調度;邊緣云采用全局調度,復雜性較高;

          • 運維管控:公共云采用集中管控方式;由于節(jié)點多、機房全球分布,邊緣云需要自治能力;

          • 彈性能力、網(wǎng)絡能力、存儲架構與資源架構:公共云的單機房在建設初期采用系統(tǒng)與機型多為統(tǒng)一采購較為標準,網(wǎng)絡可靠性與存儲性能相對較高;邊緣云網(wǎng)絡可靠性相對較低,不適合持久化存儲,系統(tǒng)異構性強但成本較低。


          在上述前提下,邊緣云的質量保障復雜度與公共云差異較大,且難度有所提升,需要在全局調度策略上提供支持。


          測試自身面臨的挑戰(zhàn)


          邊緣云與移動端、電商類業(yè)務有明顯差別,其測試范圍更加關注底層業(yè)務:如超大規(guī)模分布式節(jié)點測試,音視頻類測試,穩(wěn)定性保障等。


          在發(fā)布與交互方面,由于邊緣云的分布特性要求,最終全球版本需保持一致性,為此,需要對大規(guī)模節(jié)點同時進行測試,維護難度較大;由于需要對大量不同業(yè)務線進行測試,且發(fā)布周期在1~30天,發(fā)布頻次平均每周近百次,客戶要求緊急修改時還需要短時間內對大量服務進行回歸性驗證,對測試平臺的性能響應度與壓力承受能力提出了較高要求。


          在測試團隊方面,邊緣云建設了測試基礎設施,通過平臺化賦能團隊,保障了其業(yè)務的穩(wěn)定性,也為團隊未來發(fā)展奠定了基礎。




          技術方案



          給誰用?用在哪?


          TestMaster平臺目標用戶包括了研發(fā)、測試、產(chǎn)品、運維、PDSA、合作方,目的是讓各方參與到自動化開發(fā)過程中,從而解決在質量保證過程中業(yè)務線覆蓋不足、測試周期長、人力緊缺等問題。


          TestMaster對接平臺包括審批系統(tǒng)、發(fā)布系統(tǒng)、Aone、缺陷系統(tǒng)等,作為發(fā)布流程中連通研發(fā)與運維橋梁,幫助研發(fā)體系中不同角色融入研發(fā)流程中,改善不合理現(xiàn)狀。


          平臺核心目標


          • 簡單高效:通過提供簡單穩(wěn)定高效的自動化手段,提供快速提升自動化的覆蓋能力;

          • 多區(qū)域精準測試:對分布在全球不同區(qū)域的大規(guī)模節(jié)點提供分布式測試方案;

          • 豐富的測試服務:為差異化場景與業(yè)務線提供相應的測試服務;

          • 應對復雜場景的測試方案:以應用的形式提供面向不同測試場景的解決方案,為用戶解決相關的質量問題。

          TestMaster測試平臺架構


          TestMaster平臺架構從下往上可以分為:物理層、系統(tǒng)層、分布式自動化層、管控層、微服務層、網(wǎng)關層以及應用層,按照測試基座、自動化引擎、測試服務、測試應用共四個方面進行介紹。




          資源充沛的測試基座


          測試基座主要是為了解決在自動化測試過程中的資源問題。


          • 如視頻類測試對帶寬要求高且線路覆蓋全。TestMaster平臺提供了100G帶寬,電信、聯(lián)通、移動三種線路。在直播回歸測試過程中,預估總流量在20G左右,所以多個用戶同時進行測試,100G帶寬可以滿足其需求。


          • 對于海量測試任務與不同硬件架構場景,平臺提供了百臺客戶端,支持X86與ARM架構,滿足主流硬件測試場景。

          • 對于多種存儲需求提供自動化的數(shù)據(jù)存儲、大型文件存儲方案,最高可達1PB的分布式文件存儲能力能夠應對如直播類業(yè)務線中對4K、8K視頻的推流本地存儲;針對長久存儲需求,還提供無限制的對象存儲


          • 于自動化開發(fā)與運行支持目前主流操作系統(tǒng)如Linux、Mac、Windows,Android。


          • 對于邊緣測試提供面向不同地域的測試節(jié)點。主要包含在華北、華東、華南三個大區(qū),能夠應對全國不同區(qū)域節(jié)點與新增節(jié)點的邊緣測試。


          總結來說,TestMaster測試平臺的測試基座具有三個特點:簡單、強大、豐富。開發(fā)者無需關注底層資源問題,特殊需求如網(wǎng)絡線路連通測試、相關地域機器使用,TestMaster都將提供相應API進行調用。




          強大的自動化引擎


          針對邊緣云的自動化測試工作存在以下業(yè)務痛點:


          • 單節(jié)點內包含至少數(shù)十臺機器,測試過程中需要大流量、高性能支持;

          • 產(chǎn)品形態(tài)差異大,如計算類、視頻流量類、CDN類、安全類等,所需測試工具種類多;

          • 底層測試或系統(tǒng)測試耗時長,若涉及全網(wǎng)下發(fā)耗時加倍,效率難以保證;

          • 發(fā)布窗口固定,需支撐多業(yè)務線大批量同時測試;

          • 節(jié)點分布涉及全國,需支持跨區(qū)域測試;

          • 開發(fā)技術棧不同,需減少學習成本,幫助開發(fā)者快速理解業(yè)務。


          解決以上問題需要從多方面入手,采用平臺提供的不同服務逐一解決。


          圖中所示為自動化系統(tǒng)中的測試用例,使用自然語言以markdown的形式進行編寫,經(jīng)過解析生成開發(fā)者所熟悉的語言并在測試機上運行,進一步生成markdown測試報告,與最初的測試用例形式完全一致,僅添加日志與錯誤信息。



          使用自然語言進行撰寫能夠助力用戶快速理解業(yè)務,減少上手難度,短時間內可以積累數(shù)千集成測試用例,并且單人可以負責多條業(yè)務線,減少人工成本。以自然語言方式進行交互還方便了開發(fā)人員、測試人員相互理解,降低了溝通成本,還可以通過釘釘將業(yè)務自動分發(fā)到不同群組,使問題定位更加迅速。


          測試工作運行流程如圖所示:



          • 從業(yè)務上來說,每個job運行的業(yè)務可以是計算類、流量類或安全類,測試場景跨度大,共積累了300+小時的復雜場景測試用例;

          • 從性能上來說,每個worker可以并行運行多個用例,在2小時之內可以完成全業(yè)務線的全量測試工作;

          • 從穩(wěn)定性上來說,每個job、worker與節(jié)點之間完全隔離,不同業(yè)務之間運行沒有影響,同時支撐型服務實現(xiàn)節(jié)點內自治,相互之間沒有影響,與發(fā)布進行強管控,保證24小時不因測試系統(tǒng)問題而中斷發(fā)布;

          • 從能力上來說,支持markdown、yaml、UI等方式撰寫測試用例,數(shù)十種工具包與上百種library可以調用,支持了并行、串行、回滾、清理等打標的按需運行;

          • 從易用性上來說,只需用戶自行選擇運行方式、關注自身業(yè)務,其中的worker、job、service報告、通知、調度等對于用戶完全透明、無需感知。


          場景豐富的測試服務



          測試平臺相較于單一的自動化框架面臨的業(yè)務場景與技術難度有著明顯區(qū)別,其主要體現(xiàn)在:


          • 承載十幾條不同種類的業(yè)務線,數(shù)百種測試場景;


          • 數(shù)量龐大的全鏈路用例,運行時間長達幾百小時;


          • 測試過程中資源分配、運行策略等復雜度極高;

          • 自動化用例動態(tài)變化過程中如何精準測試;


          基于微服務架構設計的TestMaster,在整個運行過程中通過在 數(shù)據(jù)準備-計算與調度 - 管控 -回收 4個階段應用不同微服務解決了上述問題,在邊緣云、視頻云得到了良好應用。



          應用實踐



          集成測試應用


          與業(yè)界常見的發(fā)布方式不同,邊緣云采用了并行發(fā)布方式,單次發(fā)布規(guī)模大,要求測試平臺具備支撐多業(yè)務線同時發(fā)布測試能力。


          如上圖所示,TestMaster平臺使用其豐富的微服務提供的能力,在整個集成測試過程中連通上下游系統(tǒng),實時反饋測試進展,精確到commitID與開發(fā)者,通過釘釘推進研發(fā)對BUG定位與解決。


          同時集成測試服務在效率、覆蓋度、復雜度上為不同業(yè)務線提供了強有力支撐,300+小時的全鏈路自動化用例僅需2小時即可完成回歸測試。

          場景測試應用


          測試平臺用戶包括產(chǎn)品、研發(fā)、測試、運維與PDSA。以產(chǎn)品用戶為例,通過任意點擊測試場景選擇被測節(jié)點,運行即可得到對應結果,自主掌控驗收過程,無需測試、研發(fā)等技術人員參與。



          ENS驗收應用


          對比前文流量類測試,邊緣節(jié)點ENS驗收測試為計算類測試。由于初期業(yè)務量較小,每個產(chǎn)生的虛擬機都需要經(jīng)過計算資源、存儲資源、網(wǎng)絡資源等類型的資源校驗后才能最終交付給用戶,出現(xiàn)問題后接收通知進行排障。隨著業(yè)務量突增,業(yè)務流程進行加速,通過TestMaster平臺對接建設系統(tǒng)實現(xiàn)了自動化處理,大幅提升了驗收時間與驗收次數(shù),顯著優(yōu)化了交付效率。



          測試團隊核心能力擴展


          邊緣網(wǎng)絡內部不通、測試權限問題、大規(guī)模異常測試導致的節(jié)點異常驗收中斷等,導致測試不能覆蓋關鍵應用,部分應用不可測問題。基于上述情況TestMaster平臺開發(fā)了保護傘應用,打通了節(jié)點內部限制,提升了測試覆蓋精度,擴大了測試范圍。同時根據(jù)各業(yè)務線差異,設計了嚴格的權限管控,保障業(yè)務測試隔離。該應用解決了測試團隊核心難題,上線后使用量激增,效率提升數(shù)十倍


          階段性成果


          TestMaster于2020年4月立項進行開發(fā),在質量保障上為業(yè)務提供重要支持。應用上線至今,支撐了10條業(yè)務線、數(shù)百種場景測試,業(yè)務范圍包括了電商、直播、短視頻、政企等,大幅提升交付效率,節(jié)省用人成本,實現(xiàn)了故障大幅收斂。





          未來展望




          隨著邊緣云業(yè)務不斷發(fā)展,外部產(chǎn)品形態(tài)持續(xù)變化,內部技術不斷提升,測試平臺也需要伴隨產(chǎn)品與技術的發(fā)展,提供用途廣泛穩(wěn)定的測試服務。


          同時TestMaster平臺通過打通邊緣云的不同系統(tǒng),具備了數(shù)據(jù)整合能力,我們希望通過這些數(shù)據(jù)能夠輸出質量指標,為體系化建設邊緣云提供數(shù)據(jù)基礎。

          往期內容推薦


          瀏覽 42
          點贊
          評論
          收藏
          分享

          手機掃一掃分享

          分享
          舉報
          評論
          圖片
          表情
          推薦
          點贊
          評論
          收藏
          分享

          手機掃一掃分享

          分享
          舉報
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  国内视频精品在线播放 | 久久亚洲一区女同性恋中文字幕 | 超碰人人在线 | 亚洲中文字幕在线观看视频 | 千百撸日夜夜 |