測試之路--測試基礎知識
黑盒測試工程師的工作:
1、熟悉需求,參與需求的評審(這一階段很重要)
2、熟悉設計文件。
3、編寫測試需求和用例。
4、執⾏測試用例。 (需要進行程式碼編寫)
5、執行⽤例過程中發現bug,根據規定找相關⼈人員確認後提交上去。
6、研發修改好該bug後,根據一系列的過程來回歸該bug。
7、過程中進行⼀些發散測試。
8、完成後根據模板編寫測試報告。
9、⼀個新的模組重複昨天的故事,而且可能重複的時間⽐較長
一、熟悉需求,參與需求的評審 回到我們上章的課後練習題,⼤大家看到問題後是不是⻢馬上開始根據要求去設計⽤用例了呢? 有沒有⼈人會去問,這個功能⽤用在哪些場景,主要是為了滿⾜足⽤使用者的那些需求呢?對於需求, 我們要做的就是多問⼏幾個為什麼,因為有可能客戶需要的是⼀一個正⽅方形,⽽而不是三⾓角形。 所以,建議我們如果參與了需求相關的⼯工作時,我們就需要對需求進⾏行分析,確認對應 的需求點能夠給客戶帶來的價值的什麼,或者客戶真正的原始需求是什麼?(可能有⼈人會有 疑問:這不是產品經理或產品規劃經理的⼯工作嗎?是的你答對了,但是這有什麼問題呢), ⽽而且就算我們沒有興趣做產品經理,⾄至少我們知道我們測試的產品是幹嘛⽤用的,也能讓我們 在測試的過程中更好的站在⽤使用者的⾓角度去思考和測試(對於需求分析的⽅方法後⾯面會專⻔門進⾏行 分享)。
二、熟悉設計⽂文件 在這個階段我們熟悉該模組原理,並且達到⾃自⼰己能夠將該模組的業務流程圖畫出來,並 且能夠⾃自⼰己去嘗試分析整個流程是否合理,能夠提前發現問題就更好了(如果你去努⼒力做到 這點,我相信你的提升⼀一定⾮非常快,並且能夠更好的得到開發的認可,因為⼤大部分的測試⼈人 員都做不到)。 這樣做的好處(不要問我都有什麼意義):
1、對被測模組業務邏輯的熟悉,能夠讓⾃自⼰己對後⾯面的測試更加有信⼼心。 2、站在測試的⾓角度去看設計,培養⾃自⼰己對程式碼設計的理解能⼒力。 3、能夠⾃自⼰己制定測試策略和挑選⽤用例,並且讓項⺫⽬目經理或者組⻓長更好的讓對⽅方接受⾃自⼰己的 測試策略。 4、過程中發現問題⾃自⼰己能夠嘗試去排查和定位,甚⾄至告訴研發如何去修改—這是⼀一件很 cool的事情。 5、通過⽤用例來分析哪些模組的邏輯已經覆蓋到了,從⽽而實時把握模組的質量,對整個質量 分析更加有幫助。 6、培養⾃自⼰己分析問題的能⼒力,這對測試⼯工程師是很有幫助的(否則⾃自⼰己可能會感覺做執⾏行 ⽤用例的⼯工具,這樣確實會沒有成就感)。
當然,過程中也可能存在的問題:
1、研發沒有設計⽂文件或者設計⽂文件不對測試開放。碰到這樣的情況,我只能說該公司對質 量不重視,能夠離開就趕緊離開吧!如果實在不能夠離開就多跟開發去溝通,然後⾃自⼰己嘗試 將整個業務流程圖畫出來。
2、時間肯定是不夠的(如果上⾯面給了你這些時間更好),需要⾃自⼰己花費額外的時間來做這 些事情,正常情況下,這些投⼊入對⾃自⼰己應該是⽐比較值得的,特別是剛進⼊入該⾏行業的同學。
三、編寫測試需求和⽤用例 對於⼀一個測試新⼿手來說,最好的⽅方法就是多練習,多總結,最後形成⾃自⼰己的⼀一套⽤用例設 計⽅方法。後⾯面會分享⾃自⼰己總結的⼀一套⽤用例設計的⽅方法(當然,等價類,邊界值,正交等等⼀一 些⽤用例設計的知識還是需要掌握的)。
四、執⾏行測試⽤用例 執⾏行⽤用例的時候⼀一定要搞清楚⽤用例的測試點是什麼,為什麼⽤用例要這樣設計以及是否有可 能沒有考慮到的地⽅方或者不合理的地⽅方,並且有⾃自⼰己的改進想法(最好是總結成為⽂文件)。
五、發現和提交bug
發現bug後⾃自⼰己嘗試去排查問題和定位,並且將⾃自⼰己的排查和定位問題的過程總結下來, 然後⾃自⼰己搞不定了再去找相關⼈人員,並且將其排查和定位的過程也記錄下來,後⾯面再整理成 ⾃自⼰己的定位問題的⽂文件。提交的bug將整個環境,現象,⾃自⼰己的分析過程等等全部備註到 bug⾥裡⾯面。養成這個習慣,你會得到開發的尊重。
堅持⼀一段時間後,你會發現:
1、⾃自⼰己定位問題的能⼒力得到了快速的提升,並且養成定位問題的習慣。
2、節省其他⼈人的時間,更好的得到了開發的信任。
3、更好的找到了成就感。
六、迴歸bug
研發修改好⾃自⼰己發現的bug後,⾃自⼰己去跟研發溝通是如何修改的,並且通過⾃自⼰己對業務邏 輯的分析以及程式碼的熟悉程度來確認這樣的修改是否有問題或者可能影響到的地⽅方,並且根 據分析進⾏行相應的迴歸測試(能夠直接根據程式碼改動分析就發現問題就更好了,也能夠提⾼高 開發對⾃自⼰己的認可)。
這樣做的好處是
1、能夠直接根據程式碼改動分析就發現問題,也能夠提⾼高開發對⾃自⼰己的認可。
2、更深⼊入的去接觸研發的設計和程式碼,對後⾯面的進⼀一步發展有很好的幫助。
七、發散測試(⼜又叫探索性測試)
這⾥裡建議買⼀一本探索性測試的書籍,然後直接將⾥裡⾯面的⽅方法拿出來嘗試⽤用下,也許你會發 現另外⼀一份天地以及測試的樂趣,甚⾄至你可能會選擇這個⽅方向⼀一直⾛走下去(後⾯面會專⻔門去分 享探索性測試技術)。
八、測試報告
測試報告其實是我們的⼀一次總結的過程,我們可以總結下是否所有的業務邏輯都覆蓋到 了,bug都集中在哪些邏輯⾥裡等等。及時的通過分析來發現⻛風險,養成分析的習慣,能夠讓 我們提⾼高⾃自⼰己的測試分析能力(作為測試⼈人員⼀一個最重要的能力,沒有之⼀一),⽽而且擅長總 結的⼈人才會更好的進步。