Day 2 測試分析講義
在第一天的內容里面,我們重點討論了測試執(zhí)行,也就是說別人分析好的測試硝拧,我們如何去執(zhí)行,這是測試工作的第一步葛假。那么如何更進一步呢障陶,我們當然不希望只是從事最簡單最基礎的部分,也是希望有進一步的發(fā)展空間聊训。于是咸这,這一篇講義就是來做第二步的講解,做好測試分析魔眨,這樣可以在分析的基礎上去做軟件測試。
本篇講義解決的問題如下:
- 對于指定好的具體功能酿雪,如何開始測試遏暴?
- 對于指定的功能來說,測試要包括哪些范圍指黎?
- 測試場景是怎么回事朋凉?
0 主要內容
- 1 B1_需求分析
- 2 B2_測試范圍
- 3 B3_測試重點
1 B1_需求分析
1.1 需求定義
需求,這個詞應該是軟件領域里面聽到的最多的詞匯之一醋安。具體的表述有如下:
- 需求杂彭,Specification,SPEC
- 功能吓揪,feature
- 新功能亲怠,new feature
- 更新的功能,updated feature
- 用戶故事柠辞,user story
- 故事团秽,story
在敏捷(Agile)開發(fā)框架中,需求的標準說法是:用戶故事,User Story习勤。這里我們在禪道中有明確的頁面踪栋。之前我們用了禪道“測試”模塊的兩個菜單:“Bug”和“用例”,今天我們討論禪道的另一個菜單:“需求”图毕。這個菜單在“產品”和“項目”中都有夷都,但是只有在“產品”中可以創(chuàng)建,在別的地方只能查看予颤。
我們打開“創(chuàng)建需求”的頁面囤官,可以看到如下界面(重點關注紅色框選部分):
重點,其實就是框選的部分荣瑟,需求(用戶故事)的主要內容包括三個地方
- 需求名稱:用來說明要開發(fā)的功能是做什么的
- 需求描述:用來描述治拿,這個需要被開發(fā)的功能,具體是怎么回事
- 驗收標準:下面的文字來討論笆焰,要說明如何通過驗收
用戶故事是描述對用戶有價值的功能劫谅,好的用戶故事應該包括角色、功能和商業(yè)價值三個要素嚷掠。用戶故事通常的格式為:作為一個<角色>, 我想要<功能>, 以便于<商業(yè)價值>捏检。
英文是As a <Role>, I want to <Activity>, so that <Business Value>.
- 角色:誰要使用這個功能。
- 功能:需要完成什么樣的功能不皆。
- 價值:為什么需要這個功能贯城,這個功能帶來什么樣的價值。
來舉兩個栗子:
- 作為注冊求職用戶霹娄,我想要查看最近3天發(fā)布的招聘信息能犯,以便于我看到最新的招聘信息
- 作為注冊企業(yè)招聘用戶,我想要查看最近一周更新的簡歷信息犬耻,以便于我查找到最新的候選信息
1.2 需求澄清
需求澄清的過程踩晶,就是需求明確的過程,整個行為為了滿足兩個要求:
- 開發(fā)人員知道如何去開發(fā)這個需求枕磁,要達到什么樣的效果
- 測試人員知道如何去驗證這個需求渡蜻,要保證社么呀的標準
需求澄清一般是由項目經理主持,開發(fā)人員和測試人員共同參加并討論確定結果的计济。需求澄清的產出就是:驗收標準茸苇。
1.3 驗收標準
驗收標準,又稱為AC沦寂。Acceptance Criteria学密。這個是需求(用戶故事)最有價值的內容,因為AC決定了需求的完成目標传藏。
標準则果,顧名思義就是要確定一個規(guī)矩幔翰,為需求描述的每一個內容細節(jié)做好確定。我們接著用上面的例子來展開說明西壮。
栗子一:作為注冊求職用戶遗增,我想要查看最近3天發(fā)布的招聘信息,以便于我看到最新的招聘信息
這個栗子款青,我們要確定的標準至少要包括以下幾個內容
- 是不是只有注冊的求職用戶才能夠查看做修?
- 如何知道是注冊用戶,那么要登錄系統(tǒng)后才能查看么抡草?
- 最近3天發(fā)布饰及,是怎么定義最近三天的?
- 招聘信息是指招聘職位康震,還是招聘公司燎含?
- 這個功能的界面是什么要求?
栗子二:作為注冊企業(yè)招聘用戶腿短,我想要查看最近一周更新的簡歷信息屏箍,以便于我查找到最新的候選信息
這個栗子,我們要確定的標準至少同樣要包括以下幾個內容
- 是不是只有注冊的企業(yè)招聘用戶才能查看橘忱?
- 企業(yè)招聘用戶指的是哪類用戶赴魁?
- 這個用戶需要登錄系統(tǒng)么?
- 最近一周是如何定義的钝诚?
- 更新的簡歷信息需要顯示什么內容颖御?
- 這個功能的界面是什么要求?
標準凝颇,就是對上面的每一個問號(潘拱?)做好回答,就形成了標準拧略。類似于規(guī)章制度泽铛。
2 B2_測試范圍
2.1 測試對象
測試范圍,是測試分析的接下來的一個重要部分辑鲤。在測試開始之前,軟件測試工程師能夠參考的內容杠茬,就是需求(用戶故事)月褥,通過對用戶故事中AC驗收標準的分析,我們需要明確測試范圍瓢喉,列出來以下兩個部分:
- 該功能(用戶故事宁赤、需求)中,需要被測試和驗證的部分
- 該功能(用戶故事栓票、需求)中决左,不需要被測試和驗證的部分
這里的“部分”愕够,就只得是測試對象。
測試對象主要包括兩種:
- 直觀的:界面對象
- 不直觀的佛猛,需要分析的:業(yè)務對象
2.2 界面對象
界面對象惑芭,就是UI對象,指的是眼睛可以看到的继找,耳朵可以聽到的遂跟,鼠標可以操作的(點擊,左鍵婴渡,右鍵幻锁,中鍵,雙擊边臼,拖拽等)哄尔,鍵盤可以操作的(輸入,刪除柠并,回車岭接,空格,TAB等)
這些內容堂鲤,要分析出來亿傅,哪些需要被測試,哪些不需要被測試瘟栖。
2.3 業(yè)務對象
注意葵擎,業(yè)務對象是測試的重點,重點半哟,重點的對象
業(yè)務對象酬滤,就是業(yè)務邏輯。這個可能比較難理解寓涨。指的是輸入和輸出的處理過程盯串。例如發(fā)紅包這個需求,業(yè)務對象就是:
- 發(fā)紅包之前的聊天窗口
- 發(fā)紅包的合法輸入以后的操作結果
- 發(fā)紅包的非法輸入以后的操作結果
- 發(fā)紅包以后的紅包記錄(95%的新手測試工程師會遺漏哦)
3 B3_測試重點
3.1 什么是點
測試重點戒良,就是要重點体捏,專注,花費主要的時間和資源去檢查的“測試對象”的某一個細分的部分糯崎。還是以紅包為例:
- 重點一:紅包金額的輸入框
- 重點二:輸入金額后几缭,金額顯示的聯(lián)動
- 重點三:合法操作后的結果
- 自己對話框
- 對方對話框
3.2 為什么重
上面的“紅包歷史記錄”為什么不是重點?因為沃呢,這個點不影響發(fā)紅包的主要功能年栓。所以重點,一定是影響這個需求(用戶故事)的主要內容的點薄霜。
3.3 如何判定
那么如何判定某抓,哪些是重點纸兔,哪些不是呢?
- 用戶常用的和用戶看重的(產品經理會告知)
- 最主要的功能:其實對應的是用戶故事的(我希望有xx)
- 和金額否副,交易汉矿,流程相關的
- 按照經驗,出問題比較多的地方:例如 權限
- 相關學習
立師兄Linty:六天入門軟件測試①——測試執(zhí)行講義