陳來豪
廈門軟件職業技術學院,福建廈門 361024
軟件測試是軟件工程的重要組成部分,軟件測試是保證軟件質量,提高軟件可靠性的主要活動之一。
本文以銳捷網絡VSU交換機測試項目為選題背景,通過選擇合適的測試方法,進行測試用例設計以及執行。選題對公司測試水平的提高有一定的幫助且能應用于公司現階段的測試中。
VSU是一種網絡系統虛擬化技術,將兩臺交換機組合為單一的虛擬交換機,從而降低了網絡的復雜性,提高網絡資源的利用率。
VSU系統是由傳統網絡結構中的兩臺冗余備份的雙核心設備組成的單一的邏輯實體,匯聚層的VSU系統可以看作單獨的一臺交換機與核心層、接入層進行交互。
選擇適當的系統技術路線,不僅能有效減少開發成本,降低系統開發難度,并且能改善軟件開發的質量和效率。開發如此,測試也是如此,選擇一種適當的測試方法,可以提高測試效率,降低項目總成本。銳捷網絡交換機采用RGOS操作系統,項目所做的測試都是基于RGOS操作系統的測試。
軟件測試其實就是驗證軟件的功能是否滿足用戶的需求。測試用例的設計主要是模擬功能點模塊起作用的環境,驗證功能點模塊是否運行正常。
測試儀器主要有SmartWindow、SecureCRT 5.1以及VSU交換機。
SmartBits是思博倫公司生產的網絡設備測試儀的工具,它具有模擬PC收發數據包的功能。

圖1 SmartWindow
1)修改波特率。
本文連接交換機控制臺采用路由反向telnet連接交換機,即通過路由器串口線連接交換機控制臺。波特率是路由器與交換機的連接速率,如果兩者的波特率不一致的話,會導致SecureCRT連不上交換機。進入路由23端口可以修改線路波特率。線路波特率一般是9600或者115200。
2)交換機升級。
交換機升級只要替換交換機上rgos.bin系統鏡像,然后重啟交換機即可。替換rgos.bin系統鏡像方法有三種:TFTP、FTP、U盤。TFTP方式是在PC上架設TFTP服務器,然后通過串口線連到交換機的MGMT口(管理接口),最后將文件傳到交換機上。FTP方式是將交換機配置成FTP服務器,然后通過網絡將文件上傳到交換機上。U盤方式是通過交換機USB接口將文件上傳到交換機上,這種方式最簡單,但是穩定性最差。由于三種升級方式各有優劣,本文三種升級方式結合使用。
測試環境由兩臺銳捷12000系列交換機、兩臺銳捷6200系列交換機和1臺SmartBits測試儀表組成;兩臺12000交換機交換機A和交換機B使用兩條10GE VSL線路連接并啟動虛擬交換功能,并使用1條1GE線路連接作為BFD心跳線路;交換機A的Port 1端口和交換機B的Port 1端口連接到交換機C的Port 1和Port 2建立千兆聚合鏈路1;交換機 D通過千兆鏈路連接至交換機A端口2和交換機B端口2,并通過三層等價路由與交換機 A、交換機 B建立連接。拓撲如圖2所示。

圖2 性能測試拓撲
如圖2連好線后,需要對各個端口進行配置。等價路由切換要配條carrier-delay為0。源IP數據流變化需要在SmartBits里配置,配置的是起始地址為2.2.2.5,每200個循環一次。還要注意的是SmartBits上有些口是光電復用,需要選擇。
1)機箱故障收斂時間。
本測試點主要測試兩臺高端交換機組成的虛擬交換系統中的一臺交換機故障(重新啟動或掉電)時,系統收斂需要的時間。其中交換機A為主機箱。
通過SmartBits A端口發送源IP變化的數據流通過交換系統到SmartBits C端口;在兩臺Switch的聚合口的物理端口上查看收發報文情況,如表1所示。

表1 收發報文情況
將Switch A斷電,丟包情況如表2所示。

表2 掉電情況下,收發報文情況

