關(guān)于云計(jì)算上的自動(dòng)化測(cè)試,下面是關(guān)于云計(jì)算中測(cè)試的解決方案:
首先要面臨的一件令人頭疼的事是如果使用現(xiàn)在版本穩(wěn)定開源且功能強(qiáng)大的selenium WebDriver來進(jìn)行PC機(jī)中的web功能測(cè)試以及兼容性測(cè)試,那么根據(jù)selenium原理,它是只識(shí)別GUI中的Web頁(yè)面對(duì)象,如果要操作windows對(duì)象,可以使用javascript中的DOM來實(shí)現(xiàn)對(duì)windows桌面的操作,然而云計(jì)算平臺(tái)中往往出現(xiàn)在了兩種混合方式:即嵌套在web頁(yè)面端的虛擬機(jī),并且測(cè)試中需要很多驗(yàn)證是需要操作嵌套在web頁(yè)面中的虛擬機(jī),操作的對(duì)象即位Web頁(yè)面中的windows對(duì)象或者linux等等不同操作系統(tǒng)的對(duì)象,拿鏡像為windows的虛擬機(jī)頁(yè)面來說,首先分析定位對(duì)象的時(shí)候,虛擬機(jī)嵌套在網(wǎng)頁(yè)中,屬于web頁(yè)面對(duì)象,但是虛擬機(jī)是作為整體web對(duì)象來出現(xiàn)的,(如:OpenNebula中的虛擬機(jī)點(diǎn)開之后是div下面的canvas對(duì)象,在canvas對(duì)象中,所有任何對(duì)象都是不能單獨(dú)識(shí)別和操作)但是selenium中無法識(shí)別嵌套在web頁(yè)面中的虛擬機(jī),以及操作頁(yè)面中的虛擬機(jī)中的各種命令行或者是windows對(duì)象,那么此時(shí),很多人會(huì)否定自動(dòng)化對(duì)這塊的業(yè)務(wù)能力的處理操作。
· 針對(duì)云計(jì)算平臺(tái),各種各樣的對(duì)象出現(xiàn)在測(cè)試產(chǎn)品中:
· 針對(duì)純傳統(tǒng)web頁(yè)面對(duì)象,selenium實(shí)現(xiàn)GUI定位和操作;
· 對(duì)于頁(yè)面中嵌套的windows對(duì)象,使用sikuli這種圖形定位識(shí)別完成自動(dòng)化測(cè)試;
· 對(duì)于純正的windows對(duì)象,使用sikuli圖形識(shí)別或者使用selenium中提供的執(zhí)行javascript方式,通過javascript來完成。
這樣幾種方式同時(shí)出現(xiàn)在一套自動(dòng)化測(cè)試工具或者平臺(tái)中,各種優(yōu)勢(shì)互補(bǔ),可以順利的完成云計(jì)算平臺(tái)帶來的各種各樣的虛擬機(jī)下的各種操作系統(tǒng)中各種輸入或者點(diǎn)擊以及驗(yàn)證事件!
以上的文章獻(xiàn)給正在云計(jì)算平臺(tái)中做自動(dòng)化測(cè)試框架或者做自動(dòng)化測(cè)試方案的人,僅以解決云計(jì)算平臺(tái)中類似網(wǎng)頁(yè)中嵌套的虛擬機(jī)中各種操作以及類似介于web GUI和windows之外的測(cè)試產(chǎn)品的問題。