上次有篇 "專職的自動化測試工程師有用嗎?” 提到, 個人比較喜歡不要分 RD 和 QA 兩個角色, 就只有一個角色, 但是負責 開發 和 測試 兩類工作.
 
image
 
但是有網友反應, 他比較喜歡是分開的:
 
小弟有不同意見
我認為開發與測試還是要分開
而且測試應該只是開發的左右手 僅只如此
承擔產品成敗責任的 就只有開發
design for testing
你在設計的時候 就該思考到測試的可行性
測試人員不過是幫你驗證想法而已
 
 
分開與否, 個人覺得還好, 不同公司, 不同組織, 有不同的脈絡, 很難有統一的答案. 只是你要知道每種做法的優缺點, 以及這些缺點你目前是否能夠受得了. 
 
以下是我自己整理可能的組合(這些組合可能可以混合使用), 以及相對應的好處和壞處.
 
 
(1) 開發人員自己來測
好處
    因爲程式是自己寫, 很了解程式的細節, 所以容易下手去測
    並且測到有問題時 可以快速去修復
壞處
    就是因為程式是自己寫的, 往往不忍心下重手. 就像自己小孩一樣, 不會用力打罵.
    另外, 可能對系統會有偏見, 認為某些情況就只是這樣. 或者是太樂觀, 認為某些事情不會發生. 導致測試不完整, 有偏差.
    對於測試相關知識不足, 不擅長開立測試個案, 以及處理各式各樣的測試活動
 
 
(2) 開發團隊自己交叉測試各自的程式
好處
    對受測系統的知識了解算是多的, 並且對所使用開發的技術也是熟悉的, 只差被測的部分不是自己寫的
    團隊成員之間有同事情誼, 容易快速得到訊息
    因為是不同成員測的, 想法上會不同, 因此測試上不會有先入為主的假設
壞處
    同樣對於測試相關知識不足, 無法把每項測試活動做好
    有同儕壓力, 有可能在測試上會放過一馬
    測試的角度容易從技術考量, 而非用戶使用場景或是商業考量
    因為是不同人測試, 受測系統的知識需要花時間學習
 
 
(3) 團隊中有專屬測試人員來測試
好處
    有專業的測試技能
    有同事情誼, 溝通起來還算方便
    態度上比較中立, 不會對情節上有太多架設.
    開立的測試場景比較會從客戶角度出發
壞處
    因為角色的不同, 可能會有輕視, 以及可能計較 bug 數導致對立關係.
    如果要能做測試自動化, 要需要有程式能力, 並且也是要寫得夠快, 所以不容易找人
    因為是不同角色測試, 受測系統的知識需要花時間學習
 
 
(4) 組織內獨立測試團隊來幫忙測試
好處
    有專業的測試技能
    至少在同一家公司, 文化上比較能配合, 產品也不至於完全沒概念.
    至少還在同一棟大樓工作, 要去詢問比較方便
    通常會對某個特定領域很擅長測試
壞處
    沒有產品知識, 也是需要花時間學習
    不是同一團隊, 溝通是需要花時間
    可能同時間負責多個專案的測試, 無法分配太多時間
    可能在產品後期才進來測試, 測試的深度不容易很好
 
 
(5) 組織外測試團隊來幫忙測試
好處
    能夠靠這個賺錢, 測試技能應該是高度專業
    態度上是中立的, 不會因同事情誼不好下手
    可能會對某個特定領域很擅長測試, 例如效能測試, security testing.
壞處
    沒有公司或產品知識, 需要花時間學習
    不是同一公司, 溝通花時間
    價格通常是很昂貴
    通常不會全程參與, 通常是後期才進來, 因此測試的深度不容易很好
 

    文章標籤

    testing

    全站熱搜

    kojenchieh 發表在 痞客邦 留言(0) 人氣()