• <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-11-30 13:37 | 作者: 網絡轉載 | 來源: 測試時代論壇 | 查看: 203次 | 進入軟件測試論壇討論

    領測軟件測試網

    這周都在忙大學最后一門課的課程設計——軟件自動化測試,同一組的一個考研一個實習,基本都是我把活干了,不過也學到不少東西,貼出來分享一下
    軟件自動化測試范疇很廣,理論我就不說了,只針對我這次選的題目——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/ 

    在coding的過程中,還遇到了大大小小的各種問題,也會作為技巧性的帖子發上來

    延伸閱讀

    文章來源于領測軟件測試網 http://www.kjueaiud.com/


    關于領測軟件測試網 | 領測軟件測試網合作伙伴 | 廣告服務 | 投稿指南 | 聯系我們 | 網站地圖 | 友情鏈接
    版權所有(C) 2003-2010 TestAge(領測軟件測試網)|領測國際科技(北京)有限公司|軟件測試工程師培訓網 All Rights Reserved
    北京市海淀區中關村南大街9號北京理工科技大廈1402室 京ICP備10010545號-5
    技術支持和業務聯系:info@testage.com.cn 電話:010-51297073

    軟件測試 | 領測國際ISTQBISTQB官網TMMiTMMi認證國際軟件測試工程師認證領測軟件測試網

    老湿亚洲永久精品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>