1.測試初識
我們先來看看測試工作做的是什么,首先根據(jù)產(chǎn)品需求文檔了解整體的邏輯滋恬,然后根據(jù)需求寫明詳細的測試用例聊训,
后通過各種手段(白盒、灰盒恢氯、性能带斑、自動化、黑盒等)去檢測勋拟,基本上也是產(chǎn)品上線的最后幾關勋磕。在這過程中,更重要的是發(fā)現(xiàn)問題敢靡,
提交相關實施人員挂滓。事實而言,這種流程模式只是最基本的啸胧。
2.我對測試的理解
我覺得真正的測試應該分為三部分:
1)根據(jù)文檔或用例測試軟件相關bug赶站,提交給相關人員幔虏;
2)分析問題產(chǎn)生的原因和趨勢,幫助開發(fā)者發(fā)現(xiàn)當前軟件開發(fā)中的缺陷贝椿;
3)會從用戶體驗的角度去思考產(chǎn)品體現(xiàn)的概念想括,提出可行性改進意見。
第一點主要是最基礎性的工作烙博。測試人員首先會根據(jù)需求文檔文檔編寫詳細的測試用例瑟蜈,在這期間往往會提出一些嚴謹或極端的用例,如邊界值等問題渣窜,這些元素有些會在需求文檔中說明踪栋,有些則沒有。雖是細節(jié)性的問題图毕,但往往可能因為其中一點而使得軟件使用變得很差勁夷都。如果我們從整體角度看待,產(chǎn)品做的會偏重于整塊的工作予颤,測試會注重流程和細節(jié)反饋問題囤官。因此好的測試環(huán)節(jié)必然少不了對整塊需求的理解。從整個行業(yè)來看蛤虐,至少一半以上的工作量都在于發(fā)現(xiàn)軟件問題党饮,提交并再次檢驗,保證軟件質量驳庭。
到了第二點刑顺,基本上是一個測試工作的提升環(huán)節(jié)。我們從一個產(chǎn)品的本質上去思考饲常,為什么會測出各種各樣的問題蹲堂,測試往往是對代碼結果檢驗。只是盡可能地發(fā)現(xiàn)錯誤與問題贝淤,畢竟不會存在百分百無漏洞的軟件柒竞。即便是最專業(yè)的測試水準,從大眾的不同角度看來播聪,也存在不同的問題朽基。因此從測試中找出問題的成因會更加重要。因為這往往會帶動一些開發(fā)過程中的效率和質量保證离陶。舉個例子稼虎,程序開發(fā)往往會注重實施的結果,通過不同的方法編寫代碼招刨,達到產(chǎn)品需求的實現(xiàn)霎俩。但從個人意識去判斷,很難發(fā)現(xiàn)代碼自身的問題,很多時候也是因為時間的緊張茸苇。因此測試若能分析一些漏洞產(chǎn)生的原因排苍,自然會對整個流程體系把握更加到位,甚至在很大程度上告訴開發(fā)者的問題学密,第二點其實主要依賴于白盒測試淘衙。
第三點說的是產(chǎn)品結果層,程序開發(fā)實現(xiàn)了效果腻暮,但到了用戶層面可能是另外一種傳遞概念彤守。除了產(chǎn)品人員需要從用戶角度出發(fā),測試往往也會從一線的角度去思考哭靖,畢竟測試從整體角度來看稱作第一用戶也沒有錯具垫。目前來看,整個測試環(huán)境達到這一點的并不是很多试幽,像類似于一些成熟的體系如谷歌等在這一塊做的恰到好處筝蚕。在《谷歌軟件測試之道》中,測試工作從最基礎的環(huán)節(jié)到了最高層的環(huán)節(jié)基本就是用戶體驗測試層铺坞。這也很好理解起宽,測試人員面對開發(fā)者是發(fā)現(xiàn)代碼結果問題,面向用戶則是使用問題的記錄济榨。軟件最終面向的是一線用戶坯沪,用戶所提的問題需要發(fā)現(xiàn)對的點去加以改正。因此以用戶的角度去看待測試會使得軟件測試工作更加順暢擒滑,同時產(chǎn)品也會因為測試的直接進入盡快得到優(yōu)化反饋腐晾。
總之,測試工作不僅僅是提出bug丐一,同時也是對開發(fā)和產(chǎn)品設計改進的重要一步藻糖。
3.測試協(xié)調
測試協(xié)調主要是測試工作在產(chǎn)品、設計钝诚、研發(fā)等不同層面的協(xié)調和完成交付樣本颖御。與產(chǎn)品工作可看作是前后互補榄棵,產(chǎn)品對文檔負責凝颇,協(xié)調各個資源;測試看重開發(fā)結果疹鳄,指出各個環(huán)節(jié)問題拧略。因此除了專業(yè)的規(guī)范性外,充分理解各個環(huán)節(jié)模塊也是有必要的瘪弓。
1)現(xiàn)在常常有一種說法垫蛆,軟件測試往往從開發(fā)中甚至是開發(fā)后才開始介入,這明顯是有問題的。從整體上來說袱饭,一個產(chǎn)品只要各個環(huán)節(jié)充分了解才可能到達策劃方案的效果川无,不僅研發(fā)、設計如此虑乖,測試人員更應該如此去實施懦趋。充分了解需求是最基本的工作。從個體角度看疹味,如果測試人員在中期后介入仅叫,往往很難明確各個模塊的業(yè)務線,對于重點測試的模塊也較難把握糙捺。因此诫咱,測試至少在開發(fā)前就要介入進來,甚至是需求策劃或評審時洪灯。
2)在產(chǎn)品實施中坎缭,測試該怎么樣達到完美的狀態(tài)呢?首先來說签钩,一個產(chǎn)品在開發(fā)后的結果拆分就三種:業(yè)務邏輯幻锁、產(chǎn)品數(shù)據(jù)、視覺效果边臼,分別對應前端哄尔、后端和設計層面。對于前端而言柠并,測試需要判斷業(yè)務邏輯和功能的準確性岭接,如模塊劃分,反饋信息是否按照文檔中去走臼予。如果存在不合理的地方要立即記錄下來鸣戴。數(shù)據(jù)則是后臺返回的數(shù)據(jù),如數(shù)組排序粘拾、字段是否準確窄锅,此時往往通過極限測試發(fā)現(xiàn)很多問題,再次進行記錄缰雇。對于視覺而言入偷,看UI效果圖實現(xiàn)效果一致,是否有對需求改動的地點械哟,有誤的地方也要記錄出來疏之。
3)實際的工作也就兩條線,一是對需求充分理解后暇咆,根據(jù)用例對功能锋爪、設計丙曙、數(shù)據(jù)等層面整理出存在問題的地方,二是通過測試工具記錄相應的問題并進行問題解決后的再次記錄其骄。
4)把握先記錄亏镰,再與產(chǎn)品需求對比,而后統(tǒng)一提交各個人員拯爽。這樣也不會耽誤別人的思路拆挥,如果遇到問題就提肯定是影響效率的。同時在正式測試期間某抓,不能一開始就陷入細節(jié)纸兔,如按鈕顏色、翻譯等問題否副。一定要保證邏輯和功能的完全再去記錄細節(jié)汉矿。從軟件開發(fā)而言,做業(yè)務處理备禀、模塊邏輯關系往往是復雜的洲拇,細節(jié)問題可以隨時改動。
4.如何讓測試工作做的更加主動
可能有很多的同學認為測試工作是一個沒有主動產(chǎn)出成果的工作曲尸,只能在產(chǎn)品周期中的最后一關中起到作用赋续,那我們該如何來改變這一個被動的局面呢,我畫了一個初略的產(chǎn)品測試流程圖另患,我想分為“測試前”纽乱,“測試進行中”,“測試結束后”這三部分來規(guī)劃我們的工作昆箕,從而讓我們測試工作可以更加的積極主動的來推進整個產(chǎn)品開發(fā)運作鸦列。
1)測試前,其實也就是在需求發(fā)布期鹏倘,我們可以積極的參與到需求討論會中薯嗤,以測試的角度來提出對需求的改進建議,其實測試中很多遇到的bug都是需求不合理或描述不清導致纤泵,所以我們應該在早期就要把這些潛伏的問題扼殺在搖籃中
2)測試進行中骆姐,這個時候我們應該及時的更新發(fā)布測試狀態(tài),確定好bug優(yōu)先級捏题,有問題積極和相關人員溝通
3)測試結束后玻褪,其實這個時候我們的測試工作并沒有結束,其實在上文的第二部分我已經(jīng)講到涉馅,這個時候我們要做的工作就是“從用戶體驗的角度去思考產(chǎn)品體現(xiàn)的概念归园,提出可行性改進意見”,用戶體驗型的問題有時候點子雖小稚矿,卻對產(chǎn)品的改進至關重要!
我想從上面三個階段的切入,不被動晤揣,不盲從桥爽,才是一個合格的測試部門。
?5.測試的一些跨界延生
前段時間和一位做測試的小同學聊天昧识,可能也是初生牛犢不怕虎吧钠四,那位小同學壯志激昂的就說“我覺得測試這份工作很簡單啊,就隨便點點就會了啊”跪楞,我記得我剛畢業(yè)那會兒也犯了和這位小同學一樣的毛病缀去,淺嘗輒止。任何一個工作甸祭,如果你永遠只顧著自己的一畝三分地的話缕碎,不去深究,不去擴展池户,那永遠都只能做井底之蛙咏雌。
對于測試工作,我想可以有以下幾條發(fā)展的路線:
1.對測試技術工作本身很感興趣的校焦,精通“白盒赊抖,性能測試,自動化測試寨典,黑盒”中兩門以上的氛雪,那么你可以往測試技術大牛的路線發(fā)展。
2.測試工作中耸成,你有積極的去學習了解 產(chǎn)品注暗,開發(fā),運營 的相關知識墓猎,精通用戶體驗捆昏,可以經(jīng)常從產(chǎn)品層及用戶的角度去考慮,善于把控整個產(chǎn)品開發(fā)節(jié)奏毙沾,那么你有做產(chǎn)品經(jīng)理或者項目經(jīng)理的潛質骗卜,自己可以勇敢的去做一些嘗試,現(xiàn)實中測試的轉做產(chǎn)品經(jīng)理項目經(jīng)理不在少數(shù)左胞。
3.其實第三條路線可以是第二條的提升寇仓,如果是希望從事管理崗位的同學,后期可以往測試經(jīng)理烤宙,技術經(jīng)理的方向發(fā)展遍烦,當然需要做一些針對性的學習訓練。提升自己相應技能水平躺枕。
總的來說服猪,技多不壓身供填,你了解學習的越多,即使目前用不上罢猪,我想總會有用武之地的一天近她,機會總是留給有準備的人!