1. 程式人生 > >UI自動化指令碼編寫效率

UI自動化指令碼編寫效率

專案頁面自動化分享(三)

——指令碼編寫效率

在指令碼編寫過程中,我們會一個一個字母的在文字編輯器上進行coding,一旦執行上述思路完成的指令碼,會發現語句block的關鍵字end這裡多1個,那裡少1個,傳入引數這邊又少1個,為了排查這樣低階的語法錯誤,我們要用上相當的時間。如果一個專案的頁面自動化指令碼多,這樣的排錯時間,我們耗費不起呀。

那你還在用文字編輯器coding麼?Maybe你out了~在使用文字編輯器coding一段時間後,嘗試下IDE工具吧,編寫效率的提高明顯的節約了指令碼的編寫時間,在專案時間上佔了優勢。

目前,最常使用的ruby編寫工具是NetBeans和RubyMine。這次專案,自己體驗了一把RubyMine,下面分享下這款工具在頁面自動化中帶來的優勢。

1.下載RubyMine,安裝成功後,執行出現如下介面:


[img]http://dl.iteye.com/upload/attachment/545292/3dabf42d-653a-3d1c-8e57-bff25b10a9c0.jpg[/img]


2. 下載專案頁面自動化相應的gems

i. 在本地相應的svn路徑下建立1個ruby指令碼,通過RubyMine左上角“File——>OpenFile”引入此指令碼

ii. 點選【設定】icon
[img]http://dl.iteye.com/upload/attachment/545290/3b51c940-13a2-30e1-8e09-9197afd08cdc.jpg[/img]
,輸入”gems”




[img]http://dl.iteye.com/upload/attachment/545294/c9ffbd7c-9bec-3428-9724-17c104712c3b.jpg[/img]


iii. 點選Install和Update按鈕,引入並更新相關的gems,方便指令碼藉助IDE執行

3. 自定義程式碼編寫的快捷方式

自動化指令碼經常出現cast頁面的程式碼,如page=ie.cast(Sportal::SellerAdmin), 可以將反覆出現的相同的單行/多行程式碼或語句結構(如:if…else…end)自定義快捷方式,提高編碼效率。如下:

i. 點選【設定】icon ,輸入”live template”,點選“ruby—>Add”,如下:


[img]http://dl.iteye.com/upload/attachment/545296/a70630e6-0106-39d1-80d0-fa3ac0d3c464.jpg[/img]


ii. 在彈出框的Abbreviation文字框中輸入“icast”,Template text文字框中輸入“page=ie.cast(Sportal::SellerAdmin)”,設定完畢,如下:


[img]http://dl.iteye.com/upload/attachment/545308/7d05e125-8e45-3695-80d2-4dd8a80ea531.jpg[/img]


iii. 在程式碼編寫時,輸入“icast”+ Tab鍵,立馬生成程式碼page=ie.cast(Sportal::SellerAdmin)

4. 編寫指令碼的程式碼block較多時,點選空白處右鍵,選擇“Folding—>Collapse All”,腳本里所有程式碼block收攏,方便結束關鍵字“end”的多與少的排查。(如上篇分享的圖3)


[img]http://dl.iteye.com/upload/attachment/545300/e3214f78-8beb-328f-b8d3-6f5113e9c1d9.jpg[/img]


5. 配置引數使指令碼在FF瀏覽器下執行

Automan的強大之處還在於支援多瀏覽器的指令碼執行,借鑑netbeans的引數配置,我在RubyMine找到相應的地方,對指令碼的配置引數做了新增,讓指令碼藉助RubyMine工具在FF下執行。配置步驟如下:

i. 左鍵點選工具欄中對應指令碼名稱—>點選浮層頁面“Edit Configuration”,進入彈出框Run/Debug Configuration設定


[img]http://dl.iteye.com/upload/attachment/545302/26e3f3d9-d699-3814-8832-586742037a2e.jpg[/img]

ii. 彈出框左側選中相應指令碼,右側Script arguments文字框輸入:-browser ff,儲存設定,點選相應指令碼執行


[img]http://dl.iteye.com/upload/attachment/545304/361cd962-bded-31de-9801-9fefc1743563.jpg[/img]

此篇分享了幾個實用的操作,藉助RubyMine,也可以Debug,方便快速定位指令碼的錯誤,此工具對ruby語言的Debug方式類似Eclipse下對java語言的Debug,不多說了哈~

藉助IDE工具和良好的指令碼編寫思路,專案頁面自動化有效的執行起來了。那在什麼樣的環境下執行呢?請見下一個分享。