第2章 第2節 軟件測試基礎知識(二)

● 請你說一說測試用例的邊界

參考回答:

邊界值分析法就是對輸入或輸出的邊界值進行測試的一種黑盒測試方法。通常邊界值分析法是作爲對等價類劃分法的補充,這種情況下,其測試用例來自等價類的邊界。

常見的邊界值

1)對16-bit 的整數而言 32767 和 -32768 是邊界

2)屏幕上光標在最左上、最右下位置

3)報表的第一行和最後一行

4)數組元素的第一個和最後一個

5)循環的第 0 次、第 1 次和倒數第 2 次、最後一次

● 請你說一下軟件質量的六個特徵

參考回答:

按照軟件質量國家標準GB-T8566--2001G,軟件質量可以用下列特徵來評價:

a.功能特徵:與一組功能及其指定性質有關的一組屬性,這裏的功能是滿足明確或隱含的需求的那些功能。

b.可靠特徵:在規定的一段時間和條件下,與軟件維持其性能水平的能力有關的一組屬性。

c.易用特徵:由一組規定或潛在的用戶爲使用軟件所需作的努力和所作的評價有關的一組屬性。

d.效率特徵:與在規定條件下軟件的性能水平與所使用資源量之間關係有關的一組屬性。

e.可維護特徵:與進行指定的修改所需的努力有關的一組屬性。

f.可移植特徵:與軟件從一個環境轉移到另一個環境的能力有關的一組屬性。

● 請你說一下設計測試用例的方法

參考回答:

黑盒測試:

1.等價類劃分

等價類劃分是將系統的輸入域劃分爲若干部分,然後從每個部分選取少量代表性數據進行測試。等價類可以劃分爲有效等價類和無效等價類,設計測試用例的時候要考慮這兩種等價類。

2.邊界值分析法

邊界值分析法是對等價類劃分的一種補充,因爲大多數錯誤都在輸入輸出的邊界上。邊界值分析就是假定大多數錯誤出現在輸入條件的邊界上,如果邊界附件取值不會導致程序出錯,那麼其他取值出錯的可能性也就很小。

邊界值分析法是通過優先選擇不同等價類間的邊界值覆蓋有效等價類和無效等價類來更有效的進行測試,因此該方法要和等價類劃分法結合使用。

3.正交試驗法

正交是從大量的試驗點中挑選出適量的、有代表性的點。正交試驗設計是研究多因素多水平的一種設計方法,他是一種基於正交表的高效率、快速、經濟的試驗設計方法。

4.狀態遷移法

狀態遷移法是對一個狀態在給定的條件內能夠產生需要的狀態變化,有沒有出現不可達的狀態和非法的狀態,狀態遷移法是設計足夠的用例達到對系統狀態的覆蓋、狀態、條件組合、狀態遷移路徑的覆蓋。

5.流程分析法

流程分析法主要針對測試場景類型屬於流程測試場景的測試項下的測試子項進行設計,這是從白盒測試中路徑覆蓋分析法借鑑過來的一種很重要的方法。

6.輸入域測試法

輸入域測試法是針對輸入會有各種各樣的輸入值的一個測試,他主要考慮 極端測試、中間範圍測試,特殊值測試 。

7.輸出域分析法

輸出域分析法是對輸出域進行等價類和邊界值分析,確定是要覆蓋的輸出域樣點,反推得到應該輸入的輸入值,從而構造出測試用例,他的目的是爲了達到輸出域的等價類和邊界值覆蓋。

8.判定表分析法

判定表是分析和表達多種輸入條件下系統執行不同動作的工具,他可以把複雜的邏輯關係和多種條件組合的情況表達的即具體又明確;

9.因果圖法

因果圖是用於描述系統輸入輸出之間的因果關係、約束關係。因果圖的繪製過程是對被測系統的外部特徵的建模過程,根據輸入輸出間的因果圖可以得到判定表,從而規劃出測試用例。

10.錯誤猜測法

錯誤猜測法主要是針對系統對於錯誤操作時對於操作的處理法的猜測法,從而設計測試用例

11.異常分析法

