999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

MS自動化測試工具的設計與實現*

2015-07-03 09:43:04蘇堅李煒
電信工程技術與標準化 2015年6期

蘇堅,李煒

(1 北京郵電大學網絡與交換技術國家重點實驗室,北京 100876; 2 杭州東信北郵信息技術有限公司,北京 100191)

東信北郵媒體服務器(EBMSE)作為面向NGN、3G和IMS并兼容現有通信網絡的電信級設備,基于模塊化的設計,采用松散藕合的體系結構,提供在通信網絡上實現各種業務所需的媒體資源功能,包括基于用戶交互功能(播放音頻和視頻、收號、錄音、混音等)、高級用戶交互功能(交互式語音應答、消息)、同網絡橋接、跨網絡橋接、多方音/視頻會議功能和數據功能,為電信業務提供強大的媒體資源功能。

測試MS媒體能力的方式可以有多種,例如Kapanga Softphone、CM-IMS等軟終端。此外還有開源軟件SIP,但是他們都有一定的局限性,只能一次測試一個用例,當測試項不同時還需要修改MSML(Media Server Markup Language)等腳本,因此它們只適合作為功能性驗證對MS進行測試。測試MS媒體能力的完備性需要一種自動化的測試工具,它能夠根據用例模板一次生成包括放音、收號、錄音、放音收號、放音錄音等數百個測試用例,并按照一定的規則對測試用例進行測試,最終生成一份針對所有用例的測試報告。本次設計的自動化測試工具就是一款這樣的工具。

Python是一種面向對象的解釋型的計算機程序設計語言,功能強大,成熟穩定,具有腳本語言中最豐富和強大的類庫,非常適合本次自動化測試工具的實現。

1 自動化測試工具的設計

1.1 自動化測試工具總體架構

圖1展示了自動化測試工具的內部結構圖。其中包含5個模塊,用例生成模塊、控制消息收發模塊、媒體數據收發模塊、日志模塊、測試結果統計模塊。

圖1 自動化測試工具內部結構圖

(1)用例生成模塊主要用于生成測試用例,其中的測試用例包括放音、收號、錄音、放音收號、放音錄音的測試用例。

(2)控制消息收發模塊主要用于收發SIP信令消息,同時指示媒體收發模塊與媒體服務器進行媒體數據的收發。

(3)媒體數據收發模塊主要用于與媒體服務器建立數據傳輸通道,并基于RTP協議進行媒體數據的收發。

(4)日志模塊主要是將控制消息收發模塊與MS之間交互的SIP消息記錄到SIP日志文件,將媒體數據收發模塊與MS之間交互的媒體數據記錄到媒體日志文件。

(5)測試結果統計模塊主要是對SIP日志文件和媒體日志文件進行分析,統計既定測試項(媒體時長、媒體編解碼類型、會話時長等)是否符合預期結果,判定該測試用例是否通過,并將該測試用例及測試結果添加到自動化測試報告。

1.2 用例生成模塊

圖2 用例生成模塊內部結構圖

如圖2所示,用例生成模塊主要分成兩部分,第一部分以用例模板為輸入,輸出標準的測試用例,根據收號(dtmf)用例模板生成所有收號的測試用例,根據純放音(aupa)的用例模板生成所有放音的測試用例,根據錄音(record)的用例模板生成所有的錄音的測試用例。第二部分主要用于生成不同組合的測試用例,可以根據放音和收號的測試用例生成所有放音收號的用例,可以根據放音和錄音的測試用例生成所有放音錄音的測試用例。

該模塊涉及到的放音、收號、錄音的用例模板都是從MSML標準文檔中提取相關屬性值并以XML樹形結構設計的,測試用例生成時會遍歷每種屬性的各種取值,生成各種不同屬性組合的測試用例。

1.3 控制消息收發模塊

圖3 控制消息收發模塊的內部結構圖

