測試人員的工作規(guī)范

1.1. 編碼規(guī)范

軟件程序開發(fā)需要遵守編碼規(guī)范,一是可以減少代碼的維護成本,提高開發(fā)工作效率;二是有利于開發(fā)工作的延續(xù)、傳承,減小項目風險。

 1.1.1. 合理的注釋量

  好的代碼應該是自描述的,讓人費解的地方加上注釋。

 1.1.2. 規(guī)范的命名格式

  規(guī)范很多,要讓別人和一個月的自己看得懂。

1.2. 測試與測試結果

 

??1.2.1. 單元測試與報告

單元測試一定要做。深入理解“ test driven development”思想,有條件的話,先寫測試代碼,后寫開發(fā)代碼。綜合使用各種覆蓋方法,例如:路徑、函數(shù)、條件、語句,Code Coverage確保高于80%。

  統(tǒng)一提供單元測試報告。

 1.2.2. 集成測試與報告

  集成測試也一定要做。測試工作要覆蓋所有模塊和接口。

  統(tǒng)一提供集成測試報告。

 1.2.3. 系統(tǒng)測試

  單元和集成通過后,項目提測并進入系統(tǒng)測試階段。

  系統(tǒng)測試范圍依據(jù)項目不同可分為功能和非功能測試。

1.2.3.1. 模式

  依照Alpha1-到Alpha1n的模式。

  提測版本1冒煙測試通過后即進入第一輪測試(記作Alpha1),執(zhí)行全用例。測試和開發(fā),不斷提交和修復BUG,直至用例執(zhí)行完成;

  開發(fā)修復完所有缺陷,打包發(fā)布版本2;

  提測版本2冒煙測試通過后即進入第二輪測試(記做Alpha2),驗證缺陷,執(zhí)行部分用例。測試和開發(fā),不斷提交和修復BUG,直至用例執(zhí)行完成;

  開發(fā)修復完所有缺陷,打包發(fā)布版本3;

  提測版本3冒煙測試通過后即進入第三輪測試(記做Alpha3),驗證缺陷,執(zhí)行部分用例。測試和開發(fā),不斷提交和修復BUG,直至用例執(zhí)行完成;

  ……

  如此,循環(huán)往復,直至缺陷收斂,達到測試退出標準,系統(tǒng)測試完成。

  出具系統(tǒng)測試報告。

1.2.3.2. 進入標準

  1) 需求說明書規(guī)定的功能均已實現(xiàn);

  2) 主要流程可以走通。

  3) 界面上的功能均已實現(xiàn),符合設計文檔規(guī)定的功能。

 1.2.3.3. 暫停標準

  1) 一級錯誤數(shù)大于1、二級錯誤數(shù)大于2;

  2) 軟件項目需暫停以進行調(diào)整時。

1.2.3.4. 退出標準

  1) 按照測試計劃完成了系統(tǒng)測試;

  2) 達到了測試計劃中關于系統(tǒng)測試所規(guī)定的覆蓋率要求;

  3) 在系統(tǒng)測試中發(fā)現(xiàn)的錯誤已經(jīng)得到修改,各缺陷修復率達到要求。

1.3. 工作流程

1.3.1. 需求與變更

