1.就client類型的支持方面,目前來看software的產品還是占優勢。我想這是因為純軟件的產品一直都是關注application,在這方面有長期的積累。對標準的協議如HTTP(S),SMTP,FTP的支持兩邊都差不多,這些也是比較容易做到的。但是對一些應用平臺的支持相對要復雜一些,比如很多software產品都支持各種數據庫的性能測試,以及中間件,如BEA Tuxedo,還有ERP系統,如SAP,Oracle,除此之外,有些還甚至支持IBM Legacy系統。Appliance產品對這方面的支持目前還很少,多半集中在標準協議方面。不過這其實也不是致命傷,因為這些測試工具都是按協議來賣,可以搭配的,這也是因為買測試工具的客戶也不是什么client都需要。比如有的公司主要是要測試自己的web應用系統的性能,那么他的選擇實在很多。有些要測在Tuxedo上面開發的應用,可能software的產品目前是唯一的選擇。
2. 擴展性。性能測試,特別是大的系統對測試工具本身的性能也是有要求的。這個很好理解,如果一個系統1秒能處理1萬個請求,但是測試工具只能發起5千個,那就說不過去了。很多情況下,靠一臺主機來模擬client可能還不夠,這就涉及擴展性的問題,關于這個問題,兩邊給出了不同的solution。Software這邊的答案是前面提到的distribution的方法。Appliance這邊的方法還是appliance式的,很多產品提供擴展槽,你可以再插一套主機系統進去,有點像通信設備里面單板機的概念,每個板子上都有自己的CPU和Memory和network port。
3. 升級的問題。相對而言,軟件的升級比較簡單。Appliance這邊硬件自身的升級除了擴展之外應該不是很方便,但是里面搭載的軟件是可以更新的。
4. Appliance的產品提供了網絡狀況的測試和模擬功能,比如當前測試環境的網絡狀況,可以模擬出帶寬小,丟包率高的情況。Software這邊可能要借助3rd party的方法。這些可能對某些測試有意義,對有些而言,可能就不care了。
5. 可能因為自己產品的原因,注意到appliance有個不錯的好處,那就是他們比較適合測試gateway之類的產品。這類產品測試的過程中需要關注upstream和downstream的狀況,而傳統的software solution基本上都是C/S結構,你得到的最主要數據是client的響應狀況。我想這可能是因為這些appliance一開始就是用來測試router和switch之類的東西,所以自然前后都要看。他們把這個特點帶到了application測試上面來。比如IXIA利用一臺測試設備的兩個端口模擬出test client和server,發給gateway然后再收回來,這樣就有前后的分析數據了。Spirent把這兩塊分開成Avalanche和Reflector來完成。沒有試用過,不過相信在report里面,兩邊的數據是可以sync在一起的。
軟件測試工具的競爭其實是蠻殘酷的,因為這些產品的客戶都是十分挑剔的,而且,怎么講,寫一首皆大歡喜的歌很難。軟件測試工具基本上都想一套方法一套工具適應大量的場合和客戶群,但是這本身就是很難的事情,就像他們要去測的應用系統一樣。這也是為什么近年很多軟件公司開始做segmentation,分出enterprise,SMB和consumer。
作為產品的軟件測試人員,對自己的產品使用場景很了解,需要找到盡可能適合自己產品的軟件測試工具,但是很少有完全滿足要求的軟件測試工具。所以如果對某個客戶而言,他們提供的軟件測試工具有某些方面不適合造成的硬傷,那只能說遺憾。
最后有個問題,這些純軟件測試工具廠商難道就這樣看著appliance蠶食他們的市場嗎?我想不會,他們可能也會推出自己的testing appliance,也可能繼續加強自己的優勢,因為appliance有天然的優勢也有天然的劣勢。當然還有一種可能就是并購,到時候可能同一家就會提供軟硬兩套方案,說你自己選吧,然后廣告改成“提供業界領先的基于軟件和高性能測試設備的應用系統性能測試全面解決方案”。
文章來源于領測軟件測試網 http://www.k11sc111.com/