1. 程式人生 > 其它 >2020面試題總結

2020面試題總結

技術標籤:面試總結

1.app非功能測試考慮哪些方面?

1.相容性測試(確保APP在各種終端裝置、各種作業系統、網路情況下、螢幕解析度下均可正常執行)
2.效能測試(流量測試、弱網測試、中斷測試、耗電測試、壓力測試、負載測試)
3.低資源測試{(當系統在重要資源(記憶體、硬碟空間或其他系統定義的資源)降低或完全沒有的情況下會出現的狀況)}

2.執行緒和程序的區別

什麼是執行緒?
執行緒是程式執行時的最小單位,它是程序的一個執行流,是CPU排程和分派的基本單位,一個程序可以由很多個執行緒組成,執行緒間共享程序的所有資源,每個執行緒有自己的堆疊和區域性變數。執行緒由CPU獨立排程執行,在多CPU環境下就允許多個執行緒同時執行。同樣多執行緒也可以實現併發操作,每個請求分配一個執行緒來處理。
什麼是程序?
程序是資源(CPU、記憶體等)分配的基本單位,它是程式執行時的一個例項。程式執行時系統就會建立一個程序,併為它分配資源,然後把該程序放入程序就緒佇列,程序排程器選中它的時候就會為它分配CPU時間,程式開始真正執行。
區別在哪裡?
1.程序是資源分配的最小單位,執行緒是程式執行的最小單位。

2.執行緒是一種輕量級的程序,與程序相比,執行緒給作業系統帶來側建立、維護、和管理的負擔要輕,意味著執行緒的代價或開銷比較小。

3.執行緒之間的通訊更方便,同一程序下的執行緒共享全域性變數、靜態變數等資料,而程序之間的通訊需要以通訊的方式(IPC)進行。

4.但是多程序程式更健壯,多執行緒程式只要有一個執行緒死掉,整個程序也死掉了,而一個程序死掉並不會對另外一個程序造成影響,因為程序有自己獨立的地址空間。

5.執行緒沒有地址空間,執行緒包含在程序的地址空間中。

6.子程序不對任何其他子程序施加控制,程序的執行緒可以對同一程序的其它執行緒施加控制。子程序不能對父程序施加控制,程序中所有執行緒都可以對主執行緒施加控制。
共同點在哪裡?
程序和執行緒都有ID/暫存器組、狀態和優先權、資訊塊,建立後都可更改自己的屬性,都可與父程序共享資源、都不能直接訪問其他無關程序或執行緒的資源

3.get和post請求的區別

GET請求和POST請求的區別:
    1、GET使用URL或Cookie傳參。而POST將資料放在BODY中。
    2、GET的URL會有長度上的限制,則POST的資料則可以非常大。
    3、POST比GET安全,因為資料在位址列上不可見。
    4、一般get請求用來獲取資料,post請求用來發送資料。

4.web和app測試的區別

1.web專案,一般都是b/s架構,基於瀏覽器的,而app則是c/s的,必須要有客戶端。
2.web測試只要更新了伺服器端,客戶端就會同步會更新。app端是不能夠保證完全一致的,除非使用者更新客戶端。
3.效能方面,web頁面可能只會關注響應時間,而app則還需要關心流量、電量、CPU、GPU、Memory這些
4.相容方面,web是基於瀏覽器的,所以更傾向於瀏覽器和電腦硬體,電腦系統的方向的相容,不過一般還是以瀏覽器的為主。app的測試不僅要看解析度,螢幕尺寸,還要看裝置系統。系統總的來說也就分為Android和iOS
5.app是客戶端的,則必須測試安裝、更新、解除安裝。web測試是基於瀏覽器的所以不必考慮這些。
6.app測試的時候還要注意手勢,橫豎屏切換,多點觸控,事件觸發區域等測試。

5.b/s與c/s架構的區別

1.b/s:客戶端只需要安裝瀏覽器,瀏覽器通過Web伺服器與資料庫互動。
2.C / S也稱為客戶端/伺服器,客戶端需要安裝專用的客戶端軟體。伺服器通常使用高效能PC,工作站或小型計算機,並使用大型資料bai庫系統,如:sql server

6.常用的adb命令

執行monkey測試adb shell monkey 100
安裝adb install xxx.apk
覆蓋安裝adb install -r xxx.apk
解除安裝安裝adb uninstall com.zhy.app
檢視手機端所有包adb shell pm list packages
輸入adb shell input text "insert%stext%shere"
檢視日誌adb logcat

7.單元測試、整合測試、系統測試的側重點是什麼?

1.單元測試的重點是系統的模組,包括子程式的正確性驗證等
2.整合測試的重點是模組間的銜接以及引數的傳遞等
3.系統測試的重點是整個系統的執行以及與其他軟體的相容性

5.壓力測試與負載測試的區別?

負載測試:在一定的工bai作負荷下,給系統造成的負荷及系統響應的時間。
壓力測試:在一定的負荷條件下,長時間連續執行系統給系統性能造成的影響。
負載測試(Load Test):負載測試是一種效能測試,指資料在超負荷環境中執行,程式是否能夠承擔。
壓力測試(Stress Test): 壓力測試是一種效能測試,他在系統資源特別低的情況下軟體系統執行情況,目的是找到系統在哪裡失效以及如何失效的地方。包括:
短時間的極端負載測試
在過量使用者下的負載測試
連續執行所有能做的操作
效能測試是動力,負載測試載重,壓力測試強度.