異常分析法是針對系統有可能存在的異常操作,軟硬件缺陷引起的故障進行分析,分析發生錯誤時系統對於錯誤的處理能力和恢復能力依此設計測試用例。

白盒測試:

白盒測試也稱爲結構測試或邏輯驅動測試,是針對被測單元內部是如何進行工作的測試。它根據程序的控制結構設計測試用例,主要用於軟件或程序驗證。白盒測試法檢查程序內部邏輯結構,對所有的邏輯路徑進行測試,是一種窮舉路徑的測試方法,但即使每條路徑都測試過了,但仍然有可能存在錯誤。因爲:窮舉路徑測試無法檢查出程序本身是否違反了設計規範,即程序是否是一個錯誤的程序;窮舉路徑測試不可能檢查出程序因爲遺漏路徑而出錯;窮舉路徑測試發現不了一些與數據相關的錯誤。

白盒測試需要遵循的原則有:1. 保證一個模塊中的所有獨立路徑至少被測試一次;2. 所有邏輯值均需要測試真(true)和假(false);兩種情況;3. 檢查程序的內部數據結構,保證其結構的有效性;4. 在上下邊界及可操作範圍內運行所有循環。

常用白盒測試方法:

靜態測試:不用運行程序的測試,包括代碼檢查、靜態結構分析、代碼質量度量、文檔測試等等,它可以由人工進行,充分發揮人的邏輯思維優勢,也可以藉助軟件工具(Fxcop)自動進行。

動態測試:需要執行代碼,通過運行程序找到問題,包括功能確認與接口測試、覆蓋率分析、性能分析、內存分析等。

白盒測試中的邏輯覆蓋包括語句覆蓋、判定覆蓋、條件覆蓋、判定/條件覆蓋、條件組合覆蓋和路徑覆蓋。六種覆蓋標準發現錯誤的能力呈由弱到強的變化:

1.語句覆蓋每條語句至少執行一次。

2.判定覆蓋每個判定的每個分支至少執行一次。

3.條件覆蓋每個判定的每個條件應取到各種可能的值。

4.判定/條件覆蓋同時滿足判定覆蓋條件覆蓋。

5.條件組合覆蓋每個判定中各條件的每一種組合至少出現一次。

6.路徑覆蓋使程序中每一條可能的路徑至少執行一次。

● 請你說一說測試工程師的必備技能

參考回答:

需要的知識:

•    軟件測試基礎理論知識,如黑盒測試、白盒測試等;

•    編程語言基礎,如C/C++、java、python等;

•    自動化測試工具,如Selenium、Appium、Robotium等;

•    計算機基礎知識,如數據庫、Linux、計算機網絡等;

•    測試框架,如JUnit等。

需要具備的能力:

•    業務分析能力,分析整體業務流程、分析被測業務數據、分析被測系統架構、分析被測業務模塊、分析測試所需資源、分析測試完成目標;

•    缺陷洞察能力,一般缺陷的發現能力、隱性問題的發現能力、發現連帶問題的能力、發現問題隱患的能力、儘早發現問題的能力、發現問題根源的能力;

•    團隊協作能力,合理進行人員分工、協助組員解決問題、配合完成測試任務、配合開發重現缺陷、督促項目整體進度、出現問題勇於承擔;

•    專業技術能力,掌握測試基礎知識、掌握計算機知識、熟練運用測試工具;

•    邏輯思考能力,判斷邏輯的正確性、對可行性邏輯分析、站在客觀角度思考;

•    問題解決能力,技術上的問題、工作中的問題、溝通問題;

•    溝通表達能力,和技術人員、產品人員、上下級的溝通;

•    宏觀把控能力,有效控制測試時間、有效控制測試成本、有效制定測試計劃、有效進行風險評估、有效控制測試方向。

● 請你說一下app性能測試的指標

參考回答:

1、內存:內存消耗測試節點的設計目標是爲了讓應用不佔用過多的系統資源,且及時釋放內存,保障整個系統的穩定性。當然關於內存測試,在這裏我們需要引入幾個概念:空閒狀態、中等規格、滿規格。

