測試人力不足時,測試技術層面有什麼方法可以提高測試效率?

今天參加面試,面試官拋出,1:20測試開發比,當測試人力不足,開發一直要求測試情況下,怎麼協調測試資源,特別是服務端的測試資源?各位大神怎麼看?小弟我對於這種問題,引入自動化,灰度測試


1、排好計劃,如果是多個項目並行的話,那麼一定要求產品經理或者版本經理排好優先順序,並且開發測試一起評估對應周期

2、開發做好預測試,最低限度,保證基本功能與修改點的驗證通過,無問題。開發那麼多人,不用白不用

3、提前做好測試設計,包括需求分析與測試分析,提前明確所有項目的測試環境,以及可自動化性,如果可以並行的盡量並行

4、預估好自己的測試能力基線,簡單說就是平均一天執行多少用例,然後計算測試項目需要的時間

5、這個面試題本身就是極端的情況,所以面試官想要了解的應該還是你的應變能力和處理問題的思路,所以如果到最後,該做的都做了還是無法解決的話,記住,有困難找領導,而且越早找越好,當你把所有的條件評估完後,有風險一定要及時知會給領導,讓領導知道風險點在哪裡,晚一天,風險就大一天,不要等到最後快交付的時候,才給領導說搞不定。

7、如果想要入行測試行業,可以參考一下https://zhuanlan.zhihu.com/p/25294439


瀉藥。

我並不贊同該問題下的一些回復。不要老想著離開公司,你從一個坑走了,去了另外一個地方。你對於你現在所在的環境是熟悉的,你知道是個坑,但你去一個新的地方,你是無法判斷是不是坑的。

另外來看看題主說的。

1:20測試開發比,當測試人力不足,開發一直要求測試情況下,怎麼協調測試資源,特別是服務端的測試資源?

當然現在的現狀大多沒有1:20那麼可怕,但也差不多,都是因為google扯淡了1:10導致的,google內部的員工說過只是部分的團隊,不是全部1:10。可悲。

我覺得這個問題首先是有問題的。開發一直要求測試,開發沒有權利要求。同樣的,如果開發硬性要求,那麼開發至少自己做好這樣幾件事情。

  • code reivew
  • 項目開始之前的架構review
  • 開發自測通過
  • 必須有完善的UT

如果這些沒有,那麼開發就不用談測試了。

那麼接著來回到正題。如果測試人力不足的情況下(其實現在大部分公司測試人力都是不足的),能有什麼方式提高測試效率。這裡我需要糾正一點,不是提升測試效率,而是提升產品質量。單純逼迫測試去提升測試效率是沒有意義的!!!!!!!!!

從產品質量來講就有很多點了,我這裡隨便舉一些例子:

  • 項目前期的評估,設計,review
  • 開發的文檔,代碼規範,自測,單元測試等等
  • 分層自動化,這裡不詳細說了
  • 持續集成
  • bug bash
  • A B test
  • 內部灰度,外部灰度
  • hotfix機制
  • 等等

最後說一句所有隻提升測試技術,測試效率的都是耍流氓!!!!!!!


這個是一個測試時間前移的問題。測試項檢查比如是有n項,但只能線性,通過技術可以讓線性變成並行的。

首先說下落地 只有前或者後端如何開始測試(前後端沒通的情況下,只有一個端)。。

不抽離,後端的介面測試確保後端協議完整和條件滿足。。

不抽離,後端-&>資料庫的數據構造。--確保後端-&>資料庫是打通的,比如後端需要實現1個n個人後開啟1個條件,n個人的數據通過數據插入。

動態的,前端需要依賴後端的地方用mock等方式。

完全抽離出來寫一套介面測試。。這些可以不自動化,但可以通過這種方式來分層和提前測試。

bug質量:(提高測試技巧就不說了)

通過bug數量來管理。除了提交問題,更多的是如何管理問題讓重要問題出現在開發者那邊(如何推送問題)

bug數量實際項目中並不是占最重要的,關鍵是修復率達到多少,人少的情況下堆積問題是沒法解決的。

發布流程上:

持續集成不變主題。

自動化不自動化是後話,一點點來吧。


前面幾位都搭的很好了,我說點不重要的地方

1,對於這道題而言,我個人的思路最好的解決方案是: 擴充測試團隊。

2,出現了1:20這種情況的團隊還是別去了

3,問這種情況的領導是sb


謝謝邀請了,面試題有面試題的答法,也許面試官真的是想看看你的應變能力,這個時候你可以盡量往「有可能」解決這個問題的套路上答,就像上面 哇咔咔 那樣回答。

如果這個問題是你面試公司的現實問題,那麼:

儘早走人是上策。

儘早走人是上策。

儘早走人是上策。

一般來說,在有完整自動化資產,並且開發人員有相對完備的單元測試的情況下,互聯網公司的1個測試大致能支持4-5個開發的工作。1個測試對20個開發,別說測試新功能了,光維護自動化都忙不過來!!!

