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

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

  • <strong id="5koa6"></strong>
  • 軟件自動化測試基本策略(2)

    發表于:2011-08-09來源:未知作者:領測軟件測試網采編點擊數: 標簽:自動化測試;測試策略
    對于一些協議或接口相關的功能測試(比如:XML或socket接口等),是較為容易實現自動化測試的,封裝好底層的協議提供給自動化測試腳本調用,即使是協議

      對于一些協議或接口相關的功能測試(比如:XML或socket接口等),是較為容易實現自動化測試的,封裝好底層的協議提供給自動化測試腳本調用,即使是協議會有變化,改動起來還是很簡單的,維護的成本相對較低。

      總的來說,在軟件功能達到相對的穩定,沒有嚴重錯誤和邏輯錯誤后開始自動化測試,性價比是比較高的。

      2.3 自動化測試的覆蓋率

      自動化測試的覆蓋率是很多管理層所關心的,很多項目或產品的自動化測試目標之一就是自動化測試的覆蓋率。從管理的角度來說,100% 的自動化目標只是一個從理論上可能達到的,但是實際上達到 100% 的自動化的代價是十分昂貴的。自動化測試覆蓋率越高,測試腳本的維護成本也就越大。由于對每一個構建版本的需求變化的復雜度,你將花費更多的時間在變更測試用例上以使他們能夠正確的運行。

      自動化測試的覆蓋率的大小與自動化測試的成本有著很大的聯系。自動化測試的覆蓋率為多少比較恰當,也要看被測試系統的性質和測試的階段。

      在自動化測試設計的階段,可以考慮先實現冒煙測試的測試用例自動化,冒煙測試的功能一般是系統的主要功能,是自動化測試設計必須首先實現的,而且通過實現這些功能,也可以檢驗自動化測試的架構是否合理。

      在功能測試的前期,自動化測試腳本的覆蓋率最好只是一些關鍵的并且是相對穩定的功能的測試自動化,用于冒煙測試或關鍵功能測試。

      系統穩定后,如果系統是一個生命周期很長的系統,且測試的功能很容易實現自動化測試,這樣的系統的自動化測試覆蓋率可以考慮在80%以上。

      但如果是一些時間很趕的項目,或者是一些比較難實現自動化測試的功能,也就沒有追求高的自動化測試的覆蓋率的必要。隨著測試案例的增加,維護的成本也會相應增加,特別是一些GUI的測試,自動化比率越高,維護腳本的成本也就越高。

      不要追求在很短的時間實現自動化測試,也不要追求100%的自動化測試覆蓋率,積累經驗循序漸進的自動化測試,效果會更好。

      第3章 自動化測試實現基本策略

      自動化測試與軟件開發本質上是一樣的,利用自動化測試工具,經過測試需求分析,設計出自動化測試用例,從而搭建自動化測試的框架,設計與編寫自動化腳本,驗證測試腳本的正確性,最終完成自動化測試測試腳本(即主要功能為測試的應用軟件)。

      3.1 測試系統需求分析

      任何測試的基礎都是被測系統的功能,不管是手工的功能測試還是自動化測試或者是性能測試,都是基于系統的功能展開的。當測試項目滿足了自動化的前提條件,并確定在該項目中需要使用自動化測試時,我們便開始進行自動化測試需求分析。此過程需要確定自動化測試的范圍以及相應的測試用例、測試數據,并形成詳細的文檔,以便于自動化測試框架的建立。

      很多公司都是將自動化測試和功能測試劃分成兩個不同的team,自動化測試team的同事實現自動化測試工具的開發,功能測試team的同事向自動化測試team的同事提需求,自動化測試team的同事編寫代碼實現自動化測試工具的功能后提交給功能測試team的同事使用,這是當前非常常見的自動化測試的模式,畢竟每個人都有自己擅長的技能,某個人也不可能面面俱到,通過這樣的一種方式可能使自動化測試的門檻變得更低一些。自動化測試工具的開發和自動化測試的使用的確是可以由不同的角色去承擔,不過作為自動化架構設計的人員,應該是對系統的功能或需求非常熟悉,同時具有良好的設計和開發能力,才可以設計出適合測試系統的自動化測試架構,否則開發出來的自動化測試工具就只是簡單的一個工具,某種程度上會增加維護的成本。

      漂亮的自動化測試架構的設計是一個漸進的過程,但這個漸進是基于對功能熟悉的基礎上,全盤考慮之后一點一點的搭建起來的。

      3.2 自動化測試工具的選擇

      很多測試的同行或以前的老同事都會問,你們用什么自動化測試工具?幾年前入門測試時跟著老前輩寫自動化測試工具,后來因為興趣偶爾玩一下當時流行的自動化測試工具,再到現在毫無選擇工具的余地設計自動化測試架構,越來越發覺自動化測試工具真的沒有那么的重要。工具始終是工具,思想和架構才是自動化測試的核心,同樣的工具不同的人使用會出現完全不一樣的結果,而且,不管是什么樣的自動化測試工具,原理都有異曲同工之處。所以,不需要把工具看得那么重要,而是把怎樣使用工具,怎樣利用工具為你服務放在首位。也就是你的思想位于工具之上。

      但是,是不是這就意味著測試工具一點也不重要呢?當然不是,遇上不穩定或不友好的測試工具,可能會浪費大量的時間在調試工具上,也可能會出現因為工具不穩定導致測試結果的不可信任,那么自動化測試不是提高測試效率反而是阻礙了測試的進度了。

      關于工具的選擇或開發,基本的原則為:1)首先,能夠滿足項目的需求,容易擴展,可以滿足系統任何重要功能的自動化測試;2)其次,友好易用,容易上手,為測試人員提供較為低的門檻;3)當然最重要的是它的穩定性,是否不需要人工干預就能穩定地批量運行所有的自動化測試腳本,并且能夠產出準確的測試報告;4)最后,還有一點就是它的性價比是否值得,免費的軟件對公司來說當然是最好:)

      市場上有很多測試工具,在這些測試工具中,puretest是一個性價比很高的自動化測試工具。它容易入門,易于擴展,使用簡單,運行穩定,基本上可以滿足任何包括GUI、協議和業務邏輯的測試。

      3.3 自動化測試架構設計

      自動化測試架構的設計是整個自動化測試的靈魂核心,它的好壞關系到自動化測試的成敗。從系統的基本功能入手,設計自動測試架構,這是軟件測試的關鍵一步。架構的好與壞很重要,它影響到系統的擴展、維護和使用,如果想要系統容易擴展和維護,一定要多花心思在設計上。很多同行問我使用什么測試工具,我會告訴他們,用什么測試工具其實并不那么重要,不同的人使用同樣的測試工具,會做出效果完全不一樣的自動化測試,那是因為他們的架構不同,設計比工具重要得多。

      怎樣的自動化測試架構才算是一個好的架構?首先是容易擴展,能夠滿足現在的功能需求,也能滿足以后需要測試的功能的需求。第二,容易維護,當業務流程、接口或頁面變動的時候,只需要做一些簡單的修改就可以實現。第三,可讀性強,別人能夠容易讀懂和接手維護。第四,容易使用,項目組的其他人想要使用的時候能夠簡單地搭建和運行。第五,有統一的編碼規范、存儲規范和編寫風格。第六,方便調試,當腳本運行出現問題的時候,可以方便跟蹤問題產生的根源。第七,結構清晰,測試用例與測試工具和代碼分離。最后,是最重要的一點,是腳本具有很高的可信性以及自動運行的穩定性。

    原文轉自:http://www.kjueaiud.com

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