外部功能測試

外部功能測試

任何編程,免不了存在這樣或那樣的錯誤,所以有必要進行軟體測試。軟體測試一般集中在軟體的內部邏輯及外部功能。外部功能測試是指引導測試去發現錯誤,並保證定義好的輸入能夠產生與預期結果相同的輸出以及接口與調用關係。

基本介紹

  • 中文名:外部功能測試
  • 外文名:external function test
  • 學科:計算機
  • 定義:測試輸入產生與預期相同的輸出
  • 目的:發現軟體錯誤
  • 領域:軟體工程
介紹,功能測試,功能,方法,內容,可用性測試,方便性,兼容性,

介紹

外部功能測試是指引導測試去發現錯誤,並保證定義好的輸入能夠產生與預期結果相同的輸出以及接口與調用關係,如兼容關係。在電腦程式或軟體系統中,外部功能對於用戶來說是不可或缺的,用戶一般是通過軟體系統的外部功能來獲取系統的有關服務。外部功能測試對於一個軟體的可用性和方便性十分重要。外部功能測試屬於功能測試。

功能測試

功能測試又稱為黑盒測試、數據驅動測試或基於需求規格說明的測試,是一種常用的測試方法。黑盒測試是已知產品的功能設計規格,通過測試來檢測每個功能是否都能符合要求。在測試中,把程式看作一個不能打開的黑盒子,在完全不考慮程式內部結構和內部特性的情況下,在程式接口進行測試,它只檢查程式功能是否按照需求規格說明書的規定正常使用,而不考慮實現功能的方法、途徑,程式是否能適當地接收輸人數據而產生正確的輸出信息。黑盒測試著眼於程式外部結構,不考慮內部邏輯結構。主要針對軟體界面和軟體功能進行測試。

功能

黑盒測試法主要用於測試軟體的功能需求,通過測試可以發現下列錯誤:
是否有不正確或遺漏的功能:在接口上。輸入是否能正確的接受:能否輸出正確的結果;是否有數據結構錯誤或外部信息(例如數據檔案)訪問錯誤:性能上是否能夠滿足要求;是否有初始化或終止性錯誤。

方法

目前常用的比較成熟的黑盒測試的方法主要有:等價類劃分法、邊界值分析法因果圖法和錯誤推測法。下面對這幾種方法加以介紹並指出其優缺點。
(一)等價類劃分法
等價類劃分法是一種典型的、重要的黑盒測試方法,它將程式所有可能的輸入數據劃分為若干個等價類。然後從每個部分中選取具有代表性的數據當做測試用例。測試用例由有效等價類和無效等價類的代表數據組成,從而保證測試用例具有完整性和代表性。
使用該方法設計測試用例主要有兩個步驟:(1)確定等價類;(2)生成測試用例。
1.確定等價類
等價類是指被測軟體的一個輸入數據的集合,該集合中的任一元素對於揭露被測程式中的錯誤而言是等價的,即若該集合中的一個元素測試程式發現不了某類功能上明顯的錯誤,那么其它元素測試該程式也發現不了這種錯誤。
確定等價類是將每一個輸入條件劃分為有效等價類和無效等價類。
有效等價類指程式規格說明書中規定的、合理的、有意義的輸入數據。通過測試有效等價類中的數據可以測試被測軟體是否實現了規格說明書中預先規定的功能和性能。無效等價類是有效等價類的補集,指軟體規格說明書中沒有規定的、沒有意義的、不合理的輸入數據集合。
2.生成測試用例
①為每一個等價類設定一個唯一的編號。
②設計新的測試用例,儘可能多地覆蓋那些尚未被覆蓋的有效等價類,直到所有的有效等價類都被測試用例所覆蓋(包含進去)。
③設計新的測試用例,覆蓋一個僅一個尚未被覆蓋的無效等價類,直到所有的無效等價類都被測試用例所覆蓋。
(二)邊界值分析法
邊界值分析法是對程式輸入或輸出的邊界值進行測試的一種黑盒測試方法。實際的測試工作證明,考慮了邊界條件的測試用例比那些沒有考慮邊界條件的測試用例具有更高的測試回報率。這裡所說的邊界條件,是指輸入和輸入等價類中那些恰好處於邊界、或超過邊界、或在邊界以下的狀態。
利用邊界值分析法設計測試用例的原則:
1.如果輸入條件規定了值的範圍,那么應針對範圍的邊界設計有效的等價類測試用例,針對剛剛越界的情況設計無效等價類輸入測試用例。
2.如果輸入條件規定了輸入值的數量(包括個數的多少,時間的長短),則應對該數量的最大值、最小值及比最大值小一、最小值大一的情況分別設計有效的輸入測試用例。
3.如果程式中使用了一個內部數據結構,則應該內部數據機構的邊界值設計測試用例。
4.如果程式的規格說明給出的輸入域或輸出域是有序集合,則應該取集合的第一個元素和最後一個元素設計測試用例。
(三)因果圖法
因果圖法也是較常用的一種黑盒測試方法,是一種簡化了的邏輯圖。因果圖能直觀地表明輸入條件和輸出動作之間的因果關係,能幫助測試人員把注意力集中到與程式功能有關的輸入組合上。
因果圖法是一種適合於描述對於多種輸入條件組合的測試方法,根據輸入條件的組合、約束關係和輸出條件的因果關係,分析輸入條件的各種組合情況,從而設計測試用例的方法,它適合於檢查程式輸入條件的各種組合情況。
利用因果圖法設計測試用例的步驟:
1.將規格說明分解為可執行的片段。該步驟必不可少,因為因果圖不善於處理較大的規格說明。
2.分析並確定可執行片段中哪些是原因,哪些是結果。原因是指輸入條件或者輸入條件的等價類,而結果指輸出條件。
3.為每一個原因和結果賦予唯一的標號,並根據規格說明書中的描述,畫出因果圖。
4.通過仔細地跟蹤圖中的狀態變化情況,將因果圖轉換成一個有限項的判定表。表中的每一列代表一個測試用例。
(四)錯誤推測法
錯誤推測法是基於以往的經驗和直覺,參照以往的軟體系統出現的錯誤,推測當前被測程式中可能存在的缺陷和錯誤,有針對性地設計測試用例。
用錯誤推測法設計測試用例的基本思想是:列舉出程式中可能犯出現的錯誤或容易發生錯誤的特殊情況的清單,然後根據清單和已經設計好的測試用例來編寫特定的測試用例。例如,程式中出現的輸入數據為“0”或者字元為空就是一種錯誤易發情況;在出現輸入或輸出的數量不定的地方,數量為“沒有”和“一個”也是錯誤易發情況。特別需要注意的是,在閱讀規格說明時聯繫程式設計師可能做的假設來確定測試用例,測試人員要站在用戶的角度來考慮輸入信息,而不必去管這些信息對於被測程式是合理還是不合理的輸入。

