1. 程式人生 > >【水杯測試】——面試會遇到的問題之一,轉載自“labs”

【水杯測試】——面試會遇到的問題之一,轉載自“labs”

在軟體測試的面試中,經常會碰到類似的問題,比如:如何測試一個杯子,或者如何測試一隻筆。要求你設計20個以上的test case(測試用例).這類的面試題目,是考察面試者是否熟悉各種軟體測試方法,設計test case的能力, 以及testsense。

首先應該反問一下HR,大概是個什麼樣的杯子

回答這類問題的思路, 應該從軟體測試的各種不同方法來聯想,具體如下:

1、功能測試(Function test)

· 能否裝水;

· 除了裝水, 能否裝其他液體。比如可樂,酒精;

· 能裝多少ML的水;

· 杯子是否有刻度表;

· 杯子能否泡茶,泡咖啡;

· 杯子是否能放冰箱,做冰塊;

· 杯子的材質是什麼(玻璃,塑料做的)。

2、介面測試(UI Test)

· 外觀好不好看;

· 什麼顏色;

· 杯子的形狀是怎麼樣的;

· 杯子的重量是多少;

· 杯子是否有異味;

· 杯子的圖案是否合理。

3、效能測試(performance test)

· 能否裝100度的開水 (泡茶);

· 能否裝0度冰水;

· 裝滿水,放幾天後,是否會漏水;

· 杯子內壁上的塗料是否容易脫落;

· 杯子上的顏色是否容易褪色或者脫落。

4、安全性測試(Securitytest)

· 製作杯子的材料,是否有毒;

· 放微波爐裡轉的時候,是否會爆炸,或者杯子是否會熔化;

· 從桌子上掉到水泥地上是否會摔碎;

· 杯子是否容易長細菌;

· 杯子是否有缺口,會劃壞嘴;

· 杯子內壁上的材料,是否會溶解到水中;

· 杯子破碎後,是否會對使用者造成傷害。

5、可用性測試(Usability Test)

· 杯子是否容易燙手;

· 杯子是否好端,好拿;

· 杯子的水是否容易喝到;

· 杯子是否有防滑措施。

看,一不小心就想出了多個test case。下次面試碰到“如何測試一臺自動售貨機” 這樣的問題,按照相同的思路,也能容易的回答出來。

一種:
  測試
專案:杯子
  需求測試:檢視杯子使用說明書(如果有的話)
  介面測試: 檢視杯子外觀
  功能度:用水杯裝水看漏不漏;水能不能被喝到
  安全性:杯子有沒有毒或細菌,檢查水杯被破壞後,是否會造成使用者傷害
  可靠性:杯子從不同高度落下的損壞程度
  可移植性:杯子再不同的地方、溫度等環境下是否都可以正常使用
  相容性:杯子是否能夠容納果汁、白水、酒精、汽油等
  易用性:杯子是否燙手、是否有防滑措施、是否方便飲用

  錯誤測試:裝載高密度固體
  破壞測試:檢查水杯最大抗擠壓和拉扯承受力
  使用者文件:使用手冊是否對杯子的用法、限制、使用條件等有詳細描述
  疲勞測試:將杯子盛上水(案例一)放24小時檢查洩漏時間和情況;盛上汽油(案例二)放24小時檢查洩漏時間和情況等
  壓力測試:用根針並在針上面不斷加重量,看壓強多大時會穿透
  跌落測試: 杯子加包裝(有填充物),在多高的情況摔下不破損
  震動測試: 杯子加包裝(有填充物),六面震動,檢查產品是否能應對惡劣的鐵路\公路\航空運輸
  測試資料:測試資料具體編寫此處略(最討厭寫測試資料了)。其中應用到:場景法、等價類劃分法、因果圖法、錯誤推測法、邊界值法等方法
  期望輸出:
  該期望輸出需查閱國標、行標以及使用使用者的需求

另一種:
  總體來說從以下幾個方面去考慮
  功能性、效能性、易用性、可操作性、穩定性方面進行測試
  功能性方面的測試,主要是考慮這個水杯是否能盛水,能盛多少水,能否盛熱水,盛熱水又能盛多少
  效能性方面,盛冷水和熱水時分別盛多少水杯能夠承受
  易用性方面,水杯易用手拿或端著
  可操作性,也可以說和易用性相似,當盛冰水時感覺不到很凍,熱水時感覺不到很燙,或者也可以歸於功能測試
  穩定性測試,水杯一直盛著水,是否長時間之後會漏水
  測試驅動開發—

  水杯類:父類(杯子)
  屬性,如材料、形狀、容量等
  方法,如盛水等
  水杯可以裝泥土當花盆用,要提供花盆的介面
  水杯的子類:如一次性杯子等等
  重寫或新增屬性、方法
  容錯:所裝物體判斷(物體的類別、物體的屬性)
  執行方法的前提判斷(某些屬性已經復值,有托盤則執行端的方法,有把手則執行拿的方法;或根據溫度)

操作時注意,某個靜態欄位是否超出數值範圍
  試杯子
  測試專案:杯子
  需求測試:檢視杯子使用說明書
  介面測試:檢視杯子外觀
  功能度:用水杯裝水看漏不漏;水能不能被喝到
  安全性:杯子有沒有毒或細菌
  可靠性:杯子從不同高度落下的損壞程度
  可移植性:杯子再不同的地方、溫度等環境下是否都可以正常使用
  相容性:杯子是否能夠容納果汁、白水、酒精、汽油等
  易用性:杯子是否燙手、是否有防滑措施、是否方便飲用
  使用者文件:使用手冊是否對杯子的用法、限制、使用條件等有詳細描述
  疲勞測試:將杯子盛上水(案例一)放24小時檢查洩漏時間和情況;盛上汽油(案例二)放24小時檢查洩漏時間和情況等
  壓力測試:用根針並在針上面不斷加重量,看壓強多大時會穿透
  跌落測試: 杯子加包裝(有填充物),在多高的情況摔下不破損
  震動測試: 杯子加包裝(有填充物),六面震動,檢查產品是否能應對惡劣的鐵路\公路\航空運輸
  測試資料:測試資料具體編寫此處略(最討厭寫測試資料了)。其中應用到:場景法、等價類劃分法、因果圖法、錯誤推測法、邊界值法等方法
  期望輸出:
  該期望輸出需查閱國標、行標以及使用使用者的需求

  一、GUI測試:
  1 看其形狀、大小設計是否適合人方便拿起;
  2 外觀是否吸引人(廣告嘛),賞心悅目;
  3 帶廣告的圖案沾水後是否掉色、模糊。

  二、功能、壓力測試:
  A 考量其裝載能力:
  在杯子內分別裝入少量的、半杯的、滿杯的:
  1 熱水;
  2 冷水;
  3 冰水;
  4 咖啡;
  看其裝載量和裝載時間以及紙杯拿在手中的硬度是否達到設計標準
  B 裝入熱水後,紙杯是否有異味。

  三、24*7測試:
  裝入液體後記錄其多久以後漏水。