表3 重啟情況下,收發報文情況
重新啟動交換機 A,交換機能夠加入VSU系統中,加入后是從機箱。
2)虛擬交換堆疊線纜故障收斂時間。
本測試點主要測試兩臺高端交換機組成的虛擬交換系統中的兩條虛擬交換的線纜其中一條故障時,系統收斂需要的時間。測試結果如表4、表5所示。

表4 拔掉虛擬交換堆疊線纜1,收發報文情況

表5 插回虛擬交換堆疊線纜1,收發報文情況
3)聚合鏈路故障收斂時間。
本測試點主要測試兩臺高端交換機組成的虛擬交換系統中的聚合鏈路故障/恢復時,系統收斂需要的時間。通過SmartBits端口A發送源IP變化的數據流通過交換系統到SmartBits端口C。將聚合鏈路中的交換機A的Port 1連接交換機C的Port 1的連線斷開。

表6 連線斷開,收發報文情況
將聚合鏈路中的交換機A的Port 1連接交換機C的Port 1的連線恢復連接。

表7 連線恢復,收發報文情況
1)機箱故障收斂時間測試結果分析。
結果分析:表1中查看收發報文情況是為了驗證系統在沒有出現故障情況下是正常,即測試環境符合測試用例要求。VSU交換機性能測試主要測試VSU系統的收斂時間即故障恢復時間,本文中通過以儀器固定速率向VSU系統一端發送數據包,從其他端口接收數據包。正常情況下,VSU系統接收和轉發的包數量應該相等,故障情況下,報文轉發必然出現問題,通過丟包數/發送速率就可以算出VSU系統故障的時間,即收斂時間計算采用丟包數/發送速率。
2)虛擬交換堆疊線纜故障收斂時間測試結果分析。
本用例中有兩條虛擬交換線纜,如果其中一條斷裂,控制信息會通過另外一條虛擬交換線纜傳輸,正常情況下不丟包。上面數據中虛擬交換堆疊線纜1和虛擬交換堆疊線纜2的測試數據不一致,虛擬交換堆疊線纜1的數據應該是受到測試環境中其他因素影響的結果。由于收斂時間都小于50ms,所以證明VSU在虛擬交換堆疊線纜故障恢復方面符合用戶需求。
3)聚合鏈路故障收斂時間結果分析。
結果分析:聚合鏈路就是把兩條線當作一條線使用,當聚合鏈路有一條故障的時候,流量會全部切換到正常的那條線路上。
本文結合銳捷網絡VSU交換機測試項目的實際情況,重點研究了VSU技術、VSU性能測試,完成了測試用例的設計與執行,主要工作包括:
VSU性能測試。這部分主要對VSU系統的機箱故障收斂時間、虛擬交換堆疊線纜故障收斂時間、路由鏈路故障收斂時間、聚合鏈路故障收斂時間、虛擬交換分裂故障收斂時間等等進行測試。文中根據VSU交換機故障情況下報文必然會丟失,提出利用數據包丟包數/發包速率計算VSU系統收斂時間,在這部分的最后通過分析部分性能測試結果,闡述如何進行VSU性能測試。
本人實際參與了VSU測試項目。在項目測試過程中,得以充分應用所學網絡知識以及測試理論知識,開拓了視野,積累了寶貴的經驗,獲益匪淺。尤其是運用網絡知識搭建測試環境和執行測試,讓我對網絡知識和測試技術有了更加深刻的理解。在組合測試方法的選擇過程中,讓我明白了軟件測試其實并不簡單,測試工具也不是萬能的,需要與實際情況結合使用,軟件測試也是需要創新的。
[1]李霽.軟件測試行業發展對策研究[J].軟件導刊,2010,3.
[2]William E.Perry.軟件測試的有效方法[M].高猛,等,譯.清華大學出版社,2008.
[3]王子元,徐寶文,聶長海.組合測試用例生成技術[J].計算機科學與探索,2008(2).
[4]馮艷紅,于紅,孫庚,等.軟件性能測試實施過程研究[J].軟件導刊,2011(2).