空閒狀態指打開應用後,點擊home鍵讓應用後臺運行,此時應用處於的狀態叫做空閒;中等規格和滿規格指的是對應用的操作時間的間隔長短不一,中等規格時間較長,滿規格時間較短。

內存測試中存在很多測試子項,清單如下:

●空閒狀態下的應用內存消耗;

●中等規格狀態下的應用內存消耗;

●滿規格狀態下的應用內存消耗;

●應用內存峯值;

●應用內存泄露;

●應用是否常駐內存;

●壓力測試後的內存使用。

2、CPU:

使用Android提供的view plaincopy在CODE上查看代碼片派生到我的代碼片

adbshell dumpsys CPUinfo |grep packagename >/address/CPU.txt來獲取;

使用top命令view plaincopy在CODE上查看代碼片派生到我的代碼片

adbshell top |grep packagename>/address/CPU.txt來獲取。

3、流量:

網絡流量測試是針對大部分應用而言的,可能還有部分應用會關注網速、弱網之類的測試。

流量測試包括以下測試項:

應用首次啓動流量提示;

應用後臺連續運行2小時的流量值;

應用高負荷運行的流量峯值。

4、電量:

●測試手機安裝目標APK前後待機功耗無明顯差異;

●常見使用場景中能夠正常進入待機,待機電流在正常範圍內;

●長時間連續使用應用無異常耗電現象。

5、啓動速度:

第一類:首次啓動--應用首次啓動所花費的時間;

第二類:非首次啓動--應用非首次啓動所花費的時間;

第三類:應用界面切換--應用界面內切換所花費的時間。

6、滑動速度、界面切換速度

7、與服務器交互的網絡速度

● 請你說一說app測試的工具

參考回答:

功能測試自動化

a) 輕量接口自動化測試

jmeter,

b) APP UI層面的自動化

android:UI Automator Viewer,Android Junit,Instrumentation,UIAutomator,

iOS:基於Instrument的iOS UI自動化,

性能測試

a) Web前端性能測試

網絡抓包工具:Wireshark

網頁文件大小

webpagetest

pagespeed insight

chrome adb

b) APP端性能測試

Android內存佔用分析:MAT

iOS內存問題分析:ARC模式

Android WebView性能分析:

iOS WebView性能分析

c) 後臺服務性能測試

負載,壓力,耐久性

可拓展性,基準

工具:apacheAB,Jmeter,LoadRunner,

專項測試

a) 兼容性測試

手工測試:操作系統,分辨率,rom,網絡類型

雲平臺:testin,腳本編寫,Android。

b) 流量測試

Android自帶的流量管理,

iOS自帶的Network

tcpdump抓包

WiFi代理抓包:Fiddler

流量節省方法:壓縮數據,json優於xml;WebP優於傳統的JPG,PNG;控制訪問的頻次;只獲取必要的數據;緩存;

c) 電量測試

基於測試設備的方法,購買電量表進行測試。

GSam Battery Monitoe Pro

iOS基於Instrument Energy工具

d) 弱網絡測試

手機自帶的網絡狀況模擬工具

基於代理的弱網絡的模擬:

工具:windows:Network Delay Simulator

Mac:Network Link Conditioner

● 請你說一說bug的週期,以及描述一下不同類別的bug

參考回答:

1、New:(新的)

當某個“bug”被第一次發現的時候,測試人員需要與項目負責人溝通以確認發現的的確是一個bug,如果被確認是一個bug,就將其記錄下來,並將bug的狀態設爲New

2、Assigned(已指派的)

當一個bug被指認爲New之後,將其反饋給開發人員,開發人員將確認這是否是一個bug,如果是,開發組的負責人就將這個bug指定給某位開發人員處理,並將bug的狀態設定爲“Assigned”

3、Open(打開的)

一旦開發人員開始處理bug的時候,他(她)就將這個bug的狀態設置爲“Open”,這表示開發人員正在處理這個“bug”

4、Fixed(已修復的)

當開發人員進行處理(並認爲已經解決)之後,他就可以將這個bug的狀態設置爲“Fixed”並將其提交給開發組的負責人,然後開發組的負責人將這個bug返還給測試組

