陳來豪
廈門軟件職業(yè)技術(shù)學(xué)院,福建廈門 361024
軟件測試是軟件工程的重要組成部分,軟件測試是保證軟件質(zhì)量,提高軟件可靠性的主要活動(dòng)之一。
本文以銳捷網(wǎng)絡(luò)VSU交換機(jī)測試項(xiàng)目為選題背景,通過選擇合適的測試方法,進(jìn)行測試用例設(shè)計(jì)以及執(zhí)行。選題對(duì)公司測試水平的提高有一定的幫助且能應(yīng)用于公司現(xiàn)階段的測試中。
VSU是一種網(wǎng)絡(luò)系統(tǒng)虛擬化技術(shù),將兩臺(tái)交換機(jī)組合為單一的虛擬交換機(jī),從而降低了網(wǎng)絡(luò)的復(fù)雜性,提高網(wǎng)絡(luò)資源的利用率。
VSU系統(tǒng)是由傳統(tǒng)網(wǎng)絡(luò)結(jié)構(gòu)中的兩臺(tái)冗余備份的雙核心設(shè)備組成的單一的邏輯實(shí)體,匯聚層的VSU系統(tǒng)可以看作單獨(dú)的一臺(tái)交換機(jī)與核心層、接入層進(jìn)行交互。
選擇適當(dāng)?shù)南到y(tǒng)技術(shù)路線,不僅能有效減少開發(fā)成本,降低系統(tǒng)開發(fā)難度,并且能改善軟件開發(fā)的質(zhì)量和效率。開發(fā)如此,測試也是如此,選擇一種適當(dāng)?shù)臏y試方法,可以提高測試效率,降低項(xiàng)目總成本。銳捷網(wǎng)絡(luò)交換機(jī)采用RGOS操作系統(tǒng),項(xiàng)目所做的測試都是基于RGOS操作系統(tǒng)的測試。
軟件測試其實(shí)就是驗(yàn)證軟件的功能是否滿足用戶的需求。測試用例的設(shè)計(jì)主要是模擬功能點(diǎn)模塊起作用的環(huán)境,驗(yàn)證功能點(diǎn)模塊是否運(yùn)行正常。
測試儀器主要有SmartWindow、SecureCRT 5.1以及VSU交換機(jī)。
SmartBits是思博倫公司生產(chǎn)的網(wǎng)絡(luò)設(shè)備測試儀的工具,它具有模擬PC收發(fā)數(shù)據(jù)包的功能。
圖1 SmartWindow
1)修改波特率。
本文連接交換機(jī)控制臺(tái)采用路由反向telnet連接交換機(jī),即通過路由器串口線連接交換機(jī)控制臺(tái)。波特率是路由器與交換機(jī)的連接速率,如果兩者的波特率不一致的話,會(huì)導(dǎo)致SecureCRT連不上交換機(jī)。進(jìn)入路由23端口可以修改線路波特率。線路波特率一般是9600或者115200。
2)交換機(jī)升級(jí)。
交換機(jī)升級(jí)只要替換交換機(jī)上rgos.bin系統(tǒng)鏡像,然后重啟交換機(jī)即可。替換rgos.bin系統(tǒng)鏡像方法有三種:TFTP、FTP、U盤。TFTP方式是在PC上架設(shè)TFTP服務(wù)器,然后通過串口線連到交換機(jī)的MGMT口(管理接口),最后將文件傳到交換機(jī)上。FTP方式是將交換機(jī)配置成FTP服務(wù)器,然后通過網(wǎng)絡(luò)將文件上傳到交換機(jī)上。U盤方式是通過交換機(jī)USB接口將文件上傳到交換機(jī)上,這種方式最簡單,但是穩(wěn)定性最差。由于三種升級(jí)方式各有優(yōu)劣,本文三種升級(jí)方式結(jié)合使用。
測試環(huán)境由兩臺(tái)銳捷12000系列交換機(jī)、兩臺(tái)銳捷6200系列交換機(jī)和1臺(tái)SmartBits測試儀表組成;兩臺(tái)12000交換機(jī)交換機(jī)A和交換機(jī)B使用兩條10GE VSL線路連接并啟動(dòng)虛擬交換功能,并使用1條1GE線路連接作為BFD心跳線路;交換機(jī)A的Port 1端口和交換機(jī)B的Port 1端口連接到交換機(jī)C的Port 1和Port 2建立千兆聚合鏈路1;交換機(jī) D通過千兆鏈路連接至交換機(jī)A端口2和交換機(jī)B端口2,并通過三層等價(jià)路由與交換機(jī) A、交換機(jī) B建立連接。拓?fù)淙鐖D2所示。
圖2 性能測試拓?fù)?/p>
如圖2連好線后,需要對(duì)各個(gè)端口進(jìn)行配置。等價(jià)路由切換要配條carrier-delay為0。源IP數(shù)據(jù)流變化需要在SmartBits里配置,配置的是起始地址為2.2.2.5,每200個(gè)循環(huán)一次。還要注意的是SmartBits上有些口是光電復(fù)用,需要選擇。
1)機(jī)箱故障收斂時(shí)間。
本測試點(diǎn)主要測試兩臺(tái)高端交換機(jī)組成的虛擬交換系統(tǒng)中的一臺(tái)交換機(jī)故障(重新啟動(dòng)或掉電)時(shí),系統(tǒng)收斂需要的時(shí)間。其中交換機(jī)A為主機(jī)箱。
通過SmartBits A端口發(fā)送源IP變化的數(shù)據(jù)流通過交換系統(tǒng)到SmartBits C端口;在兩臺(tái)Switch的聚合口的物理端口上查看收發(fā)報(bào)文情況,如表1所示。
表1 收發(fā)報(bào)文情況
將Switch A斷電,丟包情況如表2所示。
表2 掉電情況下,收發(fā)報(bào)文情況
表3 重啟情況下,收發(fā)報(bào)文情況
重新啟動(dòng)交換機(jī) A,交換機(jī)能夠加入VSU系統(tǒng)中,加入后是從機(jī)箱。
2)虛擬交換堆疊線纜故障收斂時(shí)間。
本測試點(diǎn)主要測試兩臺(tái)高端交換機(jī)組成的虛擬交換系統(tǒng)中的兩條虛擬交換的線纜其中一條故障時(shí),系統(tǒng)收斂需要的時(shí)間。測試結(jié)果如表4、表5所示。
表4 拔掉虛擬交換堆疊線纜1,收發(fā)報(bào)文情況
表5 插回虛擬交換堆疊線纜1,收發(fā)報(bào)文情況
3)聚合鏈路故障收斂時(shí)間。
本測試點(diǎn)主要測試兩臺(tái)高端交換機(jī)組成的虛擬交換系統(tǒng)中的聚合鏈路故障/恢復(fù)時(shí),系統(tǒng)收斂需要的時(shí)間。通過SmartBits端口A發(fā)送源IP變化的數(shù)據(jù)流通過交換系統(tǒng)到SmartBits端口C。將聚合鏈路中的交換機(jī)A的Port 1連接交換機(jī)C的Port 1的連線斷開。
表6 連線斷開,收發(fā)報(bào)文情況
將聚合鏈路中的交換機(jī)A的Port 1連接交換機(jī)C的Port 1的連線恢復(fù)連接。
表7 連線恢復(fù),收發(fā)報(bào)文情況
1)機(jī)箱故障收斂時(shí)間測試結(jié)果分析。
結(jié)果分析:表1中查看收發(fā)報(bào)文情況是為了驗(yàn)證系統(tǒng)在沒有出現(xiàn)故障情況下是正常,即測試環(huán)境符合測試用例要求。VSU交換機(jī)性能測試主要測試VSU系統(tǒng)的收斂時(shí)間即故障恢復(fù)時(shí)間,本文中通過以儀器固定速率向VSU系統(tǒng)一端發(fā)送數(shù)據(jù)包,從其他端口接收數(shù)據(jù)包。正常情況下,VSU系統(tǒng)接收和轉(zhuǎn)發(fā)的包數(shù)量應(yīng)該相等,故障情況下,報(bào)文轉(zhuǎn)發(fā)必然出現(xiàn)問題,通過丟包數(shù)/發(fā)送速率就可以算出VSU系統(tǒng)故障的時(shí)間,即收斂時(shí)間計(jì)算采用丟包數(shù)/發(fā)送速率。
2)虛擬交換堆疊線纜故障收斂時(shí)間測試結(jié)果分析。
本用例中有兩條虛擬交換線纜,如果其中一條斷裂,控制信息會(huì)通過另外一條虛擬交換線纜傳輸,正常情況下不丟包。上面數(shù)據(jù)中虛擬交換堆疊線纜1和虛擬交換堆疊線纜2的測試數(shù)據(jù)不一致,虛擬交換堆疊線纜1的數(shù)據(jù)應(yīng)該是受到測試環(huán)境中其他因素影響的結(jié)果。由于收斂時(shí)間都小于50ms,所以證明VSU在虛擬交換堆疊線纜故障恢復(fù)方面符合用戶需求。
3)聚合鏈路故障收斂時(shí)間結(jié)果分析。
結(jié)果分析:聚合鏈路就是把兩條線當(dāng)作一條線使用,當(dāng)聚合鏈路有一條故障的時(shí)候,流量會(huì)全部切換到正常的那條線路上。
本文結(jié)合銳捷網(wǎng)絡(luò)VSU交換機(jī)測試項(xiàng)目的實(shí)際情況,重點(diǎn)研究了VSU技術(shù)、VSU性能測試,完成了測試用例的設(shè)計(jì)與執(zhí)行,主要工作包括:
VSU性能測試。這部分主要對(duì)VSU系統(tǒng)的機(jī)箱故障收斂時(shí)間、虛擬交換堆疊線纜故障收斂時(shí)間、路由鏈路故障收斂時(shí)間、聚合鏈路故障收斂時(shí)間、虛擬交換分裂故障收斂時(shí)間等等進(jìn)行測試。文中根據(jù)VSU交換機(jī)故障情況下報(bào)文必然會(huì)丟失,提出利用數(shù)據(jù)包丟包數(shù)/發(fā)包速率計(jì)算VSU系統(tǒng)收斂時(shí)間,在這部分的最后通過分析部分性能測試結(jié)果,闡述如何進(jìn)行VSU性能測試。
本人實(shí)際參與了VSU測試項(xiàng)目。在項(xiàng)目測試過程中,得以充分應(yīng)用所學(xué)網(wǎng)絡(luò)知識(shí)以及測試?yán)碚撝R(shí),開拓了視野,積累了寶貴的經(jīng)驗(yàn),獲益匪淺。尤其是運(yùn)用網(wǎng)絡(luò)知識(shí)搭建測試環(huán)境和執(zhí)行測試,讓我對(duì)網(wǎng)絡(luò)知識(shí)和測試技術(shù)有了更加深刻的理解。在組合測試方法的選擇過程中,讓我明白了軟件測試其實(shí)并不簡單,測試工具也不是萬能的,需要與實(shí)際情況結(jié)合使用,軟件測試也是需要?jiǎng)?chuàng)新的。
[1]李霽.軟件測試行業(yè)發(fā)展對(duì)策研究[J].軟件導(dǎo)刊,2010,3.
[2]William E.Perry.軟件測試的有效方法[M].高猛,等,譯.清華大學(xué)出版社,2008.
[3]王子元,徐寶文,聶長海.組合測試用例生成技術(shù)[J].計(jì)算機(jī)科學(xué)與探索,2008(2).
[4]馮艷紅,于紅,孫庚,等.軟件性能測試實(shí)施過程研究[J].軟件導(dǎo)刊,2011(2).