1.3.1.1. 需求定義

  需求確定后以文檔和原型方式提供給測試方。應包含術語解釋,功能描述,精確的數(shù)據(jù)限制等等。

  對開發(fā)和測試人員開展統(tǒng)一培訓。

 1.3.1.2. 基線

  《產(chǎn)品需求文檔》確認、穩(wěn)定后,應建立基線,它是進一步開發(fā)、測試的基礎。當基線形成后,項目負責軟件配置管理的人需要通知相關人員基線已經(jīng)形成,并且哪兒可以找到這基線了的版本。這個過程可被認為內(nèi)部的發(fā)布。至于對外的正式發(fā)布,更是應當從基線了的版本中發(fā)布。

  1.3.1.3. 變更管理

  軟件工程過程中變更無法避免,這種變更必須嚴格加以控制和管理,保持修改信息,并把精確、清晰的信息傳遞到軟件工程過程的下一步驟。軟件變更管理包括建立控制點和建立報告與審查制度。

  變更管理的主要任務包括:

  1、 分析變更的必要性和合理性,確定是否實施變更;

  2、 記錄變更信息,填寫變更控制單;

  3、 修改相應的軟件配置項(基線),確立新的版本;

  4、 評審后發(fā)布新版本。

 1.3.2. 項目提測

  1.3.2.1. 提測時間

  項目提測時間應安排在開發(fā)完成,已通過單元和集成測試之后。開發(fā)人員有時間,過一遍冒煙測試用例,以提高冒煙測試通過的成功率。

 1.3.2.2. 提測交付物

  《單元測試報告》

  《集成測試報告》

  《測試環(huán)境搭建部署手冊》

  “部署程序包”

  “數(shù)據(jù)庫初始化腳本”

 1.3.2.3. 版本控制

  1) 開發(fā)團隊制定并遵循一定的軟件系統(tǒng)版本命名格式,例如:

  “軟件系統(tǒng)的版本號由3部分構成,即主版本號+次版本號+修改號。主版本號1位,只有當系統(tǒng)在結構和功能上有重大突破改進后才發(fā)生變化;次版本號有2位;修改號8位,采用提交時的日期,當系統(tǒng)進行任何修改后,包括數(shù)據(jù)庫結構發(fā)生變化,修改號都要隨之改變。例如:Ver3.31.19990317”;

  2) 各子系統(tǒng)的版本號獨立;

  3)軟件系統(tǒng),產(chǎn)生新的版本后,老版本的軟件系統(tǒng)是否繼續(xù)保存,取決于以下條件:

  a、老版本的系統(tǒng)如果有客戶還在使用,在客戶升級以前,必須繼續(xù)保存。

  b、老版本的系統(tǒng)已經(jīng)沒有客戶使用了,并且新版本的系統(tǒng)已經(jīng)把老系統(tǒng)的文檔完整地升級過來,這樣可以刪除或覆蓋老版本的系統(tǒng)資源。

  c、對于要刪除或覆蓋的老版本系統(tǒng),可以統(tǒng)一備份起來。

 1.3.2.4. 提測間隔

  項目第一次提測后,后續(xù)提測應該安排在軟件測試工作一輪完成后,并且已盡力修復完大部分缺陷之后。

  在系統(tǒng)測試期間嚴重杜絕一個版本只為了修復一個缺陷。

 1.3.2.5. 測試環(huán)境

  1.3.2.5.1. 環(huán)境分類

  為了保證工作質(zhì)量、優(yōu)化工作流程,軟件環(huán)境最少應該有以下三套:

  開發(fā)環(huán)境:開發(fā)部門開發(fā)、調(diào)試、集成軟件使用。

  系統(tǒng)測試環(huán)境:測試部門系統(tǒng)測試使用。

  生產(chǎn)環(huán)境:用戶使用,運維部門管理。

  為了進一步提高用戶體驗、提高缺陷修復效率,根據(jù)條件也可以增設以下兩套環(huán)境:

  Beta環(huán)境:系統(tǒng)測試通過后,Beta測試使用,運維部門管理。

  線上鏡像環(huán)境:緊急復現(xiàn)、調(diào)試、解決線上問題。

 1.3.2.5.2. 環(huán)境管理

  分權

  生產(chǎn)環(huán)境對開發(fā)和測試只開放查詢權限。(需要修改權限時需要經(jīng)過一定的機制來控制記錄,一般只在調(diào)試程序時開放修改權限);

  測試環(huán)境對開發(fā)開放查詢權限。(需要修改權限時要經(jīng)過確認, 一般只在調(diào)試程序時開放修改權限);

  開發(fā)環(huán)境對測試人員只開放查詢權限;

  以上三個環(huán)境,都由專人負責升級、維護。

  定期比對

  取生產(chǎn)環(huán)境數(shù)據(jù)庫作為標準,對比測試環(huán)境。

  提取差異部分(表結構、過程、觸發(fā)器等)進行分析。若差異部分不是計劃內(nèi)的升級版本所致,則應該刪除。這樣在下一個計劃版本升版后,下下個計劃版本沒有在測試環(huán)境上升版前,測試環(huán)境和生產(chǎn)環(huán)境就實現(xiàn)了結構上的一致了。

  開發(fā)環(huán)境,同樣與生產(chǎn)環(huán)境對比,差異部分先去除最近一次要發(fā)布生產(chǎn)的腳本影響,再將剩下的,在開發(fā)組內(nèi)部溝通確認,將沒有人負責的刪除。這樣,可得到相對統(tǒng)一的環(huán)境。

  由于開發(fā)環(huán)境,一般只有一個,所以在多個版本并行開發(fā)過程中,數(shù)據(jù)庫管理是相對比較混亂的。在這種情況下,盡量保證測試環(huán)境與生產(chǎn)環(huán)境的數(shù)據(jù)庫結構的統(tǒng)一。對保證發(fā)布質(zhì)量有較大意義。

 1.3.2.6. 冒煙測試

  冒煙測試出現(xiàn)的場景有兩個,一個是在內(nèi)部測試時;一個是在生產(chǎn)環(huán)境上線時。

  冒煙測試通過驗證主要功能是否已經(jīng)實現(xiàn),有利于粗略的驗證提測物是否具有可測性、上線部署后的系統(tǒng)有無重大問題。