5、Pending Reset(待在測試的)

當bug被返還到測試組後,我們將bug的狀態設置爲Pending Reset”

6、Reset(再測試)

測試組的負責人將bug指定給某位測試人員進行再測試,並將bug的狀態設置爲“Reset”

7、Closed(已關閉的)

如果測試人員經過再次測試之後確認bug 已經被解決之後,就將bug的狀態設置爲“Closed”

8、Reopen(再次打開的)

如果經過再次測試發現bug(指bug本身而不是包括因修復而引發的新bug)仍然存在的話,測試人員將bug再次傳遞給開發組,並將bug的狀態設置爲“Reopen”

9、Pending Reject(拒絕中)

如果測試人員傳遞到開發組的bug被開發人員認爲是正常行爲而不是bug時,這種情況下開發人員可以拒絕,並將bug的狀態設置爲“Pending Reject”

10、Rejected(被拒絕的)

測試組的負責人接到上述bug的時候,如果他(她)發現這是產品說明書中定義的正常行爲或者經過與開發人員的討論之後認爲這並不能算作bug的時候,開發組負責人就將這個bug的狀態設置爲“Rejected”

11、Postponed(延期)

有些時候,對於一些特殊的bug的測試需要擱置一段時間,事實上有很多原因可能導致這種情況的發生,比如無效的測試數據,一些特殊的無效的功能等等,在這種情況下,bug的狀態就被設置爲“Postponed“

不同類別的bug:

Bug類型

•    代碼錯誤

•    界面優化

•    設計缺陷

•    配置相關

•    安裝部署

•    安全相關

•    性能問題

•    標準規範

•    測試腳本

•    其他

● 請你說一說PC網絡故障,以及如何排除障礙

參考回答:

(1)首先是排除接觸故障,即確保你的網線是可以正常使用的。然後禁用網卡後再啓用,排除偶然故障。打開網絡和共享中心窗口,單擊窗口左上側“更改適配器設置”右擊其中的“本地連接“或”無線網絡連接”,單擊快捷菜單中的“禁用”命令,即可禁用所選網絡。接下來重啓網絡,只需右擊後單擊啓用即可。

(2)使用ipconfig查看計算機的上網參數

1、單擊“開始|所有程序|附件|命令提示符“,打開命令提示符窗口

2、輸入ipconfig,按Enter確認,可以看到機器的配置信息,輸入ipconfig/all,可以看到IP地址和網卡物理地址等相關網絡詳細信息。

(3)使用ping命令測試網絡的連通性,定位故障範圍

在命令提示符窗口中輸入”ping 127.0.0.1“,數據顯示本機分別發送和接受了4個數據包,丟包率爲零,可以判斷本機網絡協議工作正常,如顯示”請求超時“,則表明本機網卡的安裝或TCP/IP協議有問題,接下來就應該檢查網卡和TCP/IP協議,卸載後重裝即可。

(4)ping本機IP

在確認127.0.0.1地址能被ping通的情況下,繼續使用ping命令測試本機的IP地址能否被ping通,如不能,說明本機的網卡驅動程序不正確,或者網卡與網線之間連接有故障,也有可能是本地的路由表面收到了破壞,此時應檢查本機網卡的狀態是否爲已連接,網絡參數是否設置正確,如果正確可是不能ping通,就應該重新安裝網卡驅動程序。丟失率爲零,可以判斷網卡安裝配置沒有問題,工作正常。

(5)ping網關

網關地址能被ping通的話,表明本機網絡連接以及正常,如果命令不成功,可能是網關設備自身存在問題,也可能是本機上網參數設置有誤,檢查網絡參數。

● 請你說一說測試的常用方法

參考回答:

黑盒測試:

黑盒測試也稱功能測試或數據驅動測試,它是在已知產品所應具有的功能,通過測試來檢測每個功能是否都能正常使用,在測試時,把程序看作一個不能打開的黑盆子,在完全不考慮程序內部結構和內部特性的情況下,測試者在程序接口進行測試,它只檢查程序功能是否按照需求規格說明書的規定正常使用,程序是否能適當地接收輸入數鋸而產生正確的輸出信息,並且保持外部信息(如數據庫或文件)的完整性。

