天天看點

關于自動化軟體測試用例設計的幾點分析

1、手工測試用例和自動化測試用例功能定位的差別。

  a)手工測試用例

    i.較好的異常處理能力,能通過人為的邏輯判斷校驗目前步驟的功能實作正确與否。

    ii.人工執行用例具有一定的步驟跳躍性。

    iii.人工測試步步跟蹤,能夠細緻的定位問題。

    iv.主要用來發現功能缺陷

  b)自動化測試用例

    i.執行對象是腳本,任何一個判斷都需要編碼定義。

    ii.用例步驟之間關聯性強。

    iii.主要用來保證産品主體功能正确完整和讓測試人員從繁瑣重複的工作中解脫出來。

    iv.目前自動化測試階段定位在冒煙測試和回歸測試。

  2、自動化測試用例設計管理不善可以直接導緻自動化測試開展的失敗。

  誤區:

  1、不編寫測試用例直接投入測試腳本編寫。

  2、直接拿手工測試用例來編寫自動化測試腳本。

  自動化測試替代不了手工測試,目的僅僅在于讓測試人員從繁瑣重複的機械式測試過程解脫出來,把時間和精力突入到更有價值的地方,進而挖掘更多的産品缺陷。

  目前咱們td中對用例加入了自動化測試的标簽。

  目前自動化測試定位在冒煙測試和回歸測試。

  冒煙測試執行的是主體功能點的用例。

  回歸測試執行全部或部分的測試用例。

  怎麼編寫自動化測試用例,如何将自動化測試用例和手工測試用例相輔相成。

  用例選型注意事項:

  1、不是所有的手工用例都要轉為自動化測試用例。

  2、考慮到腳本開發的成本,不要選擇流程太複雜的用例。如果有必要,可以考慮把流程拆分多個用例來實作腳本。

  3、選擇的用例最好可以建構成場景。例如一個功能子產品,分n個用例,這n個用例使用同一個場景。這樣的好處在于友善建構關鍵字測試模型。

  4、選擇的用例可以帶有目的性,例如這部分用例是用例做冒煙測試,那部分是回歸測試等,當然,會存在重疊的關系。如果目前用例不能滿足需求,那麼唯有修改用例來适應腳本和需求。

  5、選取的用例可以是你認為是重複執行,很繁瑣的部分,例如字段驗證,提示資訊驗證這類。這部分适用回歸測試。

  6、選取的用例可以是主體流程,這部分适用冒煙測試。

  7、自動化測試也可以用來做配置檢查,資料庫檢查哦。這些可能超越了手工用例,但是也算用例拓展的一部分。項目負責人可以有選擇地增加。

  8、如果平時在手工測試時,需要構造一些複雜資料,或重複一些簡單機械式動作,告訴自動化腳本,讓他來幫你。或許你的效率是以又提高了。

  用例轉型注意事項:

  1、首先測試人員應該了解腳本是怎麼替代人工來執行用例。

  2、當你寫自動化測試用例時,你需要意識到你的用例是寫給一個“智障人士”執行,執行對象是腳本。

  3、目前的測試用例前置配置資訊要寫清楚。

  4、每一個步驟都要銜接好,錯了,腳本要報異常,我要去煩你。

  5、每一個步驟要做什麼,驗證什麼要寫清楚,寫具體。有時一個檢查點,你隻需看一眼,但是腳本要寫一堆代碼去驗證,這樣的做法是不可行的。

  6、用例之間不要有關聯性,自動化測試開發同樣是軟體開發工程,腳本編寫同樣提倡高内聚低耦合的理念。

  7、不是每一個步驟都需要驗證點,讓子彈飛一會兒。

  8、别在多個地方重複相同的驗證。腳本很忙!我沒空。當然,除非有必要。

  9、開門記得要關門,配置資訊要回歸原點,否則腳本要迷路。

  10、當你設計自動化測試用例時,難免對一個用例的功能點加加減減。不要是以而剪掉了一些驗證點。因為手工用例+自動化用例=1。

  寫給項目測試負責人的一些話:

  1、項目加入了自動化測試平台,負責人要有全局的把握。因為你的用例被拆分成自動化測試和手工執行用例,原來一些被打入冷宮的用例因自動化測試而重生,重生的用例需要你的維護。

  2、當你迎來項目新立項,拿到需求文檔,開始設計新用例,此時,别忘了該如何統籌安排你的用例。是的,這很像排兵布陣,有了自動化測試這把利劍,還得看你會不會用。

  3、不要永遠做自動化測試的門外漢。可能你的職業規劃是測試經理,産品經理,或者其他,又可能你對其感到畏懼或厭倦,認為自己無法跨越對編碼的恐懼。但是,無論如何,今天你是這個項目的測試負責人(一個資深的測試工程師),你要負起這個責任,挑起大梁。

  4、如果以後你看到自動化測試報告單,沒有發現一個bug,請不要抱怨,自動化腳本主要不是來幫你找缺陷,而是告訴你沒有缺陷。

  5、如果将來你參與了自動化測試腳本編寫工作,請做好面對一大堆錯誤的心理準備。在前期,測試結果往往會夾雜着一大堆的各種錯誤,可能是架構機制問題,可能是腳本編寫問題,可能是用例問題,還有可能是需求自身的問題。

  6、咱們部門剛剛開展自動化測試,需要大夥的支援和了解。它的發展需要一個漸進的過程,從無序到有序,從困惑到豁然開朗。這個過程難免曲折艱 辛,甚至會引來非議,但是從一些成功案例中,還是堅定了我繼續走下去的信心。我渴望和大家一起分享這份成果,盡管現在連花兒都未曾開放。

  7、會自動化測試和會qtp是兩回事,學習自動化測試不一定要會qtp,你也可以通過selenium入門。

  8、請考慮下你負責的項目是否需要實施自動化測試,我們可以一起坐下來讨論,圈定一個範圍和實施的計劃。我們都是産品線上的一顆螺絲釘,我這顆螺絲釘很樂意為你的項目提供自動化測試的幫助。

  9、不要過度信任自動化測試,它也是個撒謊高手。是以,自動化用例需要測試,架構需要測試,腳本函數需要測試,腳本過程需要測試,驅動資料需要測試。

  10、看到這裡,你一定覺得開展自動化測試很累人。沒錯,這本不是一件立竿見影的利索活。它的發光,需要一定時間的沉澱,我們現在讨論的,和接下來要做的工作就是為了如何來縮短這部分的時間。

  總結:今天讨論的僅僅是自動化測試開展實施的一部分,這部分很關鍵,需要大家的支援,因為用例是整個自動化 測試的靈魂,沒了靈魂,架構搞得再好,也僅僅是個軀殼,行屍走肉。我自己寫測試用例的水準遠不如咱們部門的測試負責人,這是真話。讨論自動化測試用例的選 型和轉型難免有些力不從心,盡管這樣,我還是憋着喊出來,希望能得到大家的更好見解,俗稱:抛磚引玉。

繼續閱讀