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

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

  • <strong id="5koa6"></strong>
    • 軟件測試技術
    • 軟件測試博客
    • 軟件測試視頻
    • 開源軟件測試技術
    • 軟件測試論壇
    • 軟件測試沙龍
    • 軟件測試資料下載
    • 軟件測試雜志
    • 軟件測試人才招聘
      暫時沒有公告

    字號: | 推薦給好友 上一篇 | 下一篇

    SilkTest入門快打系列7-異常處理

    發布: 2011-3-24 10:20 | 作者: 不詳 | 來源: 領測軟件測試網采編 | 查看: 21次 | 進入軟件測試論壇討論

    領測軟件測試網

      我們在入門快打2中也使用了拋出異常的函數raise,那是用戶主動拋出通知系統的,而本講中是系統拋出的。但是他們的結果都一樣,如果沒有被處理的話,該異常會導致SilkTest的退出。

      未被處理的異常有時候會是一個問題,想象一下,假設你的測試有100步,當測試運行到第10步時,突然測試腳本報一個異常(可能是待測軟件的問題,可能是環境的問題,也可能是你編寫的腳本的問題),你如果不處理,測試即時終止,那么其后的90步都無法運行。這很可能不是我們期望的結果。

      不要急,在這種情況下,你可以用do…except將可能出現異常的代碼段封起來(具體哪些代碼段可能出現異常,只能根據你靠經驗來判斷了),例如:

      view plaincopy to clipboardprint?

      01.Do

      02. OneObject.Click()

      03.except

      04. LogError ("can't click OneObject")

      05.DoSomeOtherThings()

      Do

      OneObject.Click()

      except

      LogError ("can't click OneObject")

      DoSomeOtherThings()

      假如我們執行上面得代碼時,OneObject這個對象并沒有出現,那么OneObject.Click()這句就會拋出一個異常,沒關系,緊接其后的except結構會發現這個異常,并且記錄一個Error的log,當except結構中的語句都執行完后,SilkTest將繼續正常執行,也就是執行do…except結構之后的DoSomeOtherThings()語句。

      說了這么多,讓我們在Cal.t這個會拋出異常的case中引入異常處理機制吧。

      我們改寫代碼成如下形式:

      [-] winclass Calculator

      [ ] String sResult

      [-] Void ClearResult()

      [ ] 計算器.C.Click()

      [-] void GetResult()

      [ ] sResult = 計算器.CalResult.GetText()

      [-] Void ClickNum1()

      [ ] 計算器.N1.Click()

      [ ] window Calculator Cal

      [-] testcase CalSetAndClear()

      [ ] 計算器.SetActive()

      [-] do //1

      [ ] Cal.ClickNum1() //2

      [ ] //Cal.GetResult() //3

      [ ] Print(Cal.sResult) //4

      [-] except //5

      [ ] Print("Catch an exception") //6

      [ ] Cal.ClearResult()

      [ ] Cal.GetResult()

      [ ] Print(Cal.sResult)

      現在當SilkTest執行到行4時,會拋出一個異常,接著就被其后的except捕獲這個異常,打印一句提示后,程序繼續運行剩余的三行代碼。最終的結果將打。

      [ ] Catch an exception

      [ ] 0.

      如果你沒有注釋行3的話,那么當然不會有異常被拋出,那么程序將會正常執行,也就是說except中的語句不會起作用。怎么樣,你現在是不是又多了一種操縱silktest腳本的武器?

      

    延伸閱讀

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

    22/2<12

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