“黑盒”法着眼於程序外部結構、不考慮內部邏輯結構、針對軟件界面和軟件功能進行測試。“黑盒”法是窮舉輸入測試,只有把所有可能的輸入都作爲測試情況使用,才能以這種方法查出程序中所有的錯誤。實際上測試情況有無窮多個,因此不僅要測試所有合法的輸入,而且還要對那些不合法但是可能的輸入進行測試。

常用的黑盒測試方法有:等價類劃分法;邊界值分析法;因果圖法;場景法;正交實驗設計法;判定表驅動分析法;錯誤推測法;功能圖分析法。

白盒測試:

白盒測試也稱爲結構測試或邏輯驅動測試,是針對被測單元內部是如何進行工作的測試。它根據程序的控制結構設計測試用例,主要用於軟件或程序驗證。白盒測試法檢查程序內部邏輯結構,對所有的邏輯路徑進行測試,是一種窮舉路徑的測試方法,但即使每條路徑都測試過了,但仍然有可能存在錯誤。因爲:窮舉路徑測試無法檢查出程序本身是否違反了設計規範,即程序是否是一個錯誤的程序;窮舉路徑測試不可能檢查出程序因爲遺漏路徑而出錯;窮舉路徑測試發現不了一些與數據相關的錯誤。

白盒測試需要遵循的原則有:1. 保證一個模塊中的所有獨立路徑至少被測試一次;2. 所有邏輯值均需要測試真(true)和假(false);兩種情況;3. 檢查程序的內部數據結構,保證其結構的有效性;4. 在上下邊界及可操作範圍內運行所有循環。

常用白盒測試方法:

靜態測試:不用運行程序的測試,包括代碼檢查、靜態結構分析、代碼質量度量、文檔測試等等,它可以由人工進行,充分發揮人的邏輯思維優勢,也可以藉助軟件工具(Fxcop)自動進行。

動態測試:需要執行代碼,通過運行程序找到問題,包括功能確認與接口測試、覆蓋率分析、性能分析、內存分析等。

白盒測試中的邏輯覆蓋包括語句覆蓋、判定覆蓋、條件覆蓋、判定/條件覆蓋、條件組合覆蓋和路徑覆蓋。六種覆蓋標準發現錯誤的能力呈由弱到強的變化:

1.語句覆蓋每條語句至少執行一次。

2.判定覆蓋每個判定的每個分支至少執行一次。

3.條件覆蓋每個判定的每個條件應取到各種可能的值。

4.判定/條件覆蓋同時滿足判定覆蓋條件覆蓋。

5.條件組合覆蓋每個判定中各條件的每一種組合至少出現一次。

6.路徑覆蓋使程序中每一條可能的路徑至少執行一次。

● 請你說一下黑盒白盒

參考回答:

黑盒測試:

黑盒測試也稱功能測試或數據驅動測試,它是在已知產品所應具有的功能,通過測試來檢測每個功能是否都能正常使用,在測試時,把程序看作一個不能打開的黑盆子,在完全不考慮程序內部結構和內部特性的情況下,測試者在程序接口進行測試,它只檢查程序功能是否按照需求規格說明書的規定正常使用,程序是否能適當地接收輸入數鋸而產生正確的輸出信息,並且保持外部信息(如數據庫或文件)的完整性。

“黑盒”法着眼於程序外部結構、不考慮內部邏輯結構、針對軟件界面和軟件功能進行測試。“黑盒”法是窮舉輸入測試,只有把所有可能的輸入都作爲測試情況使用,才能以這種方法查出程序中所有的錯誤。實際上測試情況有無窮多個,因此不僅要測試所有合法的輸入,而且還要對那些不合法但是可能的輸入進行測試。

常用的黑盒測試方法有:等價類劃分法;邊界值分析法;因果圖法;場景法;正交實驗設計法;判定表驅動分析法;錯誤推測法;功能圖分析法。

白盒測試:

