測試,改變程序猿命運的捷徑

5128.png

    《5分鐘從學生到程序員》第12課。

    上節課我們簡單提了下,寫完代碼之後,要試用功能,自己對功能滿意,用戶纔會滿意,同時可以減少bug率和返工。這節課我和大家分享怎麼利用測試,提升自己的能力,甚至提升自己的崗位。

1. 是什麼決定你在這個崗位上

    決定我們在哪個位置,不是會多少技術,掌握什麼技能,而是我們心裏裝的是什麼!心裏裝着功能的是初級工程師,心裏裝着模塊的是中級工程師,心裏裝着應用的是高級工程師,心裏裝着企業的是老闆。

    你說自己很厲害,精通java、springboot、springcloud、mysql、MyBatis;連前端的HTML、css、JS也精通。別人相信嗎?可能相信,也可能不信,爲什麼?別人沒辦法判斷。

    初級工程師勞動成果是功能,所以功能是檢驗初級工程師能力的最主要衡量標準,如果功能的bug率高於平均水平,說明你的能力很次,如果功能的bug率低於平均水平,說明你的能力不錯。

    如果功能的平均bug率是2,你說你的bug率是1,別人就會點贊,覺得你厲害。

2. 職場的小故事看因果

    小故事1:我搭建好幾個團隊,在團隊剛搭好做項目的時候,經常會有測試來向我投訴,說誰的bug特別多,誰冒煙測試通不過還提測,誰功能都沒做完就丟給測試,等等。所以關心功能質量的不僅僅是我,測試工程師更關心,因爲質量差的代碼,會增加他們的工作量。


    小故事2:我組項目團隊的時候,一般是先決定項目的各業務老大,再由他們商量要哪些人蔘與項目。技術經理說:我要張三、李四他們兩個人。測試經理就會說:張三不行,他做事很不認真,每次都他bug最多,我們還是不要他,我覺得還是要王五吧,他做事很嚴謹,跟他配合就很舒服。

    你看做事不認真,bug最多,人家還不要你。如果公司有做末尾淘汰,那張三就是被淘汰的對象。如果公司剛好有個調崗名額,還這個名額非王五莫屬。所以,你看測試跟開發從表面看,八杆子打不着的事,他們背後的邏輯因果就是這麼複雜。

    前面講的都是職場上的故事,下面我們來看測試對我們技能提升會帶來的幫助。

5121.jpg

3. 技術的提升

    你多測試,多試用,你就會發現,類似的界面,爲什麼師傅寫出來的就比我好看?分析界面,甚至去看師傅的代碼,發現原來是師傅採用統一的UI風格,自己是按UI設計圖來做,UI上有標註的就做的好,UI上沒標註的,自己瞎做。發現差距了,後面就懂得用UI規範了。

    你可能又發現,同樣的界面切換,我自己做的一閃就過去了,而師傅的是很平滑的切換,再一看代碼,或向師傅請教,原來是他在切換的時候加了動畫效果,後面就懂得交互效果的處理。

4. 產品理解的提升

    像上節課發送文字的例子,在試用的時候,你可能就發現,app端做設計的時候,寫的是4步,但是在第三步,我退出了聊天界面,那這個要怎麼處理?試用的時候就發現,少了一個步驟,在還沒提交測試前,那趕快添加對這個操作的處理,功能的完成度就更好。

    之前分析的時候,暫時說這個功能跟其它功能沒有關係,試用時就發現,在聊天界面,除了要發送文字,還要發送表情、圖片等,那就跟其它功能有關係。在一對一聊天中,還可以調用通訊錄,添加好友羣聊,這些都有關係。

    然後,就感悟到原來產品邏輯是這樣設計的,師傅接到這個模塊,他是怎麼樣把這個模塊分成各個功能,然後再分給我們不同人做的。

    這樣,你對產品、對模塊就瞭解了,是不是比你做完一個功能,丟給測試,等他反饋bug,再改bug好多了?

5125.gif


5. 我是做開發的,爲什麼要理解產品?

    你可能會說,我是做開發的,爲什麼要理解產品?我們借用叮噹貓的小口袋,把時間往後拉一年,張三成爲了中級工程師,也開始帶徒弟了,好興奮的感覺。現在參與一個新項目,技術經理把中、高級工程師張三、李四、王五拉一起:“張三,你負責用戶模塊;李四,你負責商品模塊;王五,你負責支付模塊。這樣安排有沒有問題?” 然後張三站起來說:“老大,用戶模塊有哪些功能啊?”

    出現這種情況就好玩了,我們可以想像當時的場面有多搞笑。中級工程師是要對產品有了解,懂得分解模塊成一個個功能的。這個能力怎麼來的?有人教嗎?這種能力是沒人教的,都是經驗的積累,都是從玩一個個功能練出來的。

    這面講了研發跟測試的背後因果,這裏也看到了研發跟產品的背後因果了吧!有人可能看了因果兩字會有不舒服,這個沒什麼,因果就是if語句,if的條件滿足,就執行if的代碼段,這個就叫因果。

6. Bug率低會帶來自信,自信會擴大責任範圍

    如果,你做的功能,bug率比別人少,是不是更有信心?這個是肯定的。你有了自信,是不是更敢於承擔更多的責任。而我們前面講過,決定工程師水平的不是技術水平,而是他承擔了哪個方面的責任。功能承擔更多,慢慢的就承擔起模塊的責任,只要你能承擔起模塊的責任,那就是中級工程師水平了。

    就等着調崗升薪吧。

7. 總結

    這節課我們分享了測試給程序員帶來的價值,通過試用和測試,程序員可以提升技術水平,對產品的理解能力,可以降低功能的Bug率,而低Bug率可以增加程序員的信心,更有自信去承擔更多的責任,而更多的責任達到模塊級,他的級別就提升到中級程序員。


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章