另外,別指望開發能給你啥幫助 !!!別說你不直接管理他們,就算是他們的主管也不一定能說服他們為測試多做什麼,何況你一個外來的新人。所以答題歸答題,自己可別真這樣想,否則到時候就傻逼了。

覺得有道理點個讚唄~

介面測試?

如何保證介面測試的覆蓋率?

做介面測試的流程一般是怎麼樣的?

介面測試的數據如何回歸?

如何寫出高效的軟體測試用例?

軟體測試工程師,2年半工作經驗,第一次跳槽,如何快速融入團隊?

做測試,寫了一周的測試 用例,感覺自己已經是個文員了,怎麼辦?

該怎麼樣才能讓所有測試人員迅速學會自動化測試呢?

測試人力不足時,測試技術層面有什麼方法可以提高測試效率?

怎麼判斷哪些功能能實現自動化?

做了一年的軟體功能測試,想轉自動化測試。目前在看了一些Python資料,感覺無從下手,求指導?

http://weixin.qq.com/r/gkO1rd3EeIAHrZnO9xaQ (二維碼自動識別)

測試之道網-軟體測試教程


1:20的題目出來,說明面試官的定位已經不是定位在「測試」了吧,只是用了測試崗的名字招聘。推測對方的出發點有幾個

1.提供滿足測試的平台,讓開發自測為重點。

2.如何控制住質量,把非常稀缺的測試資源放到最核心的地方,如何抽查能保證樣本是均衡分布。

3.一個測試崗位還可以做什麼?有那些應該是重點投入的地方。

4.可能會關注到擴充人員,應該投入什麼資源,有沒有成功的案例和經驗。

5.接觸過1比7的測試開發比,實際的工作偏重有幾個,優化發布系統和流程,抽取核心監控報警,review需求和case,系統和業務精通,推動故障處理和改進,驅動開發優化系統,質量文化培訓。

google測試之道,裡面說的理念可以參考,分層,平台服務化,專業化,探索性,氛圍和文化輸出。


1.招人

2.走人

3.降低測試質量(二八定律,此處可以花20%的時間去測出80%的bug,另外20%的bug不管),然後因為線上事故被開除

4.採用上面幾位答主的答案並且大量加班,直至猝死

最後,懷疑問出這個問題的面試官什麼心態


這不就是我么,差點以為題主面試的我們公司,不過,仔細看發現題主面的不是我們公司。我們暫時的做法是,拉兩個開發過來做測試了。。。。當然,這樣的測試開發比例還是很低,時間還是不夠,這一年來說多了都是淚,容我先吐槽下。


使用合適的工具對提升效率非常有幫助,合適的工具幫你節約時間從而能投入更多在自身業務邏輯上。


咋就不能直白的告訴你領導一文價錢一文貨呢?不想掏錢在測試上就別指望高的質量。天底下哪那麼多又想馬兒跑得快又不給馬兒吃草的好事兒。


作為在華為做過四年測試的過來人,分享一下自己的經驗吧

我是負責基站傳輸方面的測試,剛來的時候做手工測試,這個領域組織結構很完善,TSE、TFO、TE分工很明確,所以當時雖然人員較少,但是還勉強能夠趕上項目進度,後來也在同步做自動化平台的構建,能夠覆蓋基本的功能測試場景,後來TSE和TFO都相繼離職,我就負責了所有測試設計和測試執行工作,在項目周期越來越短、需求交付越來越多的情況下,我的策略是這樣的:

1、做好測試分工,對於其他部門能夠覆蓋測試的特性,由兄弟部門主測,我們只做驗收測試

2、加大自動化的投入,保證版本基本功能不出問題

3、測試設計和測試執行人力分開,專人專事,提高效率

4、減少非測試環節和人力的損耗,比如環境搭建,流程溝通等,讓領導在這方面開綠燈

5、適度的灰度測試,基於缺陷分析和需求評估,對於容易出問題的場景充分測試(只在時間不夠的情況下考慮,畢竟對於測試覆蓋全面的角度來說,這個是測試的紅線)

當然,上面的這些都是屬於亡羊補牢的策略,真正實施起來加班是少不了的,所以一個完善的測試團隊是非常重要的,可惜我到最後這種狀況都沒有改善,只好選擇走人了···

希望對你有幫助^_^


做了六年測試,最近兩年考慮的最多的難題就是人力不足如何合理安排資源和測試計劃,簡單說一下也順便給自己總結一下。

1.首先預估該項測試要求的測試總量(為什麼是要求的後面會說)。測試總量包括編寫測試用例和執行測試用例,假如用例是繼承的就能省去很大部分編寫用例的人力和時間。

2.根據測試的時間表預估每天大概需要多少人。假如你只有10個人,卻要求每天20個人持續10天,那就相當於這10個人需要連續工作10天每天工作16小時來完成。

3.在以上兩個數據基礎上,考慮:1是否有可能加人,2是否有可能把測試deadline後推,3.是否可以適當地減少測試總量,4.如果以上都不行,那就沒辦法了,老老實實加班吧,但是因為人員缺少引起的加班,公司肯定要有加班費或者調休~