白盒測試也稱爲結構測試或邏輯驅動測試,是針對被測單元內部是如何進行工作的測試。它根據程序的控制結構設計測試用例,主要用於軟件或程序驗證。白盒測試法檢查程序內部邏輯結構,對所有的邏輯路徑進行測試,是一種窮舉路徑的測試方法,但即使每條路徑都測試過了,但仍然有可能存在錯誤。因爲:窮舉路徑測試無法檢查出程序本身是否違反了設計規範,即程序是否是一個錯誤的程序;窮舉路徑測試不可能檢查出程序因爲遺漏路徑而出錯;窮舉路徑測試發現不了一些與數據相關的錯誤。

白盒測試需要遵循的原則有:1. 保證一個模塊中的所有獨立路徑至少被測試一次;2. 所有邏輯值均需要測試真(true)和假(false);兩種情況;3. 檢查程序的內部數據結構,保證其結構的有效性;4. 在上下邊界及可操作範圍內運行所有循環。

常用白盒測試方法:

靜態測試:不用運行程序的測試,包括代碼檢查、靜態結構分析、代碼質量度量、文檔測試等等,它可以由人工進行,充分發揮人的邏輯思維優勢,也可以藉助軟件工具(Fxcop)自動進行。

動態測試:需要執行代碼,通過運行程序找到問題,包括功能確認與接口測試、覆蓋率分析、性能分析、內存分析等。

白盒測試中的邏輯覆蓋包括語句覆蓋、判定覆蓋、條件覆蓋、判定/條件覆蓋、條件組合覆蓋和路徑覆蓋。六種覆蓋標準發現錯誤的能力呈由弱到強的變化:

1.語句覆蓋每條語句至少執行一次。

2.判定覆蓋每個判定的每個分支至少執行一次。

3.條件覆蓋每個判定的每個條件應取到各種可能的值。

4.判定/條件覆蓋同時滿足判定覆蓋條件覆蓋。

5.條件組合覆蓋每個判定中各條件的每一種組合至少出現一次。

6.路徑覆蓋使程序中每一條可能的路徑至少執行一次。

● 請你說一說你知道的自動化測試框架

參考回答:

1、模塊化測試框架

模塊化測試腳本框架(TEST MODulARITY FRAMEWORK)需要創建小而獨立的可以描述的模塊、片斷以及待測應用程序的腳本。這些樹狀結構的小腳本組合起來,就能組成能用於特定的測試用例的腳本。在五種框架中,模塊化框架是最容易掌握和使用的。在一個組件上方建立一個抽象層使其在餘下的應用中隱藏起來,這是衆所周知的編程技巧。這樣應用同組件中的修改隔離開來,提供了程序設計的模塊化特性。模塊化測試腳本框架使用這一抽象或者封裝的原理來提高自動測試組合的可維護性和可升級性。

2、測試庫框架

測試庫框架(Test Library Architecture)與模塊化測試腳本框架很類似,並且具有同樣的優點。不同的是測試庫框架把待測應用程序分解爲過程和函數而不是腳本。這個框架需要創建描述模塊、片斷以及待測應用程序的功能庫文件。

3、關鍵字驅動或表驅動的測試框架

對於一個獨立於應用的自動化框架,關鍵字驅動(KEYWORD DRIVEN)I9LJJ試和表驅動(TABLE DRIVEN)測試是可以互換的術語。這個框架需要開發數據表和關鍵字。這些數據表和關鍵字獨立於執行它們的測試自動化工具,並可以用來“驅動"待測應用程序和數據的測試腳本代碼,關鍵宇驅動測試看上去與手工測試用例很類似。在一個關鍵字驅動測試中,把待測應用程序的功能和每個測試的執行步驟一起寫到一個表中。這個測試框架可以通過很少的代碼來產生大量的測試用例。同樣的代碼在用數據表來產生各個測試用例的同時被複用。

4、數據驅動測試框架