如圖3所示,控制消息收發模塊分為兩部分,一部分負責與媒體服務器按照SIP通信協議進行通信;另一部分的工作是負責將SIP消息和模塊內部消息相互進行轉譯。

消息收發模塊作為發端時,向MS發起申請資源請求和RTP鏈接請求等消息;作為接收端時,接收來自MS對資源申請的分配結果及RTP鏈接請求處理結果等消息。此外,該模塊還會將收發到的SIP消息統一上報到日志模塊。

由于MS與自動化測試工具之間使用的SIP協議不適用于內部模塊,消息收發模塊的另外一個功能就是將SIP消息轉化為簡單的內部控制命令。

圖4 自動化測試工具與MS之間SIP信令交互圖

自動化測試工具與MS之間的SIP信令交互如圖4所示。控制消息收發模塊與MS之間SIP消息的收發是基于UDP(User Datagrame Protocol)的Socket實 現 的,自動化測試工具綁定一個端口專門用于收發SIP消息,此外,它還會申請一個端口,用于媒體數據收發模塊收發與MS之間的媒體數據的收發。

1.4 媒體數據收發模塊

圖5 媒體數據收發模塊的內部結構圖

如圖5所示,媒體數據收發模塊主要負責RTP數據流的收發。當作為收端時,接收來自MS的RTP數據流,解碼RTP數據從中提取媒體裸數據,并將媒體裸數據發送到日志模塊;當作為發端時,將媒體數據按照RTP協議封裝成RTP數據分組發送給MS。

1.5 日志模塊

如圖6所示,日志模塊主要包含兩部分:對自動化測試工具和MS之間交互的SIP消息進行記錄并生產SIP日志文件;對媒體收發模塊發來的媒體裸數據進行記錄并生成媒體日志文件,以備后續操作驗證測試用例是否通過做準備。

圖7 系統狀態數據統計模塊的內部結構圖

圖6 日志模塊的內部結構圖

1.6 測試結果統計模塊

如圖7所示,測試結果統計模塊主要對SIP日志和媒體數據日志進行分析。首先從SIP日志中獲取自動化測試工具下發給MS的INFO并根據RFC規范對其進行解析,依據標準生成一組統計項:會話時長、媒體時長,并從SIP日志中Invite-200消息獲取MS發送媒體數據的編解碼類型。與此同時對媒體數據日志進行分析,判斷媒體數據的編解碼類型,根據RTP數據分組的個數計算出媒體時長,具體計算方法是:

媒體時長=RTP媒體包的數量/50 (每20 ms發送一個RTP數據分組)。

然后對從SIP日志中獲取到的標準統計項與從媒體數據日志獲取到媒體編解碼類型和媒體時長進行對比,如果媒體時長及會話時長在誤差范圍內,則測試用例通過,否則測試用例不通過,并將其記錄到自動化測試報告。

2 自動化測試工具基于Python的實現

按照自動化測試工具整體的設計思路及各模塊內部詳細的結構設計,使用Python語言對測試工具進行編碼實現,其中最重要的兩個模塊就是控制消息收發模塊與媒體數據傳輸模塊,兩個模塊都是基于UDP Socket與MS進行信令或媒體數據的收發,而Python語言提供了Socket模塊及豐富的方法可供使用。媒體數據收發模塊主要功能之一就是進行RTP數據編碼或解碼,而Python語言提供了struct模塊,其中的pack、unpack等方法極大提高了對RTP數據編碼、解碼的開發效率。

3 結論

本文以節約手工測試當中的人力資源和時間成本為目標,設計并實現了對媒體服務器進行回歸測試的自動化測試工具。設計內容包括自動化測試工具整體結構、內部各模塊的詳細結構。該測試工具可以對媒體服務器的媒體能力進行完備的測試,測試功能主要包括放音、收號、錄音、放音收號、放音錄音等。此外,自動化測試在每項功能測試結束后都會自動生成一份測試報告。