TDD dev自己應該基於測試樁進行開發

Automation 現在vs已經很先進了 各種自動化


功能驗證提供自動化框架,測試前移推動開發者測試,後端測試自身專註DFX質量


1 要求並參與重要業務代碼的UT

2 務必建立最簡潔的api測試集

3 可能的話搭一套或幾套jinkens測試CI

4 合理說明目標質量需要的人力。

5 練好技術,走人。


首先,產品質量出問題75%的責任是管理層!

在資源嚴重不足的情況下有效提高產品質量並不是只測試工程師的事情,研發也同樣需要做一些事情。

研發角度:

1. 從需求到設計都需要review

2. Function spec絕對不能少,且需要嚴格review

3. 強制單元測試

4. 合理評估開發時間

測試角度:

1. 詳細的測試模塊列表,並根據客戶使用度和模塊基礎性定義優先順序,併合理評估每個模塊測試工作量。

2. 根據上述列表制定測試計劃,明確測試範圍和測試時間,將有限資源投入到高優先順序模塊測試中,中優先順序的模塊只需要模擬客戶場景測試一兩個case即可,低優先順序的不測。

3. 測試計劃需要取得管理層同意。

4. 非常有必要通過測試文檔和測試結果review監督測試質量和效率。

5. 督促研發及時修復影響測試的問題。

溝通方面:

1. 一定要明白研發並不是測試的領導,他們可以提測試需求,但不能指揮測試。

2. 可以就功能細節和bug跟研發直接溝通,其他的盡量進行郵件和會議的正式溝通,以防止被研發過分引導。

3. 提高會議質量與效率。


減少代碼量

減少代碼量

減少代碼量


1:20本來就是不科學的,所以面試官應該還是為了看看求職者的應變能力。


個人理解:

面試官出題的目的是在此種情況下(測試開發比1:20),你會建立怎樣的測試體系,來保證產品質量,而不是單純的問你採用什麼方式或工具。

有幾個要點:

1. 測試工作並不是只有測試人員才做,這種情況下,開發除了完成代碼還需要承擔保證產品質量的職責。自動化的單元、集成、介面測試是一種方式。

2. 在此類公司測試人員是稀缺資源,應該投入到價值最大的工作上,比如系統級的性能和功能驗證、產品的測試指導等

3. 對於資源投入少的小項目可以完全不用測試人員投入,但是在產品開發過程中測試人員可以提供測試指導,或在產品發布前對其進行快速測試評判產品質量(當然也可以不投入)

4. 對於大項目,開發只能保證一小部分的測試,綜合性的驗證還是需要專職測試人員來做

5. 對於特定領域的測試任務,比如網站的性能,涉及到從前端到後端的各個路徑和功能,開發人員是做不了的,只能具有豐富經驗的測試人員進行。

6. 以上對於開發和測試都有一定的技術能力要求,需要進行有針對性的引導。


首先,確定測試範圍,確定優先順序。先搞定必須驗證的和重要的。

如果這些範圍內的工作量測試團隊還是吃不下的話,向高層報風險,儘快協調人力投入。如果你的項目很重要的話,講清楚風險和人力不能補充的後果,使會得到資源的。

其次,分析測試過程中影響效率的事情以及耗時長的事情。通過工具化提升效率,將耗時的事情單獨安排測試環境或在晚上自動化執行,充分利用24小時。

再有,在轉測試前和開發發人員交流,督促開發人員做自驗全面。甚至測試人員可以在開發過程中進行測試。

測試人員的價值就在此,在有限的時間和資源下,保證充分的測試。


質量保證很大程度上並不在質檢那一個環節,大多數在流程過程規範,這也就是為什麼最近好多人鼓吹測試已死。所謂自動化,平台化,服務化等僅僅是一種手段,核心還是依託這些手段去建立約束,保證流程規範.另外自動化本身最大的作用是通過回歸提高效率,對質量幫助不太大,而且成本過高,你本來人就少,再搞自動化幾乎是找死,個人看法,不喜勿噴


1、確定開發周期和提交測試版本的周期和工作排期

2、制定開發自測用例,需要提交的版本內容都是經過開發自測通過的內容

3、整理重複可以自動化的工作內容出來,需求開發一定的工具


考慮了一下:

這種情況,只能提高開發提交代碼的質量。要求開發完成自測,使用工具檢驗開發的自動化測試覆蓋率。

---------------------------------------------------------------------------------

感謝各位的回答!

我應該從項目角度考慮


推薦閱讀:

性能測試是不是只要學習LR就可以了,還需要學習其他什麼知識?
在校生想成為軟體測試工程師自學需要學什麼?
嵌入式系統如何進行測試?
如何跨平台使用自動化測試?
在「Google在手,答案都有的」情況下,軟體行業研發人員的技術和經驗價值體現在什麼地方?

TAG:測試 | 軟體測試 | 自動化測試 |