數據驅動(DATA DRIVEN),LJ試是一個框架。在這裏測試的輸入和輸出數據是從數據文件中讀取(數據池,ODBC源,CSV文件,EXCEL文件,ADO對象等)並且通過捕獲工具生成或者手工生成的代碼腳本被載入到變量中。在這個框架中,變量不僅被用來存放輸入值還被用來存放輸出的驗證值。整個程序中,測試腳本來讀取數值文件,記載測試狀態和信息。這類似於表驅動測試,在表驅動測 試中,它的測試用例是包含在數據文件而不是在腳本中,對於數據而言,腳本僅僅是一個“驅動器”,或者是一個傳送機構。然而,數據驅動測試不同於表驅動測試,儘管導航數據並不包含在表結構中。在數據驅動測試中,數據文件中只包含測試數據。這個框架意圖減少需要執行所有測試用例所需要的總的測試腳本數。數據驅動需要很少的代碼來產生大量的測試用例,這與表驅動極其類似。

5、混合測試自動化(Hybrid Test Automation)框架

最普遍的執行框架是上面介紹的所有技術的一個結合,取其長處,彌補其不足。這個混合測試框架是由大部分框架隨着時間並經過若干項目演化而來的

● 請你說一說web測試和app測試的不同點

參考回答:

系統架構方面:

web項目,一般都是b/s架構,基於瀏覽器的

app項目,則是c/s的,必須要有客戶端,用戶需要安裝客戶端。

web測試只要更新了服務器端,客戶端就會同步會更新。App項目則需要客戶端和服務器都更新。

性能方面:

web頁面主要會關注響應時間

而app則還需要關心流量、電量、CPU、GPU、Memory這些。

它們服務端的性能沒區別,都是一臺服務器。

兼容方面:

web是基於瀏覽器的,所以更傾向於瀏覽器和電腦硬件,電腦系統的方向的兼容

app測試則要看分辨率,屏幕尺寸,還要看設備系統。

web測試是基於瀏覽器的所以不必考慮安裝卸載。

而app是客戶端的,則必須測試安裝、更新、卸載。除了常規的安裝、更新、卸載還要考慮到異常場景。包括安裝時的中斷、弱網、安裝後刪除安裝文件 。

此外APP還有一些專項測試:如網絡、適配性。

● 請問你瞭解什麼測試方法

參考回答:

等價類劃分,邊界值分析,錯誤推測,因果圖法,邏輯覆蓋法,程序插樁技術,基本路徑法,符號測試,錯誤驅動測試

● 請問黑盒測試和白盒測試有哪些方法

參考回答:

黑盒測試方法有等價類劃分,邊界值分析,錯誤推測,因果圖法

白盒測試方法有邏輯覆蓋法,程序插樁技術,基本路徑法,符號測試,錯誤驅動測試

● 請問你怎麼看待測試,知道哪些測試的類型,有用過哪些測試方法?

參考回答:

測試是軟件開發中不可或缺的一環,測試通過經濟,高效的方法,捕捉軟件中的錯誤,從而達到保重軟件內在質量的目的。

測試分爲功能測試和非功能測試,非功能測試又可以分爲性能測試、壓力測試、容量測試、健壯性測試、安全性測試、可靠性測試、恢復性測試、備份測試、協議測試、兼容性測試、可用性測試、配置測試、GUI測試。

測試方法用過等價劃分法、邊值分析法、錯誤推測法、因果圖法。

● 請問你怎麼測試網絡協議

參考回答:

協議測試包括四種類型的測試

1、一致性測試:檢測協議實現本身與協議規範的符合程度

2、互操作性測試:基於某一協議檢測不同協議實現間互操作互通信的能力

3、性能測試:檢測協議實現的性能指標,比如數據傳輸速度,連接時間,執行速度,吞吐量,併發度,

4、健壯性測試:檢測協議是現在各種惡劣環境下運行的能力,比如注入干擾報文,通信故障,信道被切斷

● 請你回答一下什麼是α測試和β測試,以及什麼時候用到他們

參考回答:

α測試:在受控的環境中進行,由用戶在開發者的場所進行,並且在開發者對用戶的指導下進行測試,開發者負責記錄發現的錯誤和使用中遇到的問題

β測試:在開發者不能控制的環境中的真實應用,由軟件的最終用戶們在一個或多個客戶場所下進行,由用戶記錄在測試中遇到的一系列問題,並定期報給開發者。

圖片


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章