1.3.3. 缺陷處理

  1.3.3.1. 修復時間

  缺陷處理應該有一定的時效性。

  優(yōu)先級

  說明

  1-緊急

  必須在一個工作日內(nèi)修復

  2-較高

  必須在三個工作日內(nèi)修復

  3-一般

  必須在五個工作日內(nèi)修復

  4-不急

  有時間再修復

1.4. 質(zhì)量保證

? ? 1.4.1. 評審

 1.4.1.1. 需求評審

  對于產(chǎn)品需求的評估可以分為三個維度:

  價值認同 - 對用戶有沒有價值,投入產(chǎn)出比怎樣;

  需求質(zhì)量 - 需求是否易于理解,細節(jié)有沒有說清楚,邏輯是否成立;

  技術可行性 - 能不能做,成本多大規(guī)模,有多大風險。

 1.4.1.2. 設計方案評審

  由開發(fā)團隊自行組織,從流程上,必須要進行的。

1.4.1.3. 用例評審

  參與方:產(chǎn)品、測試、開發(fā)和項目負責人;

  目的:

  1) 減少測試人員執(zhí)行階段做無效工作;

  2) 避免三方的需求理解不一致;

  3) 每個測試人員的質(zhì)量標準與項目要求標準達成一致。

1.4.2. 交叉測試

  1、每一個測試人員有自己思維的局限性,一種思維測試過之后,軟件會對這種測試思維產(chǎn)生抗性,很難再發(fā)現(xiàn)新的問題,通過交叉測試,可以把新的測試思維帶進來,測試出未發(fā)現(xiàn)的bug。

  2、防止測試人員工作粗心導致漏測。

  2. 執(zhí)行監(jiān)督

  首先達成共識,在共同監(jiān)督執(zhí)行的基礎上,并安排專人主持監(jiān)督工作。

  3. 優(yōu)化改進

  該文檔羅列,定義了一系列的軟件測試規(guī)范,主要目的還是為了保證項目進度、提高軟件質(zhì)量。在該方案執(zhí)行的過程中,我們本著簡潔、高效的原則,不斷優(yōu)化改進,以期拿出最適用藥聚匯的軟件測試工作規(guī)范。

  3.1. 測試演進

  3.2. 缺陷預防

  1) 需求階段測試開始進入項目;

  2) 進行單元測試-代碼靜態(tài)分析;

  3) 持續(xù)集成-每日構建、自動反饋。

?著作權歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容