軟體測試——面試指南,磨刀不誤砍柴工,看完對你絕對有用!

程式設計師小衝發表於2020-09-25

如何進行自我介紹?

面試官你好,我叫***,從事測試工作有3年。以前工作中做過Web端的測試,以及手機APP的測試。熟悉測試的流程、方法、以及常用工具等。在專案中除了功能測試也涉及到一些介面測試、自動化測試以及效能測試等。

1.介面測試主要使用的工具就是POST和Jmeter,也會用Python自己寫介面測試的指令碼。

2.自動化測試主要是做UI自動化測試,使用的工具就是selenium。
3.效能方面主要使用的是Loadrunner工具,針對Web的專案進行併發測試,負載測試等。

4.在APP專案中,使用過簡單的ADB命令,也使用Monkey對APP進行過壓力測試。同時也熟悉Fiddler抓包工具。

我看了我們們公司做的產品以及工作崗位的要求,跟我最近做的專案類似,完全可以勝任這份工作。希望能通過面試成為我們們公司的一員。

介面測試-Jmeter問題?

回答要點:HTTP協議、Postman、Jmeter工具的使用。準備核心的介面描述(如支付介面,請求方法、請求頭、請求引數有哪些)。

l Jmeter引數的方式有哪些?

前置處理器-使用者引數、取樣器-使用者自定義變數、配置元件-CSV資料檔案、通過函式實現。

示例:

根據開發提供的介面文件,首先編寫介面測試用來,然後使用工具進行介面測試。

功能方面:介面引數的組合測試

效能方面:介面的併發測試

安全方面:SQL隱碼攻擊、鑑權測試,修改Cookie

自動化測試-selenium問題?

回答要點:Python、Selenium工具(定位元素)。

示例:

在迴歸測試時對偶現的BUG進行自動化測試,或利用Selenium對UI進行自動化測試。

效能測試-Loadrunner問題?

回答要點:熟悉效能測試流程,場景設計、效能測試指標,效能測試型別(併發測試、壓力測試、負載測試、容量測試等)。

l 效能測試流程:效能指標分析、場景設計、工具選擇、測試資料準備、指令碼開發優化、執行負載測試、分析結果、效能優化、效能測試報告。

l 效能指標:響應時間、TPS、吞吐量、點選率、訪問量、資源。

l 效能場景:1)登入併發測試 2)核心業務併發測試 3)大資料量測試查詢 4)第三方介面 5)混合場景(多業務混合負載測試)。

Loadrunner工具

l 錄製選項:HTML與URL有什麼區別方式

HTML:基於瀏覽器HTML操作錄製內容(錄製不到伺服器返回的動態引數)

HTML-URL:基於瀏覽器URL的請求錄製,類似介面的模式

URL:基於URL錄製所有的請求,包括髮送的請求和伺服器返回,單獨生成函式

l 為什麼引數化?

為了實現資料的唯一性,對多使用者不同資料進行引數化(理論上手動輸入的資料需要做引數化,日期必須做引數化),引數取值設定(一般設定3唯一的-1迭代更新-2資料迴圈)

l 怎麼做關聯?

自動關聯和手動關聯(user-掃描指令碼中的關聯)

手動關聯:判斷哪些引數需要關聯(指令碼比較、熟悉業務後自己判斷)

如:session、訂單號、流水號、ID編號、准考證號、加密等

Nmon監控Linux工具

命令:./nmon -s 1 -c 300 -f -m /hmoe/

-s:每隔1S採集一次

-c:採集了300次

-f:生成檔案後加系統時間

-m:生成檔案儲存在/home/目錄下

示例:

工作以功能為主,所有效能測試也沒有時間設計更多的場景,只設計了以下幾個場景

1.登入併發測試 2.跟投併發測試、壓力測試 3.查詢大資料量測試 4.混合多業務執行負載測試

2.指標:使用者要併發數100(一臺電腦最大200~500併發)

3.響應時間:使用者要求小於3S(2-5-8原則)

4.負載數:5000(使用者提供註冊數5W,按比例10%計算),一臺最大負載5000

如果測試資料大需要新增負載機

效能測試中的經典Bug(程式有死迴圈導致記憶體洩漏、資料庫死鎖、索引造成全表掃描、儲存過程不支援同時寫庫的等)

如何描述APP測試問題?

回答要點:流程都一樣,只是APP的專項測試多,弱網測試、相容性測試、低電量等。

功能測試:以流程為主

效能測試:monkey做壓力測試,Jmeter做介面的效能

相容性:雲測試平臺,土豪公司採購真機進行測試,

弱網測試:fiddle模擬

使用者體驗測試:後期在公司內部進行使用者體驗測試

Adb Monkey

Monkey主要測試手機APP的存在無響應、當機、崩潰、閃退等。一般都是記憶體問題造成。Monkey使用測試步驟:

先利用工具檢視手機記憶體並記錄大小

執行Monkey命令(可以指定一個包或指定一個事件)

再利用工具檢視手機記憶體,如果遞增記憶體洩漏

B/S與C/S的區別?

