• <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>
  • Java自動化測試

    上一篇 / 下一篇  2007-12-02 09:46:29 / 個人分類:java測試

    這周都在忙大學最后一門課的課程設計——軟件自動化測試,同一組的一個考研一個實習,基本都是我把活干了,不過也學到不少東西,貼出來分享一下
    軟件自動化測試范疇很廣,理論我就不說了,只針對我這次選的題目——Java');" href="javascript.:;" target=_self>Java自定義組件的測試,從Java事件機制的基礎說起,其中有一小部分關于開源軟件測試框架Abbot的簡單介紹
    還是先說說Abbot吧,Abbot可以支持Java GUI組件從單元測試到集成測試,簡單地說,單元測試時,你可以使用Abbot的一些類庫,把你要測試的GUI扔給某個方法,然后Abbot可以查找某個組件,比如特定按鈕,然后對那個按鈕調用一下 click(我的按鈕),就可以實現“點擊”的效果, 你會看到屏幕上的鼠標移動到那個按鈕上并點擊,很有趣吧,當然你可以手工編寫一堆代碼控制鼠標移動到那個按鈕上并點擊,但是那樣很麻煩,Abbot幫你封裝了很多底層的操作。
    對于一個已經做好的GUI,Abbot也可以進行腳本錄制,也就是你在你的GUI上操作,Abbot自動記下你的動作,以腳本形式保存起來,以后你還可以進行重放。下面是官方介紹的一部分翻譯:

    Abbot 框架
    abbot提供了一個框架測試你的GUI代碼,而不用考慮你的代碼的當前狀態。如果你喜歡進行測試驅動的開發,那么abbot提供相關工具為你生成單元測試代碼。如果你已經有一堆代碼但不是基于單元測試的,abbot也可以幫你生成腳本
    總的來說,abbot測試首先要獲得組件的引用,然后要么模擬用戶操作,要么對組件的狀態進行斷言。abbot提供ComponentReference獲得組件的句柄,以及擴展的、類似robot的對象,用來模擬用戶行為。這些操作既可以通過腳本,也可以通過java代碼來實現
    abbot的目標:
    1.用戶輸入的可靠重現
    GUI測試不徹底的一大原因就是不能很好的重現用戶輸入
    2.利用腳本控制動作
    使用動態解析的腳本,省去了寫新的測試代碼的麻煩,并且這些腳本還能直接調用java單元測試的代碼
    3.降低組件之間的綁定
    如果修改了原有的GUI布局,組件的位置、大小改變了,那么之前的測試代碼可能會失效(比如找不到新的組件位置)在不同平臺下,組件的位置大小都可能改變,那樣測試框架就不能跨平臺了。abbot使用查詢機制,只要能查詢到組件,即使位置大小改變了,abbot一樣可以運行
    4.底層使用低級的操作系統事件來實現高級的語義行為
    java.awt.robot提供了便利的方法直接生成事件,但是其功能太過基礎,不方便使用,abbot在其上抽象出方便的接口(正如Swing對基本窗口的抽象一樣)。通過抽象語句,你可以很容易的推斷出測試代碼的功能,比如像下面這樣:
    Click on 100, 100
    Move to 110, 110
    Press down key
    Press down key
    Click on 110, 110

    Select "blue" from the color list

    5.支持動態錄制高級語義事件
    你可以手工編輯xml文件,也可以一條條修改測試語句,但是有了Costello editor ,電腦會幫你記錄所有用戶動作,并自動生成腳本
    6.用戶動作的記錄和生成是可擴展的
    你可以自己擴展上述框架,以支持自定義的組件。雖然說用基本的robot可以在不修改測試代碼的情況下測試任何東西,不過使用擴展的好處在于:你的代碼更加抽象,就好像調用CalRow(10)而不是click(x,y),其中x、y指的是第10行的中心坐標

    官方文檔還是比較詳細的,看完可以基本入門,網址是http://abbot.sourceforge.net/ 


    TAG:

     

    評分:0

    我來說兩句

    顯示全部

    :loveliness: :handshake :victory: :funk: :time: :kiss: :call: :hug: :lol :'( :Q :L ;P :$ :P :o :@ :D :( :)

    日歷

    « 2011-04-01  
         12
    3456789
    10111213141516
    17181920212223
    24252627282930

    數據統計

    • 訪問量: 205
    • 日志數: 6
    • 建立時間: 2007-11-28
    • 更新時間: 2007-12-02

    RSS訂閱

    Open Toolbar
    老湿亚洲永久精品ww47香蕉图片_日韩欧美中文字幕北美法律_国产AV永久无码天堂影院_久久婷婷综合色丁香五月

  • <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>