使用Calabash的移動測試自動化結(jié)構(gòu),像'When I enter
當然,測試用例的運行不會和上述一模一樣。在第二步中,測試自動化專家進行實際執(zhí)行:
他們編寫由動詞觸發(fā)的技術(shù)代碼,從技術(shù)層面上通過發(fā)送信息或點擊GUI要素來控制app,收集app的反饋并對反饋做出評價。下面是一則例子:
在解析“測試故事”的代碼時,Calabash試著使用正則表達式匹配找出匹配的代碼并將之執(zhí)行。這段代碼是由‘When I enter
為了給大量測試用例和移動設(shè)備提供有效的測試自動化,有必要創(chuàng)建一個簡明通用的測試自動化庫(見圖3.使用Calabash3的移動測試自動化結(jié)構(gòu))。該庫包含所有可重復使用的步驟定義,要注意,那些步驟定義對于不同設(shè)備是可重復使用的,這樣它們可以在測試故事中透明使用了。這避免了必須為不同設(shè)備多次編寫并維護同一測試用例的花費。此外,應(yīng)該充分將可重復使用的步驟庫模塊化以區(qū)別分別針對特定產(chǎn)品、特定產(chǎn)品線和分支的動詞。以這種方式將自動化庫模塊化可以減少不同項目中部分相同的庫并再次將測試自動化的開發(fā)花費小化。Calabash滿足了我們所有的節(jié)省費用的需求(它是一個開源工具,一開始是免費的)和所支持的平臺(IOS或Android)。它也能輕易擴大顧客功能。這對我們而言很好,因為Calabash是佳解決方案——但初它只支持本地和混合型app,并不完美。為了使其能支持web app,我們創(chuàng)建了一個可以從Calabash內(nèi)部控制的web瀏覽器。這意味著我們能夠完全滿足顧客需求。
經(jīng)驗
對于成功進行的四個階段,我們提出了全面的項目計劃。重要的階段是所選解決方案的實驗階段,一個基于Calabash的測試自動化框架。 我們是發(fā)現(xiàn)了一些障礙,但是通過使用簡單的Calabash拓展可以相當輕松地將之解決�?芍貜褪褂眯猿闪艘粋€對我們的顧客來說和節(jié)省費用一樣很重要的問題。有了Calabash,有可能為ios和Andriod app編寫自動化測試用例,為兩個平臺都重復使用80%的測試代碼。Web對象的代碼也可以重復用于web app和混合型app,這樣再次大大減少了自動化工作。
版權(quán)聲明:本文出自 SPASVO澤眾軟件測試網(wǎng):http://dytjszp.cn/news/html/201569155907.html
原創(chuàng)作品,轉(zhuǎn)載時請務(wù)必以超鏈接形式標明本文原始出處、作者信息和本聲明,否則將追究法律責任。