本文中各模塊的設計均使用Python語言編碼實現,Python語言提供了豐富的功能模塊,極大提高了開發的效率。此外,實現過程中還使用Python多進程對其進行了優化,極大縮短了測試周期,提高了測試效率,節約了時間成本。

[1]中國移動通信集團.中國移動CM-IMS MRF設備規范[S].2011.

[2]中國移動通信集團.中國移動MRFCMRFP設備規范[S].2010.

[3]Rosenberg J, Schulzrinne H, Camarillo G, et al.SIP: Session Initiation Protocol[S].IETF RFC 3261, 2002.

[4]Schulzrinne H, Frederick R, Jacobson V.RTP: A Transport Protocol for Real-Time Applications[S].IETF RFC3550, 2003.

[5]Knightson K, Morita N, Towle T.NGN Architecture: Generic Principles, Functional Architecture, and Implementation[J].IEEE Communications Magazine, 2005(10).

[6]Saleem A, Xin Y, Sharratt G, et al.Media Server Markup Language(MSML)[S].IETF RFC 5707, 2010.

[7]Handley M, Jacobson V, Perkins C.SDP: Session Description Protocol[S].IETF RFC 4566, 2006.

主站蜘蛛池模板: 亚洲欧美自拍一区| 性色生活片在线观看| 不卡的在线视频免费观看| julia中文字幕久久亚洲| 白丝美女办公室高潮喷水视频| 亚洲一级毛片在线观| 亚洲精品777| 久久精品视频一| 国产精品伦视频观看免费| 欧美成人a∨视频免费观看| 日本黄网在线观看| 久综合日韩| 热伊人99re久久精品最新地| 欧美日韩中文国产va另类| 在线综合亚洲欧美网站| 亚洲精品你懂的| 无码免费试看| 成人一区专区在线观看| 国产福利影院在线观看| 国产精品免费久久久久影院无码| 亚洲Av综合日韩精品久久久| 精品福利网| 毛片久久网站小视频| 亚洲天堂网在线观看视频| 欧美精品在线观看视频| 国产真实乱子伦视频播放| 色爽网免费视频| 亚洲性影院| 狠狠综合久久| 97久久人人超碰国产精品| 国产精品永久不卡免费视频 | 免费不卡在线观看av| 国产精品白浆无码流出在线看| 国产精品女在线观看| 九九热精品视频在线| 日韩黄色大片免费看| 免费久久一级欧美特大黄| 国产精品尤物铁牛tv | 国产成人1024精品下载| 不卡国产视频第一页| 1级黄色毛片| 欧美日韩va| 婷婷午夜天| 高h视频在线| 国产91视频观看| www亚洲精品| 亚洲另类色| 免费jizz在线播放| 狠狠色丁香婷婷| 国产福利一区在线| 免费人成在线观看视频色| 欧美一级大片在线观看| 2021精品国产自在现线看| 91免费观看视频| 国产精品欧美亚洲韩国日本不卡| 2021天堂在线亚洲精品专区| 国产人人乐人人爱| 露脸真实国语乱在线观看| 免费 国产 无码久久久| 中文字幕1区2区| 亚洲成人一区二区三区| 在线综合亚洲欧美网站| 国产国产人成免费视频77777| 黄色网址免费在线| 欧美国产日韩一区二区三区精品影视| 日本久久免费| 欧美综合区自拍亚洲综合天堂| 97亚洲色综久久精品| 99久久精品视香蕉蕉| 精品国产免费观看| 国产丝袜丝视频在线观看| 四虎永久免费地址在线网站 | 国产午夜福利片在线观看| 国产精品视频导航| 亚洲欧美另类中文字幕| 国产另类视频| av色爱 天堂网| 成人午夜精品一级毛片| 国产精品视频999| 亚洲区欧美区| 色妞永久免费视频| 四虎成人在线视频|