1. 程式人生 > >對軟體測試的理解

對軟體測試的理解

17、

條件覆蓋CC(Condition Coverage),設計足夠多的測試用例,執行被測程式,使得每一判定語句中每個邏輯條件的可能取值至少滿足一次。

條件覆蓋率的公式:條件覆蓋率=被評價到的條件取值的數量/條件取值的總數X100%[1] 

條件覆蓋的缺點:只考慮到每個判定語句中的每個表示式,沒有考慮到各個條件分支(或者涉及不到全部分支),即不能夠滿足判定覆蓋.

條件組合覆蓋,也稱多條件覆蓋MCC (Multiple Condition Coverage),設計足夠多的測試用例,使得每個判定中條件的各種可能組合都

至少出現一次(以數軸形式劃分區域,提取交集,建立最少的測試用例)。這種方法包含了“分支覆蓋”和“條件覆蓋”的各種要求。滿足條件組合

覆蓋一定滿足判定覆蓋、條件覆蓋、判定條件覆蓋。條件組合覆蓋率的公式:條件組合覆蓋率=被評價到的條件取值組合的數量/條件取值組合的

總數條件組合覆蓋的缺點:判定語句較多時,條件組合值比較多。

語句覆蓋 SC(Statement Coverage),就是設計若干個測試用例,執行被測程式,使得程式中每一可執行語句至少執行一次。這裡的“若干個”

,意味著使用測試用例越少越好。語句覆蓋在測試中主要發現缺陷或錯誤語句。

判定條件覆蓋CDC(Condition/ Decision Coverage),設計足夠多的測試用例,使得判定中的每個條件的所有可能(真/假)至少出現一次,

並且每個判定本身的判定結果也至少出現一次。[1] 判定條件覆蓋率的公式:條件判定覆蓋率=被評價到的條件取值和判定分支的數量/(條件取值

總數+判定分支總數).判定條件覆蓋的缺點:沒有考慮單個判定對整體結果的影響,無法發現邏輯錯誤。

18、

軟體驗收測試分為三類:

正式驗收測試;

非正式驗收測試。其中包括α測試(由使用者、測試人員、開發人員共同參與的內部測試。)

                                  和β測試(內測後的公測,即完全交給終端使用者測試。)

19、

LoadRunner,是一種預測系統行為和效能的負載測試工具。通過以模擬上千萬使用者實施併發負載及實時效能監測的方式來確認和查詢問題,  可適用於各種體系架構的自動負載測試,能預測系統行為並評估系統性能。 其測試元件有 1.VuGen Load Generator(虛擬使用者生成器)用於捕獲終端使用者業務流程和建立自動效能測試指令碼 (也稱為虛擬使用者指令碼)。 2.Controller (控制器)用於組織、驅動、管理和監控負載測試。 3.Analysis (分析器)有助於您檢視、分析和比較效能結果。 包括A指令碼編輯工具 C測試執行工具 D結果分析工具

20、系統整合測試主要包括以下過程:1. 構建的確認過程。 2. 補丁的確認過程。 3. 系統整合測試測試組提交過程。        4. 測試用例設計過程。 5. 測試程式碼編寫過程。 6. Bug的報告過程。 7. 每週/每兩週的構建過程。 8. 點對點的測試過程。        9. 組內培訓過程。 21、

系統測試的16個測試策略:

      功能測試、效能測試、壓力測試、容量測試、安全性測試、GUI測試、可用性測試、安裝測試、配置測試、異常測試,備份測試、健壯性測試、 文件測試、線上幫助測試、網路測試、穩定性測試。 22、α測試是由一個使用者在開發環境下進行的測試,也可以是公司內部的使用者在模擬實際操作環境下進行的受控測試, α測試不能由程式設計師或測試員完成。α測試發現的錯誤,可以在測試現場立刻反饋給開發人員,由開發人員及時分析和處理。 目的是評價軟體產品的功能、可使用性、可靠性、效能和支援。 尤其注重產品的介面和特色。Alpha測試可以從軟體產品編碼結束之後開始,或在模組(子系統)測試完成後開始, 也可以在確認測試過程中產品達到一定的穩定和可靠程度之後再開始。
alpha 測試需要使用者參加
alpha 測試是驗收測試的一種
23、軟體測試用例包括 輸入資料和預期輸出結果 24、專案立項前測試人員不需要提交任何工件。工件是加工過程中的生產物件。專案立項前,測試人員是不需要提供任何工件的。 25、自底向上整合需要測試員編寫驅動程式。自底向上測試是從“原子”模組(即軟體結構最低層的模組)開始組裝測試,因測試到較高層模組時,所需的下層模組功能均已具備,所以不再需要樁模組。 
自底向上整合方法不用樁模組,測試用例的設計亦相對簡單,但缺點是程式最後一個模組加入時才具有整體形象,需要開發驅動模組
26、 針對手機應用軟體的系統測試,我們通常從如下幾個角度開展:功能模組測試,交叉事件測試,壓力測試,容量測試,相容性測試,易用性/使用者體驗測試等. 對手機可以施加的壓力測試型別主要有:儲存壓力、邊界壓力、 響應能力壓力、網路流量壓力,無併發壓力 併發壓力是針對伺服器的,因為每次併發是一個客戶端 27、測試設計員的職責有:設計測試用例,設計測試過程、指令碼。
測試設計人員主要負責設計測試用例以及設計測試過程。制定測試計劃是測試經理來做的;評估測試活動是測試經理組織開發人員來進行的。
28、LoadRunner-負載壓力測試:預測系統性能。
JMeter+Badboy:基於JAVA的壓力測試工具,Badboy用來進行指令碼的錄製 
功能測試:通過自動錄製、檢測和回放使用者的應用操作。將輸出記錄同預先給定的記錄比較。 
Junit:白盒測試工具:針對程式碼測試 
測試管理工具:對測試需求、計劃、用例、實施進行管理 
測試輔助工具:本身不執行,可以生成測試資料,為測試提供資料準備 
負載壓力測試:LoadRunner:預測系統行為和效能的工業標準級負載測試工具。模擬上千萬使用者同時實施併發操作,來實時監控可能發生的問題。 
功能測試: QTP(quicktest professional):自動測試工具 
白盒測試:C++ TEST(做C和C++的白盒測試)、JUnit(Java白盒測試) 
缺陷管理工具:Mantis、BugFree、QC、TD 
用例管理工具:TestLink、QC 
測試輔助工具:SVN
28、【軟體需求】是軟體開發之前做好的,軟體開發是根據這個做的,那麼軟體測試自然也需要參考該檔案 【迭代計劃】是軟體的某個週期的計劃,自然也需要參考 【可行性】是軟體開發前做好,用於證明該計劃可行的,沒有必要參考。可行性研究報告,在軟體開發前做好了,在開發前專案經理已召開進行評估,通過後才開始開發此軟體,所以在測試過程中,不再需要參考次報告