內容

可用性測試

可用性測試(Usability testing),是一項通過用戶的使用來評估產品的技術,由於它反應了用戶的真實使用經驗,所以可以視為一種不可或缺的可用性檢驗過程。也就是說,可用性測試是指讓用戶使用產品(服務)的設計原型或者成品,通過觀察,記錄和分析用戶的行為和感受,以改善產品(服務)可用性的一系列方法。它適用於產品(服務)前期設計開發,中期改進和後期維護完善的各個階段,是用戶中心設計的思想的重要體現。
可用性測試是可用性評估方法中最為常用的一種,作為人機互動研究的一個重要領域,已經被廣泛研究。

方便性

配置 OS 後可使計算機系統更容易使用。一個未配置 OS 的計算機系統是極難使用的,因為計算機硬體只能識別 0 和 1 這樣的機器代碼。用戶要直接在計算機硬體上運行自己所編寫的程式,就必須用機器語言書寫程式;用戶要想輸入數據或列印數據,也都必須自己用機器語言書寫相應的輸入程式或列印程式。如果我們在計算機硬體上配置了 OS,用戶便可通過 OS 所提供的各種命令來使用計算機系統。比如,用編譯命令可方便地把用戶用高級語言書寫的程式翻譯成機器代碼,大大地方便了用戶,從而使計算機變得易學易用。

兼容性

評價計算機性能的一個指標。指計算機設備或程式能兼用於多種不同系統的性能.下面分別說明硬體兼容性和軟體兼容性。
硬體兼容性指一種機器的目標碼可以在另一種機器上執行,所得結果與原機器的執行結果完全相同.實現硬體兼容性有兩種途徑:一是兩種機器採用完全相同的指令系統;二是在第二種機器中設定一些專用指令,遇到該機器所沒有的指令時,就將其翻譯成對應的指令,使執行結果完全相同.經過少許調整或不需調整就能用於其他系統中的部件、外部設備或其他設備,稱為兼容硬體。
軟體兼容性指用某種語言編寫的源程式可在兩種不同的機器上分別進行翻譯並加以執行,所得的結果基本相同,但兩種機器的指令系統可能有很大差異。

熱門詞條

聯絡我們