當前位置:招聘信息大全網 - 物業公司 - 經驗分享軟件測試用例管理

經驗分享軟件測試用例管理

本文涉及到測試用例編寫的規範和用例管理的分享,因此對初級測試工程師和質量團隊的管理者有壹定的參考意義。本文中涉及的方法和工具並不是唯壹的解決方案。我希望妳收獲的不僅僅是文本的表面,而是本文分享的壹些觀點。

有人說:測試用例還不知道?不就是描述壹下測試步驟嗎?

這個答案沒有錯,但是如果妳只是心裏這麽想,那只能說妳不懂測試用例。

測試用例除了描述測試行為,更多的是用來驗證被測目標是否滿足需求,主要考驗壹個測試工程師的組織歸納能力。輸入來源通常是承諾書、用例以及他們自己在業務領域的經驗。壹個軟件測試工程師的專業性往往體現在他設計的測試用例中。

專業工程師設計的測試用例集既能描述自己的行為,又能指導他人實現,既強調深度,又具有優秀的用戶思維。

雖然在格式上,基本定型了:

關於這部分,網上只有很多教程,就不贅述了。

只是需要強調的是,格式只能保證測試用例的清晰,並不能提高測試用例的設計能力。因此,如何編寫測試用例呢?還是得從結構化設計入手。這裏需要提到壹個概念,HLTD(High Level Test Design),可以簡單粗暴地理解為測試大綱的設計。

就像寫文章壹樣,我們在寫正文之前會先擬好草稿,列出中心思想和段落提綱,然後再寫上去。

編寫測試用例也是類似的程序。首先,測試點被列為大綱,並具有結構化的布局。通常是按大的功能或模塊分類,然後細化二級甚至三級分類,最後列出具體的測試點。在這個階段的設計中,作者傾向於使用思維導圖(腦圖),它比傳統的文檔軟件工具更直觀。

因為最後會是大局觀,硬傷也會有所體現,只適合思考梳理,不適合文檔管理。

記錄這些結構化的測試點就是我們所說的測試用例。

所以從這裏我們可以看出,每個測試用例的目的是明確的,就是驗證壹個或者壹類測試點。粒度需要根據公司的實際情況來權衡。太粗不利於總結考點的覆蓋面,太細會消耗更多的精力。

測試用例其實是壹個非常詳細的文檔,必然會消耗測試工程師相當壹部分的精力。在傳統軟件開發時代,甚至作為KPI的指標。

但是隨著敏捷時代的興起,壹種聲音開始沖擊這種認知。

早期的敏捷實踐者,對敏捷宣言的解讀只停留在文字表面,認為“只需要軟件,不需要文檔”。這直接導致了這個時期,大量的團隊缺乏詳細的文檔,甚至連壹些基本的文檔都沒有。

如今,越來越多的敏捷實踐者意識到,敏捷宣言並不提倡“不需要詳細的文檔”。相反,敏捷宣言認識到“詳細的文檔非常重要”,並提出了更高的要求——“工作軟件更重要”

對於測試用例的文檔工具的選擇,很多團隊還停留在傳統的辦公軟件,比如Word和Excel。

然而,在當今壹切都比別人快的市場環境下,團隊成員高效協作、實時享受團隊信息的需求越來越高,測試用例的平臺化管理最終必然歸屬。除了文檔,該平臺還用於制定計劃和顯示進度和結果。

事實上,在傳統時代,更大的軟件公司已經使用平臺來管理測試用例,這再次證明了敏捷時代並不意味著推翻過去的經驗和成果,而是提出了更高的要求。

現在有比較知名的基於吉拉作為插件的管理平臺,比如澤法、Xray、synapseRT、TM4J,也有獨立開源平臺,比如TestLink,或者收費獨立平臺,比如TestRail。

我們主要從生態、實現成本、可擴展性、成本等角度考慮。

澤法的名聲壹直很大,但實際上不符合中國人的習慣,使用起來也不方便。用例直接使用吉拉發行,功能相對簡單。用例管理主要關註計劃和周期之間的關聯。因為它是壹個吉拉插件,所以它可以很好地與吉拉上的其他問題(需求、任務、缺陷)相關聯。但其用例管理的可視化不是很好,沒有用例集的概念。在遷移方面,數據導入支持的類型是有限的。在擴展方面,如果要使用它的API,需要再安裝壹個插件。它的成本適中。

x射線是相當令人滿意的,它也使用吉拉的問題來創建測試用例。然而,新的問題類型多達五種,極其復雜。關聯能力和澤法壹樣,數據導入支持類型有限,自帶API可用。它的成本適中。