1.C/S是建立在區域網基礎上的,而B/S是建立在廣域網基礎上的

2.C/S的因為在區域網,所以安全性比B/S強

3.C/S對客戶端需要相對高,所以開發成本比B/S要高。

4.C/S需要有專門的伺服器提供資料互動,而B/S是通過Web server來進行互動

5.C/S架構可以滿足使用者的個性化需求,且穩定性比B/S要高。

6.C/S架構的支援任何通訊協議,而B/S必須是HTTP協議。

HTTP與HTTPS的區別?

1.它們使用埠不同HTTP是80,HTTPS是443

2.它們在TCP/IP的位置不同HTTP屬於應用層,HTTPS是在傳輸層-應用層之間

3.HTTPS是HTTP的加密版,HTTP的資料是明文傳輸,HTTPS資料加密處理

4.HTTP的速度相對HTTPS要快很多

5.HTTPS需要購買證照,對伺服器配置的要求也高,需要固定IP

GET與POST的區別?

1.GET請求是相當於查詢,可以帶引數也可以不帶引數。而POST請求xiangdy 建立資料,必須帶引數。

2.GET請求中的引數是URL的一部分,引數資料型別只允許ASCII字元。而POST請求的引數對資料型別沒有限制。

3.GET請求的資料是對所有人可見的,相比POST請求,安全性比較差。

4.GET可以被瀏覽器快取,而POST請求不會被快取,也不會存到伺服器的日誌中。

5.GET請求的URL最大長度是由限制的,基於不同瀏覽器限制不同,IE為2048,谷歌為8182,火狐為65536等。

TCP與UDP的區別?

1.TCP是一種端對端的、面向連線的、可靠的、基於位元組流的傳輸層協議。每一次TCP在連線建立時需要經過三次握手。

2.UDP是一種一對一(一對多的)、無連線的、不可靠的、基於資料包的傳輸層協議。傳輸方式與IP類似,但是UDP協議實現了埠。

Web端與App的區別?

1.Web端是基於瀏覽器的B/S架構,而APP專案主要是基於手機端的C/S架構。

2.Web伺服器更新後,客戶自動更新,而APP服務端更新後,客戶端可以選擇更新。

3.在APP測試中,專項測試比較多,比如弱網測試,低電量測試等。

4.Web端不支援離線流量,APP可以支援離線瀏覽,待有網路時再同步更新資料。

5.Web端效能主要關注伺服器的壓力,而APP主要關注手機端的。

6.Web端的相容性通常只關注瀏覽器,而APP需要考慮不同裝置,系統、解析度等

測試工具也不同

1.App端與小程式的區別?

2.APP需要下載安卓,而小程式不需要下載

3.APP是屬於C/S架構,小程式是H5頁面(渲染)

4.許可權問題,小程式需要微信平臺稽核,授權

面試中發散思維的問題?

回答要點:方法一:結合質量特性進行描述;方法二:從使用者角度發散思維進行描述。

問題描述:王者榮耀上線新英雄你該怎麼測?

一、英雄角度考慮:

1.英雄技能釋放是否需要MP?需要多少MP?(特殊英雄需要HP)

2.英雄技能釋放後恢復的時間多久?(特殊英雄技能有縮短時間)

3.英雄技能的傷害是多少?範圍是多少?有沒有持續時間?時間是多久?

4.英雄技能的傷害物件是單體?全體(隊友、敵人、小兵)?

5.如果傷害全體的,沒打中一個會不會減少傷害?

6.技能是否可以被格擋(隊友、敵人、小兵、場景中障礙物)

7.英雄技能釋放後的特效屬性,比如眩暈、沉默、冰凍、減速等

8.特效屬性:眩暈、沉默、冰凍、減速等的有效時間多少?

9.特效屬性:眩暈、沉默、冰凍、減速等的時間釋放會疊加?

10.特效屬性:眩暈、沉默、冰凍、減速等的特效(畫面)?

11.特效屬性是否會疊加?比如眩暈和沉默。

12.英雄技能的聯動,組合釋放的效果,以及畫面的特效?

二、玩家角度考慮:

1.英雄操作難易程度?英雄的型別?英雄是否有皮膚?

2.如何獲取英雄和英雄皮膚?點卷購買?金幣購買?任務獲取?活動獲取?碎片獲取?抽獎獲取?贈送獲取?

問題描述:給你一個紙杯該怎麼進行測試,說說你的測試思路?

1.功能方面:是否可以裝水或其它液體(茶水、飲料、酒、硫酸等)?溫度冷熱?是否會漏?是否方便倒入?倒出?可以放在哪裡?

2.安全方面:紙杯的材質是什麼?是否有毒?厚度多少?重量多重?

3.易用方面:杯子的設計紙杯的大小?容量?是否吸引?是否有圖案?杯口設計?是否方便攜帶?熱水是否會燙?杯麵是否防滑?

4.可靠性方面:放久是否會漏?是否會變形?變形後是否可以恢復?放冰箱後會怎麼樣?不同的高度跌落怎樣?

相關文章