SynapseRT是中國人開發的,本地化效果最好,功能強大。有用用例集的概念,用例也隨著吉拉問題而擴展。數據導入支持其他平臺,如TestLink和澤法。關聯能力和澤法壹樣,數據導入支持的類型還是有限的,也有自己的API可以使用。且成本相對較低。

TM4J使用壹個獨立的頁面來管理測試用例,它與復雜的吉拉問題頁面相分離,很難上手。數據導入功能強大,涵蓋多種類型和壹些知名平臺。關聯能力和上面的插件壹致,也有API可以用。但是成本比較高。

TestLink作為壹個獨立的測試管理平臺,功能齊全且免費。可以聯想到吉拉這樣的知名平臺,但是因為不是亞特蘭蒂斯系統,生態體驗不高。硬傷就是界面難看,容易影響工程師的心情。我曾經用它自己的API來美化UI。

TestRail是壹個功能強大的商業平臺,我接觸不多,就不隨便評論了。

總的來說,雖然TestLink作為免費開源的用例管理平臺的頂級,在用例管理方面做得非常科學,總是值得學習的,但是我的公司已經在用吉拉,正在落地DevOps,而且我也經常得到Atlassian中國社區研究院副院長的支持,所以TM4J成為了最終的選擇:

制作方還是挺強的。除了TM4J,澤法其實也是它的產品,Swagger已經是目前認知度很高的產品了。

從官網的介紹可以看出,TM4J還是比較現代的:

首先,我們來看看如何使用TM4J編寫測試用例。

分層來說,我們按照HLTD創建目錄和子目錄,供大家理解和閱讀,最後的測試點被實例化為壹個測試用例,這個測試用例有壹個全局唯壹的鍵。

點擊New按鈕來創建壹個新的測試用例。默認情況下,它位於Details選項卡中,在這裏您可以定義測試用例的名稱、目的和前提條件。您可以在詳細信息中設置狀態、優先級、所屬組件,並添加壹些易於管理的標簽。

切換到Test Scripts標簽頁,默認是Step-by-Step類型,並根據STEP-TEST DATA-EXPECTED RESULT添加每個測試步驟。

另外值得壹提的是,在Traceability選項卡中,您可以關聯吉拉發布和合流頁面。

通常我們需要為每個產品的發布和交付制定範圍,所以計劃管理是必不可少的。

計劃管理建議根據發布版本做壹個頂級目錄,然後為測試類型創建壹個二級目錄,比如回歸、新功能、端到端、接口、性能等等。

測試計劃的創建本身並不復雜,除了定義計劃的名稱、目的、狀態、負責人,再加上壹些標簽。

您還需要關聯壹個需求或者壹個融合頁面。當測試計劃第壹次被創建時,測試周期可能不存在,但是當測試周期稍後被創建時,它將在兩個方向上被關聯。

測試周期是承上啟下的關鍵環節,它上承測試計劃,下接具體的測試用例。

通常,壹個發布交付會經歷3-5個sprint,每個sprint的範圍可能不完全相同。

創建新的測試周期名稱、描述和細節後。

進入測試用例頁簽,點擊+添加測試用例,添加編寫好的測試用例。

這壹步使得測試用例具有項目屬性。

最後,點擊測試周期的Traceability選項卡上測試計劃後面的放大鏡。

通過搜索關聯已完成的測試計劃。

在創建壹個測試周期之後,妳可以進入這個周期並瀏覽分配給妳自己名字的測試用例。這是壹個所有測試執行者都需要使用的接口,妳也可以通過Group by按照不同的規則進行分類,比如測試周期中做的不同目錄。

對於用例步驟的執行,TM4J提供了壹些快捷按鈕,可以直接標記通過、失敗和阻塞,您可以單擊齒輪按鈕快速創建並找到吉拉問題進行關聯。當然,除了將問題與步驟相關聯之外,您還可以為此用例標記問題,並在問題後點擊+▼進行操作。這就是統壹平臺的優勢。

雖然我們在查看測試周期列表的時候可以看到測試的進度,但是更多的數據可以通過測試報告來展示。

TM4J的報告功能為我們提供了豐富的模板,方便壹些沒有經驗的測試質量管理人員。

最後,作者想說,測試不能是壹個獨立的業務,應該更多的是和其他角色的協作。尤其是在當前的敏捷時代,測試用例的執行可能需要開發工程師的關註,測試情況可能需要產品經理隨時介入。所以我們強烈建議軟件測試人員盡量選擇壹些跨功能的協作平臺。